40 lines
860 B
Nix
40 lines
860 B
Nix
{ options, config, lib, pkgs, ... }:
|
|
let
|
|
this = config.my.application.gammastep;
|
|
i3 = config.my.application.i3;
|
|
in with lib; {
|
|
options = {
|
|
my.application.gammastep.enable = mkOption {
|
|
default = i3.enable;
|
|
type = with types; bool;
|
|
};
|
|
};
|
|
|
|
config = mkIf this.enable {
|
|
home-manager.users.james = {
|
|
services.gammastep = {
|
|
enable = true;
|
|
provider = "geoclue2";
|
|
tray = true;
|
|
};
|
|
};
|
|
|
|
services.geoclue2.enable = true;
|
|
|
|
systemd.user.services.gammastep = {
|
|
enable = true;
|
|
description = "Nightly color shifting";
|
|
wantedBy = [ "i3-session.target" ];
|
|
partOf = [ "graphical-session.target" ];
|
|
serviceConfig = {
|
|
ExecStart = ''
|
|
${pkgs.gammastep}/bin/gammastep
|
|
'';
|
|
RestartSec = 5;
|
|
Restart = "always";
|
|
};
|
|
};
|
|
|
|
};
|
|
}
|