42 lines
895 B
Nix
42 lines
895 B
Nix
|
{ options, config, lib, pkgs, ... }:
|
||
|
let
|
||
|
cfg = config.this.application.gammastep;
|
||
|
sway = config.this.application.sway;
|
||
|
in with lib; {
|
||
|
options = {
|
||
|
this.application.gammastep = {
|
||
|
enable = mkOption {
|
||
|
default = sway.enable;
|
||
|
type = with types; bool;
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
|
||
|
config = mkIf cfg.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 = [ "sway-session.target" ];
|
||
|
partOf = [ "graphical-session.target" ];
|
||
|
serviceConfig = {
|
||
|
ExecStart = ''
|
||
|
${pkgs.gammastep}/bin/gammastep
|
||
|
'';
|
||
|
RestartSec = 5;
|
||
|
Restart = "always";
|
||
|
};
|
||
|
};
|
||
|
|
||
|
};
|
||
|
}
|