Group: Software/FSDG distributions/DistroConfiguration
From LibrePlanet
(→Configuration: Add Trisquel version to make it easier to track when it works and when it doesn't. Removed useless comment) |
(→Configuration: Document the lack of preseed in PureOS.) |
||
(41 intermediate revisions by 2 users not shown) | |||
Line 8: | Line 8: | ||
|- | |- | ||
! Configuration system | ! Configuration system | ||
− | ! | + | ! Distribution |
− | ! | + | ! Works |
− | ! | + | ! Skills |
+ | ! Can configure the local system | ||
+ | ! Can configure remote systems | ||
+ | ! Can install the distribution | ||
+ | ! Can create images | ||
+ | ! Features | ||
|- | |- | ||
− | | rowspan= | + | | rowspan=5 | Consfigurator |
− | | | + | | Guix |
+ | | {{no|Not packaged}} | ||
+ | | | ||
+ | | | ||
| | | | ||
+ | | | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | | Hyperbola | ||
+ | | {{no|Not packaged}} | ||
+ | | | ||
+ | | | ||
+ | | | ||
+ | | | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | | Parabola | ||
+ | | {{no|Not packaged}} | ||
+ | | | ||
+ | | | ||
+ | | | ||
+ | | | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | | PureOS 10 (byzantium) | ||
+ | | {{no|Not packaged}} | ||
+ | | | ||
+ | | | ||
+ | | | ||
+ | | | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | | Trisquel 11 (aramo) | ||
+ | | {{yellow|Partial}}<ref>It can be used but some features seem really tied to Debian. For instance in /usr/share/common-lisp/source/consfigurator/src/property/apt.lisp get-default-mirrors only has the URL of the Debian mirrors. So certain functions do assume a Debian system but other work fine on Debian derivatives or other non-debian related distributions.</ref> | ||
+ | | Require to know lisp | ||
+ | | {{yes}}<ref>There are local or sudo connection type available</ref> | ||
+ | | {{yes}}<ref>This works through SSH. It needs SBCL on the remote computer to support all the features. A reduced set of features is still available if the remote computer doesn't have SBCL.</ref> | ||
+ | | {{no}} | ||
+ | | {{yes}}<ref>This is an advertised feature but I didn't test it yet.</ref> | ||
+ | | | ||
+ | * Can configure the whole system | ||
+ | |- | ||
+ | | rowspan=3 | Cockpit | ||
+ | | Parabola | ||
+ | | {{yes}} | ||
+ | | rowspan=3 | Interfaces: | ||
+ | * Web: Very easy to use | ||
+ | * Command line interface through the web interface | ||
+ | | {{yes}} | ||
+ | | {{yes}}<ref name="cockpit-remote-ssh">This works through SSH. It also requires cockpit on the target computer.</ref> | ||
+ | | {{no}} | ||
+ | | {{no}} | ||
+ | | | ||
+ | * Can manage storage devices including LVM volumes | ||
+ | * Can configure network | ||
+ | * Can manage virtual machines (libvirt) and containers (podman) | ||
+ | * Can manage user accounts | ||
+ | * Can keep the system up to date | ||
+ | * Many plugins available but very few are packaged<ref>At the time of writing, the following packages are available: | ||
+ | * {{DistroPackage|parabola|cockpit-machines}} for virtual machines | ||
+ | * {{DistroPackage|parabola|cockpit-packagekit}} for installing packages | ||
+ | * {{DistroPackage|parabola|cockpit-pcp}} for information on system performance | ||
+ | * {{DistroPackage|parabola|cockpit-podman}} for managing podman containers | ||
+ | * {{DistroPackage|parabola|cockpit-storaged}} for managing storage through udisks</ref>. | ||
+ | * Also has a builtin terminal for the rest. | ||
+ | |- | ||
+ | | PureOS Byzantium | ||
+ | | {{yes}}<ref>It should normally work as it doesn't require too much distro specific integration.</ref> | ||
+ | | {{yes}} | ||
+ | | {{yes}}<ref name="cockpit-remote-ssh"></ref> | ||
+ | | {{no}} | ||
+ | | {{no}} | ||
+ | |- | ||
+ | | Trisquel 11 | ||
+ | | {{yes}}<ref>It should normally work as it doesn't require too much distro specific integration.</ref> | ||
+ | | {{yes}} | ||
+ | | {{yes}}<ref name="cockpit-remote-ssh"></ref> | ||
+ | | {{no}} | ||
+ | | {{no}} | ||
+ | |- | ||
+ | | rowspan=3 | Debian installer preseed | ||
+ | | PureOS 10 (byzantium) | ||
+ | | {{no}}<ref>First there is no netinstall for PureOS: The existing iso installer have no netinstall option in their menu. In addition, passing 'auto=true priority=critical preseed/file=/media/preseed.cfg' as arguments before the '---' in syslinux also doesn't work.</ref> | ||
| rowspan=2 | | | rowspan=2 | | ||
+ | | rowspan=3 {{No}} | ||
+ | | rowspan=3 {{No}} | ||
+ | | rowspan=3 {{Yes}} | ||
+ | | rowspan=3 {{No}} | ||
+ | | rowspan=3 | | ||
+ | * Can configure the whole system<ref>The preseed file enable to answer the questions of the netinstall installer, but it's also possible to do much more, including copying files to the target installation system or run commands inside it with preseed/late_command / in-target. The files to be copied could be provided on the same media that contains the preseed.cfg file.</ref> | ||
|- | |- | ||
| Trisquel 10 | | Trisquel 10 | ||
− | | | + | | {{no}}<ref>Unlike Trisquel 11, there is no preseed option in the installer. Passing 'auto=true priority=critical preseed/file=/media/preseed.cfg' as arguments before the '---' in syslinux also doesn't work.</ref> |
+ | |- | ||
+ | | Trisquel 11 (aramo) | ||
+ | | {{yes}} | ||
+ | | Hard to use.<ref>If you mount trisquel-netinst_11.0_amd64.iso, there is a preseed folder with an examples. However these are just example and a lot of options are not documented anywhere. https://preseed.debian.net/debian-preseed/ has a more complete list of options for Debian, so by combining both you can use them as documentation and somehow manage to make it what you want to do with some trial and errors along the way.</ref> | ||
|- | |- | ||
| rowspan=2 | FAI | | rowspan=2 | FAI | ||
− | | PureOS | + | | PureOS 10 (byzantium) |
| | | | ||
+ | | rowspan=2 | | ||
+ | | {{yes}} | ||
+ | | rowspan=2 |? | ||
+ | | rowspan=2 |? | ||
+ | | rowspan=2 |? | ||
| rowspan=2 | | | rowspan=2 | | ||
|- | |- | ||
| Trisquel 10 | | Trisquel 10 | ||
− | | | + | | {{yes}}<ref>It's used by the FSF so it works</ref> |
+ | | {{yes}} | ||
|- | |- | ||
| rowspan=2 | Freedombox | | rowspan=2 | Freedombox | ||
− | | PureOS | + | | PureOS 10 (byzantium) |
− | | | + | | {{yes}}<ref>PureOS 10 (byzantium) is based on Debian Bullseye, which is supports Freedombox (reference: "Currently, FreedomBox works in Debian Stable (Bullseye), Testing (Bookworm), and Unstable (Sid). " in the [https://wiki.debian.org/FreedomBox/Hardware/Debian Debian wiki page about Freedombox]. Installing Mediawiki also works well while in Trisquel it fails.</ref> |
− | | rowspan=2 | Very easy to use | + | | rowspan=2 | Interfaces: |
+ | * Web: Very easy to use | ||
+ | * No command line interface: users are expected to use the web interface to configure the services otherwise there is a risk of breaking the system. | ||
+ | Installation: | ||
+ | * PureOS and Trisquel don't have freedombox images | ||
+ | * The installation requires to type 2 commands. | ||
+ | * Some features (like snapshots) also require specific options during the installation (like to use a btrfs filesystem). | ||
+ | | {{yes}} | ||
+ | | {{no}} | ||
+ | | ? | ||
+ | | ? | ||
+ | | rowspan=2 | | ||
+ | * Can deploy many services (wikis, etc) | ||
+ | * Can configure network services? (DHCP, WiFi, etc?) | ||
|- | |- | ||
| Trisquel 10 | | Trisquel 10 | ||
− | | | + | | {{yellow|Partial}}<ref>Tested with the [https://wiki.debian.org/FreedomBox/Hardware/Debian Debian instructions] on Trisquel 10. After installing Trisquel with the default graphical install with the default partitioning or with the textual installation and selecting nothing in "software selection", and installing freedombox, installing Mediawiki broke apt because mysql didn't find its data directory.</ref> |
+ | | {{yes}} | ||
+ | | {{no}} | ||
+ | | ? | ||
+ | | ? | ||
+ | |- | ||
+ | | rowspan=4 | Guix configuration language | ||
+ | | Guix | ||
+ | | {{yes}}<ref name="native">It's the distribution native configuration interface so it works.</ref> | ||
+ | | rowspan=4 | Require to know lisp | ||
+ | | {{yes}} | ||
+ | | {{yes}} | ||
+ | | {{yes}} | ||
+ | | {{yes}} | ||
+ | | rowspan=4 | | ||
+ | * Can configure the whole system | ||
+ | |- | ||
+ | | Parabola | ||
+ | | {{yes}} | ||
+ | | {{no}} | ||
+ | | {{yes}} | ||
+ | | {{yes}} | ||
+ | | {{yes}} | ||
+ | |- | ||
+ | | PureOS 10 (byzantium) | ||
+ | | {{yes}} | ||
+ | | {{no}} | ||
+ | | {{yes}} | ||
+ | | {{yes}} | ||
+ | | {{yes}} | ||
|- | |- | ||
− | | | + | | Trisquel 11 (aramo) |
+ | | {{yes}} | ||
+ | | {{no}} | ||
+ | | {{yes}} | ||
+ | | {{yes}} | ||
+ | | {{yes}} | ||
+ | |- | ||
+ | | rowspan=3 | Holo | ||
| Guix | | Guix | ||
− | | | + | | {{no|Incompatible}}<ref name="guix-holo">Holo use the distribution package manager to handle the configuration, but [https://github.com/holocm/holo-build holo-build] only supports deb, pacman and rpm packages formats.</ref> |
− | | | + | | rowspan=3 | |
+ | | {{yes}} | ||
+ | | rowspan=3 | ? | ||
+ | | rowspan=3 | ? | ||
+ | | rowspan=3 | ? | ||
+ | | rowspan=3 | | ||
+ | |- | ||
+ | | Parabola | ||
+ | | {{yes}}<ref name="added">It was added by the distribution so it works.</ref> | ||
+ | | {{yes}} | ||
+ | |- | ||
+ | | Trisquel 11 | ||
+ | | {{no|Not packaged}} | ||
+ | | {{yes}} | ||
|- | |- | ||
| UCI | | UCI | ||
| LibreCMC | | LibreCMC | ||
+ | | {{yes}}<ref name="native"></ref> | ||
+ | | Relatively easy to use: | ||
+ | * It has 3 interfacesthat work well together: | ||
+ | ** Web | ||
+ | ** Command line | ||
+ | ** Configuration files | ||
+ | * Require to have some networking notions (what is an IP address, a firewall, etc) | ||
+ | | {{yes}} | ||
+ | | {{no}} | ||
+ | | {{no}} | ||
+ | | {{no}} | ||
| | | | ||
− | + | * Can configure network services (dhcp, WiFi access point, etc) | |
|- | |- | ||
|} | |} |
Latest revision as of 20:13, 26 August 2024
Introduction
This article will look at the configuration system available for various FSDG compliant distributions.
Configuration
Configuration system | Distribution | Works | Skills | Can configure the local system | Can configure remote systems | Can install the distribution | Can create images | Features |
---|---|---|---|---|---|---|---|---|
Consfigurator | Guix | Not packaged | ||||||
Hyperbola | Not packaged | |||||||
Parabola | Not packaged | |||||||
PureOS 10 (byzantium) | Not packaged | |||||||
Trisquel 11 (aramo) | Partial[1] | Require to know lisp | Yes[2] | Yes[3] | No | Yes[4] |
|
|
Cockpit | Parabola | Yes | Interfaces:
|
Yes | Yes[5] | No | No |
|
PureOS Byzantium | Yes[7] | Yes | Yes[5] | No | No | |||
Trisquel 11 | Yes[8] | Yes | Yes[5] | No | No | |||
Debian installer preseed | PureOS 10 (byzantium) | No[9] | No | No | Yes | No |
|
|
Trisquel 10 | No[11] | |||||||
Trisquel 11 (aramo) | Yes | Hard to use.[12] | ||||||
FAI | PureOS 10 (byzantium) | Yes | ? | ? | ? | |||
Trisquel 10 | Yes[13] | Yes | ||||||
Freedombox | PureOS 10 (byzantium) | Yes[14] | Interfaces:
Installation:
|
Yes | No | ? | ? |
|
Trisquel 10 | Partial[15] | Yes | No | ? | ? | |||
Guix configuration language | Guix | Yes[16] | Require to know lisp | Yes | Yes | Yes | Yes |
|
Parabola | Yes | No | Yes | Yes | Yes | |||
PureOS 10 (byzantium) | Yes | No | Yes | Yes | Yes | |||
Trisquel 11 (aramo) | Yes | No | Yes | Yes | Yes | |||
Holo | Guix | Incompatible[17] | Yes | ? | ? | ? | ||
Parabola | Yes[18] | Yes | ||||||
Trisquel 11 | Not packaged | Yes | ||||||
UCI | LibreCMC | Yes[16] | Relatively easy to use:
|
Yes | No | No | No |
|
- ↑ It can be used but some features seem really tied to Debian. For instance in /usr/share/common-lisp/source/consfigurator/src/property/apt.lisp get-default-mirrors only has the URL of the Debian mirrors. So certain functions do assume a Debian system but other work fine on Debian derivatives or other non-debian related distributions.
- ↑ There are local or sudo connection type available
- ↑ This works through SSH. It needs SBCL on the remote computer to support all the features. A reduced set of features is still available if the remote computer doesn't have SBCL.
- ↑ This is an advertised feature but I didn't test it yet.
- ↑ 5.05.15.2 This works through SSH. It also requires cockpit on the target computer.
-
↑ At the time of writing, the following packages are available:
- ↑ It should normally work as it doesn't require too much distro specific integration.
- ↑ It should normally work as it doesn't require too much distro specific integration.
- ↑ First there is no netinstall for PureOS: The existing iso installer have no netinstall option in their menu. In addition, passing 'auto=true priority=critical preseed/file=/media/preseed.cfg' as arguments before the '---' in syslinux also doesn't work.
- ↑ The preseed file enable to answer the questions of the netinstall installer, but it's also possible to do much more, including copying files to the target installation system or run commands inside it with preseed/late_command / in-target. The files to be copied could be provided on the same media that contains the preseed.cfg file.
- ↑ Unlike Trisquel 11, there is no preseed option in the installer. Passing 'auto=true priority=critical preseed/file=/media/preseed.cfg' as arguments before the '---' in syslinux also doesn't work.
- ↑ If you mount trisquel-netinst_11.0_amd64.iso, there is a preseed folder with an examples. However these are just example and a lot of options are not documented anywhere. https://preseed.debian.net/debian-preseed/ has a more complete list of options for Debian, so by combining both you can use them as documentation and somehow manage to make it what you want to do with some trial and errors along the way.
- ↑ It's used by the FSF so it works
- ↑ PureOS 10 (byzantium) is based on Debian Bullseye, which is supports Freedombox (reference: "Currently, FreedomBox works in Debian Stable (Bullseye), Testing (Bookworm), and Unstable (Sid). " in the Debian wiki page about Freedombox. Installing Mediawiki also works well while in Trisquel it fails.
- ↑ Tested with the Debian instructions on Trisquel 10. After installing Trisquel with the default graphical install with the default partitioning or with the textual installation and selecting nothing in "software selection", and installing freedombox, installing Mediawiki broke apt because mysql didn't find its data directory.
- ↑ 16.016.1 It's the distribution native configuration interface so it works.
- ↑ Holo use the distribution package manager to handle the configuration, but holo-build only supports deb, pacman and rpm packages formats.
- ↑ It was added by the distribution so it works.