systemd requires HTTP server and serves QR codes

Lennart Poettering mzerqung at
Mon Oct 8 15:31:00 UTC 2012

On Mon, 08.10.12 14:50, Petr Pisar (ppisar at wrote:

> Am I the only one who raised his eyebrow when today's systemd update to
> systemd-194-1.fc18 pulled in libmicrohttpd and qrencode-libs?

The live-syncing logging logic that is available in 184 as a preview is
based on JSON and HTTP (in order to build as much on existing standards
as possible, and get best integration with other systems). In order to
keep the footprint low we decided to use an existing embeddable minimal
HTTP engine for that, rather than writing our own. Correspondingly the
microhttpd library is only pulled in by the journal gateway daemon,
which is responsible for the HTTP iface to the journal. We thought about
splitting this off into an individual package (and it would be really
easy to still do that), but as the code of libmicrohttpd is minimal, and
it doesn't pull in any deps beyond what is already in the minimal
installation set we didn't bother so far. Note that the code is not
enabled unless people do "systemctl enable

The QR code stuff is for showing a scannable QR code for the FSS sealing
key. It's a gimmick. In order to minimize footprint we actually made
sure that the qrencode pacakge got split up in order not to pull in any
additional packages into the basic set. It too is a really minimal dep,
pulling nothing else in that wasn't in the minimal installation set
already. Here too, was the option to implement our own thing, our own QR
encoding code or just use the existing solution whose code is quite OK,
whose deps are minimal, and which is quite well tested already. With the
qrencode package split-up we were quite happy with having a dep on it.

Hopes this makes sense,


Lennart Poettering - Red Hat, Inc.

More information about the devel mailing list