summary refs log tree commit diff
path: root/nixos/release.nix
diff options
context:
space:
mode:
authoraszlig <aszlig@nix.build>2018-03-03 07:10:22 +0100
committeraszlig <aszlig@nix.build>2018-03-03 10:39:38 +0100
commit88530e02b6fa9b5429dc09972b599e7b0a3af569 (patch)
treede76c2668fbe648fe4105deaf9eca27f1bf66e84 /nixos/release.nix
parent1e53544215e903eb8692b444103f8954d2263f48 (diff)
downloadnixpkgs-88530e02b6fa9b5429dc09972b599e7b0a3af569.tar
nixpkgs-88530e02b6fa9b5429dc09972b599e7b0a3af569.tar.gz
nixpkgs-88530e02b6fa9b5429dc09972b599e7b0a3af569.tar.bz2
nixpkgs-88530e02b6fa9b5429dc09972b599e7b0a3af569.tar.lz
nixpkgs-88530e02b6fa9b5429dc09972b599e7b0a3af569.tar.xz
nixpkgs-88530e02b6fa9b5429dc09972b599e7b0a3af569.tar.zst
nixpkgs-88530e02b6fa9b5429dc09972b599e7b0a3af569.zip
systemd: Update to latest NixOS branch
Updated to the latest version of the nixos-v237 branch, which fixes two
things:

  * Make sure that systemd looks in /etc for configuration files.
    https://github.com/NixOS/systemd/pull/15
  * Fix handling of the x-initrd.mount option.
    https://github.com/NixOS/systemd/pull/16

I've added NixOS VM tests for both to ensure we won't run into
regressions. The newly added systemd test only tests for that and is by
no means exhaustive, but it's a start.

Personally I only wanted to fix the former issue, because that's the one
I've been debugging. After sending in a pull request for our systemd
fork (https://github.com/NixOS/systemd/pull/17) I got a notice from
@Mic92, that he already fixed this and his fix was even better as it's
even suitable for upstream (so we hopefully can drop that patch
someday).

The reason why the second one came in was simply because it has been
merged before the former, but I thought it would be a good idea to have
tests for that as well.

In addition I've removed the sysconfdir=$out/etc entry to make sure the
default (/etc) is used. Installing is still done to $out, because those
directories that were previously into sysconfdir now get into
factoryconfdir.

Quote from commit NixOS/systemd@98067cc806ae0d2759cdd2334f230cd8548e531:

  By default systemd should read all its configuration from /etc.
  Therefore we rely on -Dsysconfdir=/etc in meson as default value.
  Unfortunately this would also lead to installation of systemd's own
  configuration files to `/etc` whereas we are limited to /nix/store. To
  counter that this commit introduces two new configuration variables
  `factoryconfdir` and `factorypkgconfdir` to install systemd's own
  configuration into nix store again, while having executables looking
  up files in /etc.

Tested this change against all of the NixOS VM tests we have in
nixos/release.nix. Between this change and its parent no new tests were
failing (although a lot of them were flaky).

Signed-off-by: aszlig <aszlig@nix.build>
Cc: @Mic92, @tk-ecotelecom, @edolstra, @fpletz
Fixes: #35415
Fixes: #35268
Diffstat (limited to 'nixos/release.nix')
-rw-r--r--nixos/release.nix1
1 files changed, 1 insertions, 0 deletions
diff --git a/nixos/release.nix b/nixos/release.nix
index 473b11313be..2d8b6c6b826 100644
--- a/nixos/release.nix
+++ b/nixos/release.nix
@@ -355,6 +355,7 @@ in rec {
   tests.snapper = callTest tests/snapper.nix {};
   tests.statsd = callTest tests/statsd.nix {};
   tests.sudo = callTest tests/sudo.nix {};
+  tests.systemd = callTest tests/systemd.nix {};
   tests.switchTest = callTest tests/switch-test.nix {};
   tests.taskserver = callTest tests/taskserver.nix {};
   tests.tomcat = callTest tests/tomcat.nix {};