nixos/compton: Rename module to picom

With a backwards compatibility alias
This commit is contained in:
adisbladis 2020-01-03 12:51:22 +00:00
parent 74f5c7f3d1
commit aec68f4e7e
No known key found for this signature in database
GPG Key ID: 110BFAD44C6249B7
2 changed files with 19 additions and 15 deletions

View File

@ -854,7 +854,7 @@
./services/x11/extra-layouts.nix ./services/x11/extra-layouts.nix
./services/x11/clight.nix ./services/x11/clight.nix
./services/x11/colord.nix ./services/x11/colord.nix
./services/x11/compton.nix ./services/x11/picom.nix
./services/x11/unclutter.nix ./services/x11/unclutter.nix
./services/x11/unclutter-xfixes.nix ./services/x11/unclutter-xfixes.nix
./services/x11/desktop-managers/default.nix ./services/x11/desktop-managers/default.nix

View File

@ -5,7 +5,7 @@ with builtins;
let let
cfg = config.services.compton; cfg = config.services.picom;
pairOf = x: with types; addCheck (listOf x) (y: length y == 2); pairOf = x: with types; addCheck (listOf x) (y: length y == 2);
@ -31,20 +31,24 @@ let
(key: value: "${toString key}=${mkValueString value};") (key: value: "${toString key}=${mkValueString value};")
v) v)
+ " }" + " }"
else abort "compton.mkValueString: unexpected type (v = ${v})"; else abort "picom.mkValueString: unexpected type (v = ${v})";
in "${escape [ sep ] k}${sep}${mkValueString v};") in "${escape [ sep ] k}${sep}${mkValueString v};")
attrs); attrs);
configFile = pkgs.writeText "compton.conf" (toConf cfg.settings); configFile = pkgs.writeText "picom.conf" (toConf cfg.settings);
in { in {
options.services.compton = { imports = [
(mkAliasOptionModule [ "services" "compton" ] [ "services" "picom" ])
];
options.services.picom = {
enable = mkOption { enable = mkOption {
type = types.bool; type = types.bool;
default = false; default = false;
description = '' description = ''
Whether of not to enable Compton as the X.org composite manager. Whether of not to enable Picom as the X.org composite manager.
''; '';
}; };
@ -85,7 +89,7 @@ in {
]; ];
description = '' description = ''
List of conditions of windows that should not be faded. List of conditions of windows that should not be faded.
See <literal>compton(1)</literal> man page for more examples. See <literal>picom(1)</literal> man page for more examples.
''; '';
}; };
@ -125,7 +129,7 @@ in {
]; ];
description = '' description = ''
List of conditions of windows that should have no shadow. List of conditions of windows that should have no shadow.
See <literal>compton(1)</literal> man page for more examples. See <literal>picom(1)</literal> man page for more examples.
''; '';
}; };
@ -192,7 +196,7 @@ in {
apply = x: apply = x:
let let
res = x != "none"; res = x != "none";
msg = "The type of services.compton.vSync has changed to bool:" msg = "The type of services.picom.vSync has changed to bool:"
+ " interpreting ${x} as ${boolToString res}"; + " interpreting ${x} as ${boolToString res}";
in in
if isBool x then x if isBool x then x
@ -222,13 +226,13 @@ in {
type = loaOf (types.either configTypes (loaOf (types.either configTypes (loaOf configTypes)))); type = loaOf (types.either configTypes (loaOf (types.either configTypes (loaOf configTypes))));
default = {}; default = {};
description = '' description = ''
Additional Compton configuration. Additional Picom configuration.
''; '';
}; };
}; };
config = mkIf cfg.enable { config = mkIf cfg.enable {
services.compton.settings = let services.picom.settings = let
# Hard conversion to float, literally lib.toInt but toFloat # Hard conversion to float, literally lib.toInt but toFloat
toFloat = str: let toFloat = str: let
may_be_float = builtins.fromJSON str; may_be_float = builtins.fromJSON str;
@ -264,8 +268,8 @@ in {
refresh-rate = mkDefault cfg.refreshRate; refresh-rate = mkDefault cfg.refreshRate;
}; };
systemd.user.services.compton = { systemd.user.services.picom = {
description = "Compton composite manager"; description = "Picom composite manager";
wantedBy = [ "graphical-session.target" ]; wantedBy = [ "graphical-session.target" ];
partOf = [ "graphical-session.target" ]; partOf = [ "graphical-session.target" ];
@ -275,13 +279,13 @@ in {
}; };
serviceConfig = { serviceConfig = {
ExecStart = "${pkgs.compton}/bin/compton --config ${configFile}"; ExecStart = "${pkgs.picom}/bin/picom --config ${configFile}";
RestartSec = 3; RestartSec = 3;
Restart = "always"; Restart = "always";
}; };
}; };
environment.systemPackages = [ pkgs.compton ]; environment.systemPackages = [ pkgs.picom ];
}; };
meta.maintainers = with lib.maintainers; [ rnhmjoj ]; meta.maintainers = with lib.maintainers; [ rnhmjoj ];