
SystemBSD: Custom D-Bus daemons emulating systemd behavior on OpenBSD [pdf] - vezzy-fnord
http://darknedgy.net/files/systembsd.pdf
======
byuu
As long as it's optional for Gnome only as they say, that's fine. I just hope
other DEs like Xfce don't simply rely on this being available like with
Consolekit, HAL, D-bus, etc that I now have to run on FreeBSD as well.

I'm perfectly content ignoring Gnome, but if every full desktop environment
starts relying on this because it's available, then it's not really so
optional anymore. (and of course, if the alternative is guaranteed to be no
major DE running on BSD at all without this, then we similarly have our hand
forced. It depends on who would flinch first.)

~~~
digi_owl
Best i can tell, the reason Xfce seems to assume it is there is because the
developers are short on time and thus make use of low level Gnome libs to get
things out the door.

Essentially Gnome seem able to throw a whole lot more man hours at various
topic than can the rest of the DEs, KDE included. This in turn seem to lever
Freedesktop towards them (though Freedesktop may have overly favored Gnome
from the get-go).

~~~
byuu
Xfce already depends on it? :(

I was under the impression they had FreeBSD users on their dev team, and kept
it alive, just with some limited features (like automounting not really
working) and only relying on a few Linuxisms like Consolekit.

Still on 4.10 though, so perhaps that's no longer the case on the newer
versions.

~~~
purpleorange
xfce will use systemd if it is available, but it can still be used without it

[http://xfce.org/about/tour](http://xfce.org/about/tour)

the tour was taken using openbsd

------
generic_user
From the pdf, "the overwhelmingly common use case for these daemons is for
running gnome".

There are native BSD desktop projects being worked on that are quite polished
and require none of the Linux based SytemD+Gtk+Gnome dependency stack.

Lumina is worth looking at (Qt based) and also runs on Linux.

[https://en.wikipedia.org/wiki/Lumina_Desktop](https://en.wikipedia.org/wiki/Lumina_Desktop)

From what I remember the author started this work before the nuclear meltdown
which is commendable. But we are obviously in a post schism age.

------
geofft
The systemd folks have been saying all along that it's just a standardized and
stable interface and anyone else can implement that interface. I'm glad to see
this, because it's testing the claim: if it's true, that means wonderful
things for OpenBSD portability, and if it's not true, we should be more
cautious about coding to systemd's APIs.

~~~
generic_user
The argument that XYZ has a portable interface therefor XYZ is portable is a
bit of a head fake argument. OpenGL 4.5 is also a supposedly portable
interface, so is the X Server protocol. To implement these takes years of work
with large teams of full time engineers. Mesa has over 1.5 million lines of
code and has been in constant development for over 10 years.

At last count SystemD has over 40 "Interfaces". These are not publicly
versioned standards. So there is no stable interface to even implement and
there is no commitment that these "interfaces" will not change at any point in
time.

If the project estimate to actually implement XYZ interface takes years of
full time engineers and millions of dollars to complete its basically out of
the reach of any volunteer open source operating system project.

I just find the argument disingenuous. Everyone making these claims knows that
there is practically 0 chance that anyone but RedHat or another big
Corporation like Google or Samsung has the resources to Implement something
like this.

~~~
esarbe
What you are stating here is not true.

Take a look at
[https://wiki.freedesktop.org/www/Software/systemd/InterfaceP...](https://wiki.freedesktop.org/www/Software/systemd/InterfacePortabilityAndStabilityChart/)
and you'll see that there are indeed a plethora of systemd service apis. But
almost all of them are covered by the systemd stability promise
([https://wiki.freedesktop.org/www/Software/systemd/InterfaceS...](https://wiki.freedesktop.org/www/Software/systemd/InterfaceStabilityPromise/))
and almost all of them are documented.

So, there is a commitment that these interfaces will not change.

~~~
generic_user
I am aware of the pages you linked to and have on a few occasions tried to
look over things. Having read quite a few rather large standers and APIs my
impression the "Portable Interfaces" is rather dim. They are disjoint and
unversioned notes not presentable portable interface standards. There are also
various internal protocols and interfaces which are not documented from what I
have gathered.

In short SystemD is an implementation. And as they say in there own documents
there implementation is and never will be a portable implementation.

The "Interface Stability Promise" is referring to the unit configuration file
format and the command line interface. This is not stability of the
implementation c interfaces.

If you want to see a proper portable specification take a look at the Wayland
Protocol Specification. There or perhaps POSIX.

~~~
yrro
> The "Interface Stability Promise" is referring to the unit configuration
> file format and the command line interface. This is not stability of the
> implementation c interfaces.

This is not true.

------
raphaelss
The author mentions using OpenBSD in production. Do any of you also use it in
production? I have no doubt that it is used with good results, but I have
enjoyed it as a desktop OS and would love if more people could share their
experience with it on a job.

~~~
meanjollies
I work for an ISP. We use it (CARP and relayd) heavily for HTTP and DNS load
balancing in an IPv6-laden environment. Performance is better than that we saw
a few years ago under Linux.

~~~
brobinson
Did you also evaluate FreeBSD? If you did, I'm curious what the pros and cons
were that ultimately affected your decision.

~~~
meanjollies
I did not. I was more familiar with OpenBSD to begin with, and like its slant
toward security. Although we do use FreeBSD for a few other servers used as
NAS controllers. HAST + ZFS + CARP is great.

~~~
brobinson
Fair enough, thanks. I was curious since I've heard that FreeBSD generally has
the best performance for network-heavy architectures.

------
JdeBP
It's good to see that
[http://homepage.ntlworld.com./jonathan.deboynepollard/FGA/de...](http://homepage.ntlworld.com./jonathan.deboynepollard/FGA/debian-
systemd-packaging-hoo-hah.html#systemBSD) agrees with what Ian Sutton himself
later reported about the relative difficulties and problems.

------
wereHamster
Proper capitalization goes a long way in making a text readable. I had the
impression that this presentation was written by a 10 year old script kiddie.
Also: punctuation, consistent font sizing. Add a few colors to highlight the
code blocks. Headings. Graphical bullet points. Those would make the
presentation mch more trustworthy. If you are going to talk shit about
somebody or something (without substantiating the points nonetheless) then at
least do it with style.

~~~
dalke
As vezzy-fnord points out in this thread, at
[https://news.ycombinator.com/item?id=10176412](https://news.ycombinator.com/item?id=10176412)
, the author did not post the slides, nor had final say on the presentation
format. Instead, quoting vezzy-fnord:

> They were in MagicPoint format, so I had to convert them to PDF with a
> dubious third-party Python script, slightly modifying the MGP manifest in
> the process. That's probably why the formatting is so iffy.

You'll also note that the author "reluctantly" gave permission. For all we
know, it was precisely because the author knew that people would criticize the
paper over superficial format conversion issues than actual substance.

~~~
asveikau
I actually looked at the git repo and found the comments are written in a
similar style. All lower case and with a slightly rambling feel.

[https://uglyman.kremlin.cc/gitweb/gitweb.cgi?p=systembsd.git...](https://uglyman.kremlin.cc/gitweb/gitweb.cgi?p=systembsd.git;a=blob_plain;f=src/interfaces/hostnamed/hostnamed.c;hb=HEAD)

I find it a little hard to understand too. I am going to chalk this up to me
starting to be an old man and complaining about not understanding the youths.

~~~
dalke
I enjoyed the research you did for the followup. I must be another one of
those old folks. :)

For what it's worth, I was a horrible writer when I was an undergraduate, and
this was a GSOC project, so I'm willing to cut some slack. Might be because
I'm a slacker.

------
simoncion
Is there a recording of the talk that -I assume- was given with these slides?

~~~
vezzy-fnord
There is no recording, from what Sutton told me. I saw the talk overview on
the CDBUG page, knew his IRC handle and said "Give me the slides and the right
to freely redistribute, you asshole." So he reluctantly did.

They were in MagicPoint format, so I had to convert them to PDF with a dubious
third-party Python script, slightly modifying the MGP manifest in the process.
That's probably why the formatting is so iffy.

For those wondering, the systembsd sources are here:
[https://uglyman.kremlin.cc/gitweb/gitweb.cgi?p=systembsd.git...](https://uglyman.kremlin.cc/gitweb/gitweb.cgi?p=systembsd.git;a=summary)

