User:Sertonix/Freedom of choice: Difference between revisions
(add more systemd components) |
(→SU: add run0) |
||
| (57 intermediate revisions by one other user not shown) | |||
| Line 1: | Line 1: | ||
This is an overview over the different available programms, etc. that can be selected from when using alpine. It is also intended as a reference what should be documented and what could be supported. | |||
== Bootloaders == | == Bootloaders == | ||
* See: [[Bootloaders]] | * See: [[Bootloaders]] | ||
* | * Also: {{Pkg|systemd-boot}} | ||
== | == Kernel == | ||
* See: [[Kernels]] | |||
== Libc == | |||
{| class="wikitable" | {| class="wikitable" | ||
| Line 12: | Line 17: | ||
|- | |- | ||
| [https://www.gnu.org/software/libc/ glibc] || style="background:red" | None || [[Running glibc programs]] | | [https://www.gnu.org/software/libc/ glibc] || style="background:red" | None || [[Running glibc programs]] | ||
|- | |||
| without aka static || style="background:orange" | depends on package || Note that this only means no libc at runtime | |||
|} | |} | ||
* See also: [https://gitlab.alpinelinux.org/alpine/tsc/-/issues/17 alpine-glibc] | |||
* See also: [https://wiki.gentoo.org/wiki/Libc Gentoo Wiki] | |||
== | == Initramfs == | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 28: | Line 37: | ||
| [https://github.com/illiliti/tinyramfs tinyramfs] || style="background:red" | None || | | [https://github.com/illiliti/tinyramfs tinyramfs] || style="background:red" | None || | ||
|- | |- | ||
| without || style="background:red" | None || may require custom | | without || style="background:red" | None || may require [[custom Kernel]], [https://kisslinux.org/install#021 kisslinux without initramfs] | ||
|} | |} | ||
* See also: [[Initramfs init]] | * See also: [[Initramfs init]] | ||
* See also: [https://wiki.gentoo.org/wiki/Initramfs Gentoo Wiki] | |||
== | == PID 1 == | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 40: | Line 50: | ||
| busybox init || style="background:lime" | Full || Default | | busybox init || style="background:lime" | Full || Default | ||
|- | |- | ||
| {{Pkg|s6-linux-init}} || style="background: | | {{Pkg|dinit}} || style="background:orange" | In testing || Shutdown commands are prefixed with {{ic|dinit-}}. eg {{ic|dinit-reboot}} | ||
|- | |||
| {{Pkg|s6-linux-init}} || style="background:orange" | Works || Requires manually running {{ic|s6-linux-init-maker}} | |||
|- | |||
| {{Pkg|openrc-init}} || style="background:orange" | Manual setup || | |||
|- | |- | ||
| {{Pkg|dumb-init}} || style="background:silver" | Needs testing || For containers | | {{Pkg|dumb-init}} || style="background:silver" | Needs testing || For containers | ||
| Line 48: | Line 62: | ||
| {{Pkg|epoch}} || style="background:silver" | Needs testing || | | {{Pkg|epoch}} || style="background:silver" | Needs testing || | ||
|- | |- | ||
| | | systemd || style="background:red" | None || Supported by postmarketOS | ||
|- | |- | ||
| | | custom || style="background:lime" | Full || For example in docker containers | ||
|} | |} | ||
* See also: [https://wiki.gentoo.org/wiki/Init_system Gentoo Wiki] | |||
* See also: [https://wiki.archlinux.org/title/Init Archwiki] | |||
== | == Service Manager == | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 62: | Line 76: | ||
|- | |- | ||
| [[OpenRC]] || style="background:lime" | Full || Default | | [[OpenRC]] || style="background:lime" | Full || Default | ||
|- | |||
| {{Pkg|dinit}} || style="background:orange" | In testing || {{Pkg|dinit-alpine}} includes service files | |||
|- | |||
| {{Pkg|s6-rc}} || style="background:orange" | Works || Not integrated. For containers there is {{Pkg|s6-overlay}} | |||
|- | |- | ||
| {{Pkg|runit}} || style="background:orange" | As OpenRC service || | | {{Pkg|runit}} || style="background:orange" | As OpenRC service || | ||
|- | |- | ||
| {{Pkg|daemontools}} || style="background:silver" | Needs testing || | | {{Pkg|daemontools}} || style="background:silver" | Needs testing || | ||
| Line 73: | Line 89: | ||
| {{Pkg|supervisor}} || style="background:silver" | Needs testing || | | {{Pkg|supervisor}} || style="background:silver" | Needs testing || | ||
|- | |- | ||
| busybox runit || style="background:red" | None || Not enabled in a busybox package | |||
| busybox runit || style="background:red" | None || | |||
|- | |- | ||
| | | systemd || style="background:red" | None || Supported by postmarketOS | ||
|- | |- | ||
| | | without || style="background:lime" | Full || Requires to replace {{Pkg|alpine-base}} with custom set of packages (See {{Issue|71686}}) | ||
|- | |||
|} | |} | ||
* See also: [https://wiki.gentoo.org/wiki/Init_system Gentoo Wiki] | |||
* See also: [https://wiki.archlinux.org/title/Init Archwiki] | |||
== | == System Logs == | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 94: | Line 104: | ||
! Name !! Support !! Notes | ! Name !! Support !! Notes | ||
|- | |- | ||
| busybox syslog || style="background:lime" | Full || | | [[Syslog#busybox_syslog|busybox syslog]] || style="background:lime" | Full || Default | ||
|- | |- | ||
| {{Pkg|rsyslog}} || style="background:lime" | Full || | | {{Pkg|rsyslog}} || style="background:lime" | Full || | ||
| Line 100: | Line 110: | ||
| {{Pkg|syslog-ng}} || style="background:lime" | Full || | | {{Pkg|syslog-ng}} || style="background:lime" | Full || | ||
|- | |- | ||
| systemd-journald || style="background:red" | None || | | {{pkg|socklog}} || style="background:silver" | Needs testing || | ||
|- | |||
| [https://skarnet.org/software/s6/s6-socklog.html s6-socklog] from {{pkg|s6}} || style="background:silver" | Needs testing || | |||
|- | |||
| systemd-journald || style="background:red" | None || Supported by postmarketOS | |||
|- | |||
| without || style="background:silver" | Needs testing || | |||
|} | |} | ||
* See also: [[Syslog]] | * See also: [[Syslog]] | ||
== | == [[Device Manager]] == | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 110: | Line 126: | ||
! Name !! Support !! Notes | ! Name !! Support !! Notes | ||
|- | |- | ||
| | | [[mdev]] || style="background:lime" | Full || Default | ||
|- | |- | ||
| | | [[mdevd]] || style="background:lime" | Full || | ||
|- | |- | ||
| | | [[eudev]] || style="background:lime" | Full || | ||
|- | |- | ||
| vdev || style="background:red" | None || | | vdev || style="background:red" | None || | ||
|- | |- | ||
| systemd-udev || style="background:red" | None || | | systemd-udev || style="background:red" | None || Supported by postmarketOS | ||
|} | |} | ||
== Power Managment == | == Power Managment == | ||
| Line 138: | Line 149: | ||
| {{Pkg|elogind}} || style="background:silver" | Needs testing || | | {{Pkg|elogind}} || style="background:silver" | Needs testing || | ||
|- | |- | ||
| systemd-logind || style="background:red" | None || | | systemd-logind || style="background:red" | None || Supported by postmarketOS | ||
|- | |||
| without || style="background:lime" | Full || | |||
|} | |} | ||
* See also: [https://wiki.archlinux.org/title/Power_management Archwiki] | |||
* See also: [https://wiki.gentoo.org/wiki/Power_management Gentoo Wiki] | |||
== DHCP | == DHCP Client == | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 153: | Line 168: | ||
| {{Pkg|dhclient}} || style="background:lime" | Full || | | {{Pkg|dhclient}} || style="background:lime" | Full || | ||
|- | |- | ||
| | | without aka static || style="background:lime" | Full || | ||
|} | |} | ||
* See also: [[Configure Networking]] | |||
* See also: [https://wiki.archlinux.org/title/Network_configuration#DHCP Archwiki] | |||
* See also: [https://wiki.gentoo.org/wiki/Resolv.conf Gentoo Wiki - resolv.conf] | |||
== Wi-Fi == | == Wi-Fi == | ||
* See: [[Wi-Fi]] | * See: [[Wi-Fi]] | ||
* Also supported: {{pkg|eiwd}} | |||
== | == Seat/Session Managnent == | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 165: | Line 184: | ||
! Name !! Support !! Notes | ! Name !! Support !! Notes | ||
|- | |- | ||
| | | [[elogind]] || style="background:lime" | Full || | ||
|- | |- | ||
| {{Pkg|seatd}} || style="background:lime" | Full || seats only | | {{Pkg|seatd}} || style="background:lime" | Full || seats only | ||
|- | |- | ||
| systemd-logind || style="background:red" | None || | | {{Pkg|turnstile}} || style="background:silver" | needs testing || session only | ||
|- | |||
| systemd-logind || style="background:red" | None || Supported by postmarketOS | |||
|- | |||
| without || style="background:lime" | Full || Not recommended with graphical enviroment | |||
|} | |} | ||
* [https://wiki.gentoo.org/wiki/Seatd Gentoo Wiki - seatd] | |||
* [https://wiki.gentoo.org/wiki/Elogind Gentoo Wiki - elogind] | |||
* [https://wiki.archlinux.org/title/Init#logind ArchWiki - systemd-logind] | |||
* [https://chimera-linux.org/docs/configuration/seat Chimera Linux docs] | |||
== | == Login == | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 186: | Line 213: | ||
| {{Pkg|util-linux-login}} || style="background:lime" | Full || style="background:lime" | Yes || | | {{Pkg|util-linux-login}} || style="background:lime" | Full || style="background:lime" | Yes || | ||
|- | |- | ||
| systemd-logind || style="background:red" | None || | | systemd-logind || style="background:red" | None || style="background:lime" | Yes || Supported by postmarketOS | ||
|- | |||
| without || style="background:lime" | Full || style="background:red" | No || | |||
|} | |} | ||
* See also: [https://wiki.gentoo.org/wiki/Login Gentoo Wiki] | |||
== | == Shell Utils == | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 196: | Line 225: | ||
! Name !! Support !! Notes | ! Name !! Support !! Notes | ||
|- | |- | ||
| {{Pkg|busybox}} || style="background:lime" | Full || | | {{Pkg|busybox}} || style="background:lime" | Full || Dependency of {{pkg|alpine-base}} | ||
|- | |- | ||
| {{Pkg| | | {{Pkg|busybox-extras}} || style="background:lime" | Full || Some commands that are missing in the main {{Pkg|busybox}} package | ||
|- | |- | ||
| {{Pkg|util-linux}} || style="background:lime" | Full || | | {{Pkg|util-linux}} || style="background:lime" | Full || | ||
|- | |- | ||
| [[GNU_core_utilities|coreutils]] || style="background:lime" | Full || | | [[GNU_core_utilities|coreutils]] || style="background:lime" | Full || | ||
|- | |||
| {{Pkg|s6-portable-utils}} || style="background:lime" | Full || | |||
|- | |||
| {{Pkg|s6-linux-utils}} || style="background:lime" | Full || | |||
|- | |||
| {{Pkg|toybox}} || style="background:silver" | Needs testing || | |||
|- | |- | ||
| {{Pkg|sbase}} || style="background:silver" | Needs testing || | | {{Pkg|sbase}} || style="background:silver" | Needs testing || | ||
|- | |- | ||
| {{Pkg|ubase}} || style="background:silver" | Needs testing || | | {{Pkg|ubase}} || style="background:silver" | Needs testing || | ||
|- | |||
| without || style="background:red" | None || A lot of implicit dependency | |||
|} | |} | ||
* See also: [https://wiki.archlinux.org/title/Core_utilities Archwiki] | |||
== | == Shell == | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 218: | Line 256: | ||
|- | |- | ||
| {{Pkg|bash}} || style="background:lime" | Full || | | {{Pkg|bash}} || style="background:lime" | Full || | ||
|- | |||
| {{Pkg|dash}} || style="background:lime" | Full || When used as /bin/sh this may cause breakage. | |||
|- | |||
| {{Pkg|yash}} || style="background:lime" | Full || | |||
|- | |||
| busybox hush || style="background:red" | None || | |||
|- | |||
| without || style="background:red" | None || sometimes implicit dependency | |||
|} | |} | ||
* | * See also: [[Change default shell]] | ||
* See proposal: [https://gitlab.alpinelinux.org/alpine/tsc/-/issues/39 replace busybox ash with another /bin/sh] | |||
* See also: [https://wiki.archlinux.org/title/Command-line_shell Archwiki] | |||
* See also: [https://wiki.gentoo.org/wiki/Shell Gentoo Wiki] | |||
== | == SU == | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
! Name !! Support !! Notes | ! Name !! Support !! Notes | ||
|- | |||
| {{ic|su}} from {{Pkg|busybox-suid}} || style="background:lime" | Full || default, can't be removed by default ({{issue|11730}}) | |||
|- | |||
| {{ic|su}} from {{Pkg|shadow-login}} || style="background:lime" | Full || | |||
|- | |||
| {{ic|su}} from {{Pkg|util-linux-login}} || style="background:lime" | Full || | |||
|- | |- | ||
| {{Pkg|sudo}} || style="background:lime" | Full || | | {{Pkg|sudo}} || style="background:lime" | Full || | ||
|- | |- | ||
| {{Pkg|doas}} || style="background:lime" | Full || sudo shim using doas: {{Pkg|doas-sudo-shim}} | | {{Pkg|doas}} || style="background:lime" | Full || sudo shim using doas: {{Pkg|doas-sudo-shim}} | ||
|- | |||
| [https://skarnet.org/software/s6/s6-sudo.html s6-sudo] || style="background:silver" | Needs testing || | |||
| | |||
|- | |||
| run0 || style="background:red" | None || Supported by postmarketOS | |||
|- | |- | ||
| without || style="background:lime" | Full || | | without || style="background:lime" | Full || | ||
|} | |} | ||
== | == SSL/TLS == | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 248: | Line 307: | ||
|} | |} | ||
* See also: [https://gitlab.alpinelinux.org/alpine/tsc/-/issues/28 consider LibreSSL as default OpenSSL provider again] | * See also: [https://gitlab.alpinelinux.org/alpine/tsc/-/issues/28 consider LibreSSL as default OpenSSL provider again] | ||
* See also: [https://wiki.archlinux.org/title/Transport_Layer_Security Archwiki] | |||
* See also: [https://github.com/haproxy/wiki/wiki/SSL-Libraries-Support-Status haproxy SSL Libraries Support Status] | |||
== | == Cron == | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 265: | Line 326: | ||
| scron || style="background:red" | None || | | scron || style="background:red" | None || | ||
|- | |- | ||
| systemd | | systemd.timer || style="background:red" | None || Supported by postmarketOS | ||
|- | |||
| without || style="background:lime" | Full || {{Pkg|alpine-baselayout}} includes cron specific directories though | |||
|} | |} | ||
* See also: [https://wiki.archlinux.org/title/Cron Archwiki] | |||
* See also: [https://wiki.gentoo.org/wiki/Cron Gentoo Wiki] | |||
== | == SSH == | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 276: | Line 341: | ||
| [[Setting_up_a_SSH_server#OpenSSH|openssh]] || style="background:lime" | Full || | | [[Setting_up_a_SSH_server#OpenSSH|openssh]] || style="background:lime" | Full || | ||
|- | |- | ||
| [[Setting_up_a_SSH_server#Dropbear|dropbear]] || style="background:lime" | Full || | | [[Setting_up_a_SSH_server#Dropbear|dropbear]] || style="background:lime" | Full || provide {{ic|ssh}} command {{pkg|dropbear-ssh}} | ||
|- | |||
| without || style="background:lime" | Full || | |||
|} | |} | ||
* See also: [https://wiki.archlinux.org/title/Secure_Shell Archwiki] | |||
* See also: [https://wiki.gentoo.org/wiki/SSH Gentoo Wiki - OpenSSH] | |||
* See also: [https://wiki.gentoo.org/wiki/Dropbear Gentoo Wiki - Dropbear] | |||
== Desktop == | == Desktop == | ||
* See: [[Desktop environments and Window managers]] | * See: [[Desktop environments and Window managers]] | ||
== See Also == | |||
* [[Architecture|Alpine Architecture]] | |||
* [https://gitlab.alpinelinux.org/alpine/tsc/-/issues/55 Future of busybox] | |||
Latest revision as of 07:02, 23 July 2025
This is an overview over the different available programms, etc. that can be selected from when using alpine. It is also intended as a reference what should be documented and what could be supported.
Bootloaders
- See: Bootloaders
- Also: systemd-boot
Kernel
- See: Kernels
Libc
| Name | Support | Notes |
|---|---|---|
| musl | Full | Default |
| glibc | None | Running glibc programs |
| without aka static | depends on package | Note that this only means no libc at runtime |
- See also: alpine-glibc
- See also: Gentoo Wiki
Initramfs
| Name | Support | Notes |
|---|---|---|
| mkinitfs | Full | Default |
| dracut | Full | |
| booster | Full | |
| tinyramfs | None | |
| without | None | may require custom Kernel, kisslinux without initramfs |
- See also: Initramfs init
- See also: Gentoo Wiki
PID 1
| Name | Support | Notes |
|---|---|---|
| busybox init | Full | Default |
| dinit | In testing | Shutdown commands are prefixed with dinit-. eg dinit-reboot
|
| s6-linux-init | Works | Requires manually running s6-linux-init-maker
|
| openrc-init | Manual setup | |
| dumb-init | Needs testing | For containers |
| runit-init | Needs testing | runit-init starting OpenRC |
| epoch | Needs testing | |
| systemd | None | Supported by postmarketOS |
| custom | Full | For example in docker containers |
- See also: Gentoo Wiki
- See also: Archwiki
Service Manager
| Name | Support | Notes |
|---|---|---|
| OpenRC | Full | Default |
| dinit | In testing | dinit-alpine includes service files |
| s6-rc | Works | Not integrated. For containers there is s6-overlay |
| runit | As OpenRC service | |
| daemontools | Needs testing | |
| daemontools-encore | Needs testing | |
| supervisor | Needs testing | |
| busybox runit | None | Not enabled in a busybox package |
| systemd | None | Supported by postmarketOS |
| without | Full | Requires to replace alpine-base with custom set of packages (See #71686) |
- See also: Gentoo Wiki
- See also: Archwiki
System Logs
| Name | Support | Notes |
|---|---|---|
| busybox syslog | Full | Default |
| rsyslog | Full | |
| syslog-ng | Full | |
| socklog | Needs testing | |
| s6-socklog from s6 | Needs testing | |
| systemd-journald | None | Supported by postmarketOS |
| without | Needs testing |
- See also: Syslog
Device Manager
| Name | Support | Notes |
|---|---|---|
| mdev | Full | Default |
| mdevd | Full | |
| eudev | Full | |
| vdev | None | |
| systemd-udev | None | Supported by postmarketOS |
Power Managment
| Name | Support | Notes |
|---|---|---|
| busybox acpid | Full | Default |
| acpid | Full | |
| elogind | Needs testing | |
| systemd-logind | None | Supported by postmarketOS |
| without | Full |
- See also: Archwiki
- See also: Gentoo Wiki
DHCP Client
| Name | Support | Notes |
|---|---|---|
| busybox udhcpc | Full | Default |
| dhcpcd | Full | |
| dhclient | Full | |
| without aka static | Full |
- See also: Configure Networking
- See also: Archwiki
- See also: Gentoo Wiki - resolv.conf
Wi-Fi
Seat/Session Managnent
| Name | Support | Notes |
|---|---|---|
| elogind | Full | |
| seatd | Full | seats only |
| turnstile | needs testing | session only |
| systemd-logind | None | Supported by postmarketOS |
| without | Full | Not recommended with graphical enviroment |
Login
| Name | Support | Supports PAM | Notes |
|---|---|---|---|
| busybox login | Full | No | Default |
| greetd | Full | Yes | requires greeter |
| shadow-login | Full | Yes | |
| util-linux-login | Full | Yes | |
| systemd-logind | None | Yes | Supported by postmarketOS |
| without | Full | No |
- See also: Gentoo Wiki
Shell Utils
| Name | Support | Notes |
|---|---|---|
| busybox | Full | Dependency of alpine-base |
| busybox-extras | Full | Some commands that are missing in the main busybox package |
| util-linux | Full | |
| coreutils | Full | |
| s6-portable-utils | Full | |
| s6-linux-utils | Full | |
| toybox | Needs testing | |
| sbase | Needs testing | |
| ubase | Needs testing | |
| without | None | A lot of implicit dependency |
- See also: Archwiki
Shell
| Name | Support | Notes |
|---|---|---|
| busybox ash | Full | Default |
| bash | Full | |
| dash | Full | When used as /bin/sh this may cause breakage. |
| yash | Full | |
| busybox hush | None | |
| without | None | sometimes implicit dependency |
- See also: Change default shell
- See proposal: replace busybox ash with another /bin/sh
- See also: Archwiki
- See also: Gentoo Wiki
SU
| Name | Support | Notes | |
|---|---|---|---|
su from busybox-suid |
Full | default, can't be removed by default (#11730) | |
su from shadow-login |
Full | ||
su from util-linux-login |
Full | ||
| sudo | Full | ||
| doas | Full | sudo shim using doas: doas-sudo-shim | |
| s6-sudo | Needs testing | ||
| run0 | None | Supported by postmarketOS | |
| without | Full |
SSL/TLS
| Name | Support | Notes |
|---|---|---|
| openssl | Full | Default |
| libressl | Needs testing | |
| bearssl | Needs testing |
- See also: consider LibreSSL as default OpenSSL provider again
- See also: Archwiki
- See also: haproxy SSL Libraries Support Status
Cron
| Name | Support | Notes |
|---|---|---|
| cronie | Full | |
| dcron | Full | |
| fcron | Full | |
| vixie-cron | None | |
| scron | None | |
| systemd.timer | None | Supported by postmarketOS |
| without | Full | alpine-baselayout includes cron specific directories though |
- See also: Archwiki
- See also: Gentoo Wiki
SSH
| Name | Support | Notes |
|---|---|---|
| openssh | Full | |
| dropbear | Full | provide ssh command dropbear-ssh
|
| without | Full |
- See also: Archwiki
- See also: Gentoo Wiki - OpenSSH
- See also: Gentoo Wiki - Dropbear