+CHANGES WITH 218:
+
+ * When querying unit file enablement status (for example via
+ "systemctl is-enabled"), a new state "indirect" is now known
+ which indicates that a unit might not be enabled itself, but
+ another unit listed in its Alias= setting might be.
+
+ * Similar to the various existing ConditionXYZ= settings for
+ units there are now matching AssertXYZ= settings. While
+ failing conditions cause a unit to be skipped, but its job
+ to succeed, failing assertions declared like this will cause
+ a unit start operation and its job to fail.
+
+ * hostnamed now knows a new chassis type "embedded".
+
+ * systemctl gained a new "edit" command. When used on a unit
+ file this allows extending unit files with .d/ drop-in
+ configuration snippets or editing the full file (after
+ copying it from /usr/lib to /etc). This will invoke the
+ user's editor (as configured with $EDITOR), and reload the
+ modified configuration after editing.
+
+ * "systemctl status" now shows the suggested enablement state
+ for a unit, as declared in the (usually vendor-supplied)
+ system preset files.
+
+ * nss-myhostname will now resolve the single-label host name
+ "gateway" to the locally configured default IP routing
+ gateways, ordered by their metrics. This assigns a stable
+ name to the used gateways, regardless which ones are
+ currently configured. Note that the name will only be
+ resolved after all other name sources (if nss-myhostname is
+ configured properly) and should hence not negatively impact
+ systems that use the single-label host name "gateway" in
+ other contexts.
+
+ * systemd-inhibit now allows filtering by mode when listing
+ inhibitors.
+
+ * Units with resource management gained a new "Delegate"
+ boolean property, which when set allows processes running
+ inside the unit to further partition resources. This is
+ primarily useful for systemd user instances as well as
+ container managers.
+
+ * journald will now pick up audit messages directly from
+ the kernel, and log them like any other log message. The
+ audit fields are split up and fully indexed. This means that
+ journalctl in many ways is now a (nicer!) alternative to
+ ausearch, the traditional audit client. Note that this
+ implements only a minimal audit client, if you want the
+ special audit modes like reboot-on-log-overflow, please use
+ the traditional auditd instead, which can be used in
+ parallel to journald.
+
+ * The ConditionSecurity= unit file option now understands the
+ special string "audit" to check whether auditing is
+ available.
+
+ * journalctl gained two new commands --vacuum-size= and
+ --vacuum-time= to delete old journal files until the
+ remaining ones take up no more the specified size on disk,
+ or are not older than the specified time.
+
+ * A new, native PPPoE library has been added to sd-network,
+ systemd's library of light-weight networking protocols. This
+ library will be used in a future version of networkd to
+ enable PPPoE communication without an external pppd daemon.
+
+ * The busctl tool now understands a new "capture" verb that
+ works similar to "monitor", but writes a packet capture
+ trace to STDOUT that can be redirected to a file which is
+ compatible with libcap's capture file format. This can then
+ be loaded in Wireshark and similar tools to inspect bus
+ communication.
+
+ * The busctl tool now understands a new "tree" verb that shows
+ the object trees of a specific service on the bus, or of all
+ services.
+
+ * The busctl tool now understands a new "introspect" verb that
+ shows all interfaces and members of objects on the bus,
+ including their signature and values. This is particularly
+ useful to get more information about bus objects shown by
+ the new "busctl tree" command.
+
+ * The busctl tool now understands new verbs "call",
+ "set-property" and "get-property" for invoking bus method
+ calls, setting and getting bus object properties in a
+ friendly way.
+
+ * busctl gained a new --augment-creds= argument that controls
+ whether the tool shall augment credential information it
+ gets from the bus with data from /proc, in a possibly
+ race-ful way.
+
+ * nspawn's --link-journal= switch gained two new values
+ "try-guest" and "try-host" that work like "guest" and
+ "host", but do not fail if the host has no persistent
+ journalling enabled. -j is now equivalent to
+ --link-journal=try-guest.
+
+ * macvlan network devices created by nspawn will now have
+ stable MAC addresses.
+
+ * A new SmackProcessLabel= unit setting has been added, which
+ controls the SMACK security label processes forked off by
+ the respective unit shall use.
+
+ * If compiled with --enable-xkbcommon, systemd-localed will
+ verify x11 keymap settings by compiling the given keymap. It
+ will spew out warnings if the compilation fails. This
+ requires libxkbcommon to be installed.
+
+ * When a coredump is collected a larger number of metadata
+ fields is now collected and included in the journal records
+ created for it. More specifically control group membership,
+ environment variables, memory maps, working directory,
+ chroot directory, /proc/$PID/status, and a list of open file
+ descriptors is now stored in the log entry.
+
+ * The udev hwdb now contains DPI information for mice. For
+ details see:
+
+ http://who-t.blogspot.de/2014/12/building-a-dpi-database-for-mice.html
+
+ * All systemd programs that read standalone configuration
+ files in /etc now also support a corresponding series of
+ .conf.d configuration directories in /etc/, /run/,
+ /usr/local/lib/, /usr/lib/, and (if configured with
+ --enable-split-usr) /lib/. In particular, the following
+ configuration files now have corresponding configuration
+ directories: system.conf user.conf, logind.conf,
+ journald.conf, sleep.conf, bootchart.conf, coredump.conf,
+ resolved.conf, timesyncd.conf, journal-remote.conf, and
+ journal-upload.conf. Note that distributions should use the
+ configuration directories in /usr/lib/; the directories in
+ /etc/ are reserved for the system administrator.
+
+ * systemd-rfkill will no longer take the rfkill device name
+ into account when storing rfkill state on disk, as the name
+ might be dynamically assigned and not stable. Instead, the
+ ID_PATH udev variable combined with the rfkill type (wlan,
+ bluetooth, ...) is used.
+
+ * A new service systemd-machine-id-commit.service has been
+ added. When used on systems where /etc is read-only during
+ boot, and /etc/machine-id is not initialized (but an empty
+ file), this service will copy the temporary machine ID
+ created as replacement into /etc after the system is fully
+ booted up. This is useful for systems that are freshly
+ installed with a non-initialized machine ID, but should get
+ a fixed machine ID for subsequent boots.
+
+ * networkd's .netdev files now provide a large set of
+ configuration parameters for VXLAN devices. Similar, the
+ bridge port cost parameter is now configurable in .network
+ files. There's also new support for configuring IP source
+ routing. networkd .link files gained support for a new
+ OriginalName= match that is useful to match against the
+ original interface name the kernel assigned. .network files
+ may include MTU= and MACAddress= fields for altering the MTU
+ and MAC address while being connected to a specific network
+ interface.
+
+ * The LUKS logic gained supported for configuring
+ UUID-specific key files. There's also new support for naming
+ LUKS device from the kernel command line, using the new
+ luks.name= argument.
+
+ * Timer units may now be transiently created via the bus API
+ (this was previously already available for scope and service
+ units). In addition it is now possible to create multiple
+ transient units at the same time with a single bus call. The
+ "systemd-run" tool has been updated to make use of this for
+ running commands on a specified time, in at(1)-style.
+
+ * tmpfiles gained support for "t" lines, for assigning
+ extended attributes to files. Among other uses this may be
+ used to assign SMACK labels to files.
+
+ Contributions from: Alin Rauta, Alison Chaiken, Andrej
+ Manduch, Bastien Nocera, Chris Atkinson, Chris Leech, Chris
+ Mayo, Colin Guthrie, Colin Walters, Cristian Rodríguez,
+ Daniele Medri, Daniel Mack, Dan Williams, Dan Winship, Dave
+ Reisner, David Herrmann, Didier Roche, Felipe Sateler, Gavin
+ Li, Hans de Goede, Harald Hoyer, Iago López Galeiras, Ivan
+ Shapovalov, Jakub Filak, Jan Janssen, Jan Synacek, Joe
+ Lawrence, Josh Triplett, Kay Sievers, Lennart Poettering,
+ Lukas Nykryn, Łukasz Stelmach, Maciej Wereski, Mantas
+ Mikulėnas, Marcel Holtmann, Martin Pitt, Maurizio Lombardi,
+ Michael Biebl, Michael Chapman, Michael Marineau, Michal
+ Schmidt, Michal Sekletar, Olivier Brunel, Peter Hutterer,
+ Przemyslaw Kedzierski, Rami Rosen, Ray Strode, Richard Schütz,
+ Richard W.M. Jones, Ronny Chevalier, Ross Lagerwall, Sean
+ Young, Stanisław Pitucha, Susant Sahani, Thomas Haller, Thomas
+ Hindoe Paaboel Andersen, Tom Gundersen, Torstein Husebø, Umut
+ Tezduyar Lindskog, Vicente Olivert Riera, WaLyong Cho, Wesley
+ Dawson, Zbigniew Jędrzejewski-Szmek
+
+ -- Berlin, 2014-12-10
+
+CHANGES WITH 217:
+
+ * journalctl gained the new options -t/--identifier= to match
+ on the syslog identifier (aka "tag"), as well as --utc to
+ show log timestamps in the UTC timezone. journalctl now also
+ accepts -n/--lines=all to disable line capping in a pager.
+
+ * journalctl gained a new switch, --flush, that synchronously
+ flushes logs from /run/log/journal to /var/log/journal if
+ persistent storage is enabled. systemd-journal-flush.service
+ now waits until the operation is complete.
+
+ * Services can notify the manager before they start a reload
+ (by sending RELOADING=1) or shutdown (by sending
+ STOPPING=1). This allows the manager to track and show the
+ internal state of daemons and closes a race condition when
+ the process is still running but has closed its D-Bus
+ connection.
+
+ * Services with Type=oneshot do not have to have any ExecStart
+ commands anymore.
+
+ * User units are now loaded also from
+ $XDG_RUNTIME_DIR/systemd/user/. This is similar to the
+ /run/systemd/user directory that was already previously
+ supported, but is under the control of the user.
+
+ * Job timeouts (i.e. time-outs on the time a job that is
+ queued stays in the run queue) can now optionally result in
+ immediate reboot or power-off actions (JobTimeoutAction= and
+ JobTimeoutRebootArgument=). This is useful on ".target"
+ units, to limit the maximum time a target remains
+ undispatched in the run queue, and to trigger an emergency
+ operation in such a case. This is now used by default to
+ turn off the system if boot-up (as defined by everything in
+ basic.target) hangs and does not complete for at least
+ 15min. Also, if power-off or reboot hang for at least 30min
+ an immediate power-off/reboot operation is triggered. This
+ functionality is particularly useful to increase reliability
+ on embedded devices, but also on laptops which might
+ accidentally get powered on when carried in a backpack and
+ whose boot stays stuck in a hard disk encryption passphrase
+ question.
+
+ * systemd-logind can be configured to also handle lid switch
+ events even when the machine is docked or multiple displays
+ are attached (HandleLidSwitchDocked= option).
+
+ * A helper binary and a service have been added which can be
+ used to resume from hibernation in the initramfs. A
+ generator will parse the resume= option on the kernel
+ command line to trigger resume.
+
+ * A user console daemon systemd-consoled has been
+ added. Currently, it is a preview, and will so far open a
+ single terminal on each session of the user marked as
+ Desktop=systemd-console.
+
+ * Route metrics can be specified for DHCP routes added by
+ systemd-networkd.
+
+ * The SELinux context of socket-activated services can be set
+ from the information provided by the networking stack
+ (SELinuxContextFromNet= option).
+
+ * Userspace firmware loading support has been removed and
+ the minimum supported kernel version is thus bumped to 3.7.
+
+ * Timeout for udev workers has been increased from 1 to 3
+ minutes, but a warning will be printed after 1 minute to
+ help diagnose kernel modules that take a long time to load.
+
+ * Udev rules can now remove tags on devices with TAG-="foobar".
+
+ * systemd's readahead implementation has been removed. In many
+ circumstances it didn't give expected benefits even for
+ rotational disk drives and was becoming less relevant in the
+ age of SSDs. As none of the developers has been using
+ rotating media anymore, and nobody stepped up to actively
+ maintain this component of systemd it has now been removed.
+
+ * Swap units can use Options= to specify discard options.
+ Discard options specified for swaps in /etc/fstab are now
+ respected.
+
+ * Docker containers are now detected as a separate type of
+ virtualization.
+
+ * The Password Agent protocol gained support for queries where
+ the user input is shown, useful e.g. for user names.
+ systemd-ask-password gained a new --echo option to turn that
+ on.
+
+ * The default sysctl.d/ snippets will now set:
+
+ net.core.default_qdisc = fq_codel
+
+ This selects Fair Queuing Controlled Delay as the default
+ queuing discipline for network interfaces. fq_codel helps
+ fight the network bufferbloat problem. It is believed to be
+ a good default with no tuning required for most workloads.
+ Downstream distributions may override this choice. On 10Gbit
+ servers that do not do forwarding, "fq" may perform better.
+ Systems without a good clocksource should use "pfifo_fast".
+
+ * If kdbus is enabled during build a new option BusPolicy= is
+ available for service units, that allows locking all service
+ processes into a stricter bus policy, in order to limit
+ access to various bus services, or even hide most of them
+ from the service's view entirely.
+
+ * networkctl will now show the .network and .link file
+ networkd has applied to a specific interface.
+
+ * sd-login gained a new API call sd_session_get_desktop() to
+ query which desktop environment has been selected for a
+ session.
+
+ * UNIX utmp support is now compile-time optional to support
+ legacy-free systems.
+
+ * systemctl gained two new commands "add-wants" and
+ "add-requires" for pulling in units from specific targets
+ easily.
+
+ * If the word "rescue" is specified on the kernel command line
+ the system will now boot into rescue mode (aka
+ rescue.target), which was previously available only by
+ specifying "1" or "systemd.unit=rescue.target" on the kernel
+ command line. This new kernel command line option nicely
+ mirrors the already existing "emergency" kernel command line
+ option.
+
+ * New kernel command line options mount.usr=, mount.usrflags=,
+ mount.usrfstype= have been added that match root=, rootflags=,
+ rootfstype= but allow mounting a specific file system to
+ /usr.
+
+ * The $NOTIFY_SOCKET is now also passed to control processes of
+ services, not only the main process.
+
+ * This version reenables support for fsck's -l switch. This
+ means at least version v2.25 of util-linux is required for
+ operation, otherwise dead-locks on device nodes may
+ occur. Again: you need to update util-linux to at least
+ v2.25 when updating systemd to v217.
+
+ * The "multi-seat-x" tool has been removed from systemd, as
+ its functionality has been integrated into X servers 1.16,
+ and the tool is hence redundant. It is recommended to update
+ display managers invoking this tool to simply invoke X
+ directly from now on, again.
+
+ * Support for the new ALLOW_INTERACTIVE_AUTHORIZATION D-Bus
+ message flag has been added for all of systemd's PolicyKit
+ authenticated method calls has been added. In particular
+ this now allows optional interactive authorization via
+ PolicyKit for many of PID1's privileged operations such as
+ unit file enabling and disabling.
+
+ * "udevadm hwdb --update" learnt a new switch "--usr" for
+ placing the rebuilt hardware database in /usr instead of
+ /etc. When used only hardware database entries stored in
+ /usr will be used, and any user database entries in /etc are
+ ignored. This functionality is useful for vendors to ship a
+ pre-built database on systems where local configuration is
+ unnecessary or unlikely.
+
+ * Calendar time specifications in .timer units now also
+ understand the strings "semi-annually", "quarterly" and
+ "minutely" as shortcuts (in addition to the preexisting
+ "anually", "hourly", ...).
+
+ * systemd-tmpfiles will now correctly create files in /dev
+ at boot which are marked for creation only at boot. It is
+ recommended to always create static device nodes with 'c!'
+ and 'b!', so that they are created only at boot and not
+ overwritten at runtime.
+
+ * When the watchdog logic is used for a service (WatchdogSec=)
+ and the watchdog timeout is hit the service will now be
+ terminated with SIGABRT (instead of just SIGTERM), in order
+ to make sure a proper coredump and backtrace is
+ generated. This ensures that hanging services will result in
+ similar coredump/backtrace behaviour as services that hit a
+ segmentation fault.
+
+ Contributions from: Andreas Henriksson, Andrei Borzenkov,
+ Angus Gibson, Ansgar Burchardt, Ben Wolsieffer, Brandon L.
+ Black, Christian Hesse, Cristian Rodríguez, Daniel Buch,
+ Daniele Medri, Daniel Mack, Dan Williams, Dave Reisner, David
+ Herrmann, David Sommerseth, David Strauss, Emil Renner
+ Berthing, Eric Cook, Evangelos Foutras, Filipe Brandenburger,
+ Gustavo Sverzut Barbieri, Hans de Goede, Harald Hoyer, Hristo
+ Venev, Hugo Grostabussiat, Ivan Shapovalov, Jan Janssen, Jan
+ Synacek, Jonathan Liu, Juho Son, Karel Zak, Kay Sievers, Klaus
+ Purer, Koen Kooi, Lennart Poettering, Lukas Nykryn, Lukasz
+ Skalski, Łukasz Stelmach, Mantas Mikulėnas, Marcel Holtmann,
+ Marius Tessmann, Marko Myllynen, Martin Pitt, Michael Biebl,
+ Michael Marineau, Michael Olbrich, Michael Scherer, Michal
+ Schmidt, Michal Sekletar, Miroslav Lichvar, Patrik Flykt,
+ Philippe De Swert, Piotr Drąg, Rahul Sundaram, Richard
+ Weinberger, Robert Milasan, Ronny Chevalier, Ruben Kerkhof,
+ Santiago Vila, Sergey Ptashnick, Simon McVittie, Sjoerd
+ Simons, Stefan Brüns, Steven Allen, Steven Noonan, Susant
+ Sahani, Sylvain Plantefève, Thomas Hindoe Paaboel Andersen,
+ Timofey Titovets, Tobias Hunger, Tom Gundersen, Torstein
+ Husebø, Umut Tezduyar Lindskog, WaLyong Cho, Zbigniew
+ Jędrzejewski-Szmek
+
+ -- Berlin, 2014-10-28
+