Group: Software/FSDG distributions/DistroConfiguration
From LibrePlanet
(→Configuration: fix typo) |
(→Configuration: Document the lack of preseed in PureOS.) |
||
(12 intermediate revisions by the same user not shown) | |||
Line 11: | Line 11: | ||
! Works | ! Works | ||
! Skills | ! Skills | ||
+ | ! Can configure the local system | ||
+ | ! Can configure remote systems | ||
+ | ! Can install the distribution | ||
+ | ! Can create images | ||
! Features | ! Features | ||
+ | |- | ||
+ | | 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 | | rowspan=3 | Cockpit | ||
Line 19: | Line 70: | ||
* Web: Very easy to use | * Web: Very easy to use | ||
* Command line interface through the web interface | * 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 | | PureOS Byzantium | ||
| {{yes}}<ref>It should normally work as it doesn't require too much distro specific integration.</ref> | | {{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 | | Trisquel 11 | ||
| {{yes}}<ref>It should normally work as it doesn't require too much distro specific integration.</ref> | | {{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= | + | | rowspan=3 | Debian installer preseed |
| PureOS 10 (byzantium) | | 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 | ||
Line 40: | Line 124: | ||
| | | | ||
| rowspan=2 | | | 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}}<ref>It's used by the FSF so it works</ref> | ||
+ | | {{yes}} | ||
|- | |- | ||
| rowspan=2 | Freedombox | | rowspan=2 | Freedombox | ||
Line 55: | Line 144: | ||
* The installation requires to type 2 commands. | * The installation requires to type 2 commands. | ||
* Some features (like snapshots) also require specific options during the installation (like to use a btrfs filesystem). | * Some features (like snapshots) also require specific options during the installation (like to use a btrfs filesystem). | ||
+ | | {{yes}} | ||
+ | | {{no}} | ||
+ | | ? | ||
+ | | ? | ||
| rowspan=2 | | | rowspan=2 | | ||
* Can deploy many services (wikis, etc) | * Can deploy many services (wikis, etc) | ||
Line 60: | Line 153: | ||
|- | |- | ||
| 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}} | ||
+ | | ? | ||
+ | | ? | ||
|- | |- | ||
− | | Guix configuration language | + | | rowspan=4 | Guix configuration language |
| Guix | | Guix | ||
| {{yes}}<ref name="native">It's the distribution native configuration interface so it works.</ref> | | {{yes}}<ref name="native">It's the distribution native configuration interface so it works.</ref> | ||
− | | Require to know lisp | + | | rowspan=4 | Require to know lisp |
− | | | + | | {{yes}} |
+ | | {{yes}} | ||
+ | | {{yes}} | ||
+ | | {{yes}} | ||
+ | | rowspan=4 | | ||
* Can configure the whole system | * 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 | | rowspan=3 | Holo | ||
Line 73: | Line 195: | ||
| {{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> | | {{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 | | | rowspan=3 | | ||
+ | | {{yes}} | ||
+ | | rowspan=3 | ? | ||
+ | | rowspan=3 | ? | ||
+ | | rowspan=3 | ? | ||
| rowspan=3 | | | rowspan=3 | | ||
|- | |- | ||
| Parabola | | Parabola | ||
| {{yes}}<ref name="added">It was added by the distribution so it works.</ref> | | {{yes}}<ref name="added">It was added by the distribution so it works.</ref> | ||
+ | | {{yes}} | ||
|- | |- | ||
| Trisquel 11 | | Trisquel 11 | ||
| {{no|Not packaged}} | | {{no|Not packaged}} | ||
+ | | {{yes}} | ||
|- | |- | ||
| UCI | | UCI | ||
Line 90: | Line 218: | ||
** Configuration files | ** Configuration files | ||
* Require to have some networking notions (what is an IP address, a firewall, etc) | * 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) | * 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.