
Why FreeBSD should not adopt launchd - vezzy-fnord
http://blog.darknedgy.net/technology/2015/08/26/0/
======
tyingq
Mmm. Unix like OS with controversy newly swirling about init replacement. Déjà
vu.

~~~
rodgerd
I hope the experience is less filled with tedious "mah Unix philosophy" for
the BSD community than it was for the Linux community, but I wouldn't hold my
breath.

~~~
_delirium
The linked article is fortunately not really in that genre. It's criticizing
the specific proposal in a reasonable amount of detail, not just vaguely
criticizing the abstract idea of launchd for being allegedly "not unix
enough". The main thrust of the criticism is that wholesale porting over the
OSX services layer to FreeBSD produces a poor fit, because a lot of the OSX
design is designed for a different purpose: as developer-facing tools used to
configure/ship a desktop/laptop OS, not sysadmin-facing tools used on servers.
Also, it's all tied up with Mach in a way that is fine if you're running Mach
(as OSX is), but drags in a lot of baggage for FreeBSD.

------
bmir-alum-007
FBSD: I was just dealing with circular dependency hell (or misunderstanding of
docs/conventions) in some rc.d scripts.

Maybe someone here knows how to do this properly (or better):

    
    
        # /usr/local/etc/rc.d/dnscrypt-proxy
        #
        # PROVIDE: dnscrypt_proxy
        # REQUIRE: ldconfig cleanvar NETWORKING
        # BEFORE: SERVERS local_unbound
        # KEYWORD: shutdown
    

^--- _REQUIRE: ... NETWORKING_ always seems to cause a circular dependency (as
per running: rcorder /etc/rc.d/* /usr/local/etc/rc.d/*)

Help appreciated, not required, just showing a real-life example.

~~~
feld
did you open a bug? this should be fixed in the port, not on your local
machine.

------
feld
They don't have to use it exactly as OSX uses it

It's not doing all of that stuff in pid 1

~~~
_delirium
Even on OSX it's not all done in PID 1; the post isn't quite right about that.
I believe plist parsing is done by launchctl, not in launchd itself.

