On Sun, Feb 16, 2014 at 12:59 PM, Volker Armin Hemmann
<volkerar...@googlemail.com> wrote:
[ snip ]
> or it is an idiotic decision. Because features means complexity.

Yeah, like the kernel.

> Complexity means bugs.

Bugs get reported, bugs get fixes. Life goes on.

> And you don't want complexity in PID1 or init. Let those 'features' be
> handled by their own specialists.

Almost all the features of systemd live outside of PID 1.

> You know, the unix way. Do one thing, do it well.

This is from my desktop machine:

/usr/lib/systemd/systemd-reply-password
/usr/lib/systemd/ntp-units.d
/usr/lib/systemd/systemd-coredump
/usr/lib/systemd/systemd-hostnamed
/usr/lib/systemd/systemd-binfmt
/usr/lib/systemd/systemd-localed
/usr/lib/systemd/systemd-machined
/usr/lib/systemd/systemd-sleep
/usr/lib/systemd/system-generators
/usr/lib/systemd/system-generators/systemd-system-update-generator
/usr/lib/systemd/system-generators/systemd-gpt-auto-generator
/usr/lib/systemd/system-generators/systemd-efi-boot-generator
/usr/lib/systemd/system-generators/systemd-fstab-generator
/usr/lib/systemd/system-generators/systemd-getty-generator
/usr/lib/systemd/system-generators/gentoo-local-generator
/usr/lib/systemd/systemd-fsck
/usr/lib/systemd/systemd-bootchart
/usr/lib/systemd/systemd-shutdown
/usr/lib/systemd/systemd-random-seed
/usr/lib/systemd/system-sleep
/usr/lib/systemd/systemd-remount-fs
/usr/lib/systemd/user-generators
/usr/lib/systemd/systemd-sysctl
/usr/lib/systemd/systemd-timedated
/usr/lib/systemd/catalog
/usr/lib/systemd/system-shutdown
/usr/lib/systemd/systemd-udevd
/usr/lib/systemd/systemd-multi-seat-x
/usr/lib/systemd/systemd-cgroups-agent
/usr/lib/systemd/systemd-user-sessions
/usr/lib/systemd/systemd-journal-gatewayd
/usr/lib/systemd/systemd-quotacheck
/usr/lib/systemd/systemd-shutdownd
/usr/lib/systemd/systemd-modules-load
/usr/lib/systemd/systemd-backlight
/usr/lib/systemd/systemd-ac-power
/usr/lib/systemd/systemd-initctl
/usr/lib/systemd/systemd-readahead
/usr/lib/systemd/systemd-journald
/usr/lib/systemd/systemd-activate
/usr/lib/systemd/systemd
/usr/lib/systemd/systemd-update-utmp
/usr/lib/systemd/systemd-vconsole-setup
/usr/lib/systemd/systemd-logind

All of them are different tools providing one capability to systemd as
a whole. So systemd is a collection of tools, where each one does one
thing, and it does it well.

By your definition, systemd perfectly follows "the unix way".

> Use text to communicate.

systemd can comunicate basically everything via text:

centurion ~ # systemctl show sshd.service | head
Id=sshd.service
Names=sshd.service
Requires=basic.target
Wants=system.slice
WantedBy=multi-user.target
Conflicts=shutdown.target
Before=shutdown.target multi-user.target
After=syslog.target network.target auditd.service
systemd-journald.socket basic.target system.slice
Description=OpenSSH server daemon
LoadState=loaded

For performance reasons, some things are passed or stored as data. Bu
everything works with text also. So, again, it passes your definition.

> That stuff. That makes things easy. And flexible. And replaceable.

Easy to whom? And systemd is more flexible that a lot of init systems,
in my opinion including OpenRC.

All the configuration and APIs are documented, public and open source.
Everything is replaceable if there is someone willing and able to
write a replacement.

Regards.
-- 
Canek Peláez Valdés
Posgrado en Ciencia e Ingeniería de la Computación
Universidad Nacional Autónoma de México

Reply via email to