Warning - FreeBSD (*BSD) entanglement in Linux ecosystem

CyberLeo Kitsana cyberleo at cyberleo.net
Wed Aug 22 11:43:22 UTC 2012


On 08/21/2012 09:04 PM, David Jackson wrote:
> In reference to the claims that systemd developers "do not care about
> portability", this is deceptive and misleading. It implies that he is
> building in a dependance on intractable hardware platform dependance when
> this is absolutely not the case, there is no dependance on a hardware
> platform.There is nothing about systemd that FreeBSD could not easily
> support. Yes, his software does use system call facilities provided by
> Linux, but since this is a dependance on software systems, FreeBSD could
> easily add these facilities to its own libraries and kernel. This fact
> exposes what the complaints from some people are about, it has nothing to
> do with portability, because these issues can be easily addressed in
> software code by FreeBSD, it has to do with FreeBSD not wanting to
> implement equivalent functionality as  Linux.
> 
> The fact is, FreeBSD can fully support systemd and all kernel and system
> features, there is nothing here that is impossible for FreeBSD to support.
> 
> By doing so, it would give users MORE freedom rather than less freedom.
> FreeBSD would not even be required to use systemd for its own bootup
> sequence, which can be BSD init scripts still, but, systemd could be made
> available on FreeBSD, called from FreeBSDs init scripts, for users that
> wants to use it.
> 
> Some here would make it seem like it is impossible for FreeBSD to support
> systemd, nothing could be further from the truth. No one is stopping
> FreeBSD from implementing it or any other feature found in Linux.
> 
> I carefully looked through the documentation of systemd, I could see
> nothing except for a well designed, powerful and flexible start up system
> that is a major improvement. It IS backwards compatable with SysV and init
> scripts, so, no one can say they are taking away someones capability to use
> their own init scripts. BSD could continue to use its own startup init
> system and optionally allow systemd to be called from this for software
> that needs systemd. So, FreeBSD does not even have to change much about its
> current init system to support systemd. systemd could be called from
> FreeBSDs current init scripts as an addon rather than needing to replace
> any of the existing init system.
> 
> I basically cannot see a rational reason to not support it.

If I were to hazard a guess, it's because systemd is intended to replace
a subsystem which is simple and has had decades of testing with
something that is as yet largely unproven. If not done properly, and
with competent oversight, it could result in an unmaintainable system
that requires more than just a text editor to repair. Just imagine
losing a library against which systemd is compiled: no single-user mode
because 'init' couldn't start at all now, and no /bin/sh because the
startup scripts required to get the machine into a usable state are no
longer written in bourne shell.

But the larger issue, in my analysis, is that it forces feature creep
into any other posix implementation that must support it to run software
that depends upon it. FreeBSD has a jail implementation that is far more
advanced and secure than anything Linux currently offers; yet systemd
requires what basically amounts to a neutered version (containers) so
that it can keep track of processes. Not a dishonourable endeavour in
and of itself, but then it's like GEM/KMS all over again, where smaller,
more resource-constrained teams are rushing to add otherwise-unneeded
features to their kernels in such a way that won't cause instability or
security vulnerabilities. In this case, there isn't even any
compatibly-licensed reference code for containers that can be freely
used; the implementation must be engineered from scratch.

Lastly, it's also LGPL-licensed; either someone will have to convince
the authors to dual-license it, or a BSD-licensed implementation will
have to be written. With the current FreeBSD GPL-exodus, I don't see the
adoption of further GPL/LGPL code having much chance of succeeding;
especially when said code is required to actually bootstrap the userland.

Personally, I think diversity is good, and systemd does offer alternate
options that were previously lacking in a sysvinit/bsdinit world; but
systemd could be a lot more flexible in supporting platforms that are
other than Linux or GPL.

-- 
Fuzzy love,
-CyberLeo
Technical Administrator
CyberLeo.Net Webhosting
http://www.CyberLeo.Net
<CyberLeo at CyberLeo.Net>

Furry Peace! - http://wwww.fur.com/peace/


More information about the freebsd-questions mailing list