upower: load config from /etc
In the process of making UPower.conf customizable (#73968), it came up that UPower doesn't load its config from /etc by default. The UPower derivation is modified to make it load its config from /etc at runtime, but still install the default config to its nix store path as before. The UPower module is modified to put the config in /etc.
This commit is contained in:
parent
aecfea098e
commit
f83a83f964
@ -220,22 +220,19 @@ in
|
||||
|
||||
systemd.packages = [ cfg.package ];
|
||||
|
||||
systemd.services.upower.environment.UPOWER_CONF_FILE_NAME = pkgs.writeTextFile {
|
||||
name = "UPower.conf";
|
||||
text = generators.toINI {} {
|
||||
UPower = {
|
||||
EnableWattsUpPro = cfg.enableWattsUpPro;
|
||||
NoPollBatteries = cfg.noPollBatteries;
|
||||
IgnoreLid = cfg.ignoreLid;
|
||||
UsePercentageForPolicy = cfg.usePercentageForPolicy;
|
||||
PercentageLow = cfg.percentageLow;
|
||||
PercentageCritical = cfg.percentageCritical;
|
||||
PercentageAction = cfg.percentageAction;
|
||||
TimeLow = cfg.timeLow;
|
||||
TimeCritical = cfg.timeCritical;
|
||||
TimeAction = cfg.timeAction;
|
||||
CriticalPowerAction = cfg.criticalPowerAction;
|
||||
};
|
||||
environment.etc."UPower/UPower.conf".text = generators.toINI {} {
|
||||
UPower = {
|
||||
EnableWattsUpPro = cfg.enableWattsUpPro;
|
||||
NoPollBatteries = cfg.noPollBatteries;
|
||||
IgnoreLid = cfg.ignoreLid;
|
||||
UsePercentageForPolicy = cfg.usePercentageForPolicy;
|
||||
PercentageLow = cfg.percentageLow;
|
||||
PercentageCritical = cfg.percentageCritical;
|
||||
PercentageAction = cfg.percentageAction;
|
||||
TimeLow = cfg.timeLow;
|
||||
TimeCritical = cfg.timeCritical;
|
||||
TimeAction = cfg.timeAction;
|
||||
CriticalPowerAction = cfg.criticalPowerAction;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
@ -52,12 +52,14 @@ stdenv.mkDerivation {
|
||||
"--with-systemdsystemunitdir=${placeholder "out"}/etc/systemd/system"
|
||||
"--with-systemdutildir=${placeholder "out"}/lib/systemd"
|
||||
"--with-udevrulesdir=${placeholder "out"}/lib/udev/rules.d"
|
||||
"--sysconfdir=/etc"
|
||||
];
|
||||
|
||||
doCheck = false; # fails with "env: './linux/integration-test': No such file or directory"
|
||||
|
||||
installFlags = [
|
||||
"historydir=$(TMPDIR)/foo"
|
||||
"sysconfdir=${placeholder "out"}/etc"
|
||||
];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
Loading…
Reference in New Issue
Block a user