From 82535e0f8fc485db52ff976b9ef7d11096a8dfa3 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Sat, 19 Apr 2014 14:28:33 +0200 Subject: [PATCH] switch-to-configuration: Check overrides.conf for X-* options --- .../system/activation/switch-to-configuration.pl | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/nixos/modules/system/activation/switch-to-configuration.pl b/nixos/modules/system/activation/switch-to-configuration.pl index f8c1ab12ebfa..4cea0c5910c4 100644 --- a/nixos/modules/system/activation/switch-to-configuration.pl +++ b/nixos/modules/system/activation/switch-to-configuration.pl @@ -96,18 +96,19 @@ sub parseFstab { sub parseUnit { my ($filename) = @_; - parseKeyValues(read_file($filename)); + my $info = {}; + parseKeyValues($info, read_file($filename)); + parseKeyValues($info, read_file("${filename}.d/overrides.conf")) if -f "${filename}.d/overrides.conf"; + return $info; } sub parseKeyValues { - my @lines = @_; - my $info = {}; + my $info = shift; foreach my $line (@_) { # FIXME: not quite correct. $line =~ /^([^=]+)=(.*)$/ or next; $info->{$1} = $2; } - return $info; } sub boolIsTrue { @@ -362,7 +363,8 @@ while (my ($unit, $state) = each %{$activeNew}) { elsif ($state->{state} eq "auto-restart") { # A unit in auto-restart state is a failure *if* it previously failed to start my $lines = `@systemd@/bin/systemctl show '$unit'`; - my $info = parseKeyValues(split "\n", $lines); + my $info = {}; + parseKeyValues($info, split("\n", $lines)); if ($info->{ExecMainStatus} ne '0') { push @failed, $unit;