diff options
authorPedro Alvarez <>2015-01-29 15:16:19 +0000
committerPedro Alvarez <>2015-02-12 16:09:13 +0000
commiteec6065166aa7439135475eea3fd94a8b1edc3ef (patch)
parent1319309d3ff4eb85cb0e7e6cb178cb56ff116524 (diff)
Upgrade systemd to v218 to get bug fixes
Trove-setup uses `systemctl enable` and it wasn't working for template units (in this case the minion services). With this upgrade we fix the Trove deployments. Also some users have found some problems with the 'systemd-journald' service, which starts logging before the system mounts the '/var' subvolume. This upgrade is supposed to fix that as well. Systemd v218 had an important bug: ~ # ssh localhost Connection closed by ::1 Which was dropping this error in the systemd journal: Assertion 'canonical' failed at src/nss-myhostname/nss-myhostname.c:204, function fill_in_hostent(). Aborting. This bug was fixed upstream in the commit 3fdcecc87eb381ef300719e419d5863dd8a64a97 and it's also been included in this upgrade.
2 files changed, 30 insertions, 2 deletions
diff --git a/strata/foundation.morph b/strata/foundation.morph
index 245f5c2c..ad4b6e11 100644
--- a/strata/foundation.morph
+++ b/strata/foundation.morph
@@ -82,8 +82,8 @@ chunks:
- name: systemd
morph: strata/foundation/systemd.morph
repo: upstream:systemd
- ref: 941a643569dc6b53d0b334276d2a3cc0ed159e88
- unpetrify-ref: v217
+ ref: df0082ede6d0ca4db6773747eaf1c36d97458744
+ unpetrify-ref: baserock/v218-with-canonical-hostname-fix
- dbus-pre
- gobject-introspection
diff --git a/strata/foundation/systemd.morph~ b/strata/foundation/systemd.morph~
new file mode 100644
index 00000000..1ee23cb8
--- /dev/null
+++ b/strata/foundation/systemd.morph~
@@ -0,0 +1,28 @@
+name: systemd
+kind: chunk
+max-jobs: 1
+build-system: autotools
+- sh
+- ./configure --prefix="$PREFIX" --enable-xz --disable-manpages --sysconfdir=/etc
+ --localstatedir=/var --libdir="$PREFIX/lib" --libexecdir="$PREFIX/libexec" --with-rootprefix=
+ --with-rootlibdir=/lib
+- make DESTDIR="$DESTDIR" install
+- mkdir -p "$DESTDIR"/sbin
+- ln -s /lib/systemd/systemd "$DESTDIR"/sbin/init
+- for f in telinit runlevel shutdown poweroff reboot halt; do ln -s /bin/systemctl
+ "$DESTDIR/sbin/$f"; done
+- sed -e 's|@sushell@|/bin/sh|g' units/ >"$DESTDIR/etc/systemd/system/debug-shell.service"
+- sed -r -e '/Options=/s/,?strictatime//' "$DESTDIR/lib/systemd/system/tmp.mount"
+ >"$DESTDIR/etc/systemd/system/tmp.mount"
+- touch "$DESTDIR/etc/machine-id"
+- |
+ cat > "$DESTDIR/etc/systemd/network/" << "EOF"
+ [Match]
+ Name=en*
+ [Network]
+ DHCP=yes