darkman: allow no configuration

Closes #4779

Signed-off-by: Sumner Evans <me@sumnerevans.com>
This commit is contained in:
Sumner Evans 2024-03-26 14:24:49 -06:00
parent 1c2c5e4cab
commit eb869521cb
No known key found for this signature in database
GPG key ID: 8904527AB50022FD
3 changed files with 43 additions and 2 deletions

View file

@ -52,6 +52,7 @@ in {
settings = mkOption {
type = types.submodule { freeformType = yamlFormat.type; };
default = { };
example = literalExpression ''
{
lat = 52.3;
@ -96,7 +97,7 @@ in {
Documentation = "man:darkman(1)";
PartOf = [ "graphical-session.target" ];
BindsTo = [ "graphical-session.target" ];
X-Restart-Triggers =
X-Restart-Triggers = mkIf (cfg.settings != { })
[ "${config.xdg.configFile."darkman/config.yaml".source}" ];
};

View file

@ -1 +1,4 @@
{ darkman-basic-configuration = ./basic-configuration.nix; }
{
darkman-basic-configuration = ./basic-configuration.nix;
darkman-no-configuration = ./no-configuration.nix;
}

View file

@ -0,0 +1,37 @@
{
services.darkman.enable = true;
test.stubs = {
python = { };
darkman = { };
};
nmt.script = ''
serviceFile=$(normalizeStorePaths home-files/.config/systemd/user/darkman.service)
assertFileExists $serviceFile
assertFileContent $serviceFile ${
builtins.toFile "expected" ''
[Install]
WantedBy=graphical-session.target
[Service]
BusName=nl.whynothugo.darkman
ExecStart=@darkman@/bin/dummy run
Restart=on-failure
Slice=background.slice
TimeoutStopSec=15
Type=dbus
[Unit]
BindsTo=graphical-session.target
Description=Darkman system service
Documentation=man:darkman(1)
PartOf=graphical-session.target
''
}
assertPathNotExists home-files/.local/share/dark-mode.d/color-scheme-dark
assertPathNotExists home-files/.local/share/light-mode.d/color-scheme-light
'';
}