Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 2 Jan 2016 13:42:01 +0000
From:      Jonathan de Boyne Pollard <J.deBoynePollard-newsgroups@NTLWorld.com>
To:        FreeBSD Hackers <freebsd-hackers@freebsd.org>
Subject:   Re: relaunchd: a portable clone of launchd
Message-ID:  <5687D3A9.5050400@NTLWorld.com>

next in thread | raw e-mail | index | archive | help
Mark Heily:

> Then, if a program cares deeply about using the most up-to-date
> timezone setting, it can subscribe to notifications about changes in
> the time.zone key, instead of constantly polling for changes to
> /etc/localtime.
>

If a program is constantly polling for changes to /etc/localtime, then 
it should at minimum be rewritten to use kevent/kqueue.  But that aside:


Mark Heily:

> In a nutshell, [stated] is a generic publish/subscribe mechanism for
> programs running on a single host to share information about their
> internal state and receive notifications about interesting events.
> [...] I'm hoping that [it] will present a unified view of all the
> important OS configuration settings, so that programs can subscribe to
> the ones they care about and get notified when they change.  [...]
> Notice that the above JSON isn't specific to FreeBSD, so programs
> don't need to care about operating-system details like what file in
> /etc is used to define the hostname. On Linux, it can be
> /etc/hostname; on BSD it can be /etc/rc.conf; instead, all they need
> to know is that the current value of the hostname is stored in a key
> called "hostname"
>
> [...] I'm thinking of using D-Bus as the RPC mechanism for relaunchd,
> since a lot of open source programs are already using D-Bus.
>

You've almost reached the point (needing just to take the step of 
combining what you later said about D-Bus with your ideas about servers 
that publish events) of reinventing these:

* http://www.freedesktop.org/wiki/Software/systemd/timedated/
* http://www.freedesktop.org/wiki/Software/systemd/hostnamed/
* http://www.freedesktop.org/wiki/Software/systemd/localed/

I recommend, to anyone going down this route, looking towards finishing 
systembsd, especially instead of inventing a wholly new suite of protocols.

* https://uglyman.kremlin.cc/gitweb/gitweb.cgi?p=systembsd.git
* 
http://homepage.ntlworld.com./jonathan.deboynepollard/FGA/debian-systemd-packaging-hoo-hah.html
* https://news.ycombinator.com/item?id=10176275

The reason is that finishing systemdbsd will make happy all of the 
people who want the desktop environments whose design is driven largely 
by Linux to work on FreeBSD/PC-BSD.  The desktop environments that 
they'd like to use have been or are being modified to work with these 
daemons, over this D-Bus protocol.

* http://blog.davidedmundson.co.uk/blog/systemd-and-plasma
* 
https://systemd.events/systemdconf-2015/sessions/kde-plasma-embracing-systemd

Giving them another server that speaks another protocol won't help them 
get their existing GNOME/KDE/whatever client utilities, that speak the 
hostnamed/timedated/localed protocols, to work.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5687D3A9.5050400>