diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index 5b21aec51bdd..1abf87dfcc63 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -854,7 +854,7 @@
./services/x11/extra-layouts.nix
./services/x11/clight.nix
./services/x11/colord.nix
- ./services/x11/compton.nix
+ ./services/x11/picom.nix
./services/x11/unclutter.nix
./services/x11/unclutter-xfixes.nix
./services/x11/desktop-managers/default.nix
diff --git a/nixos/modules/services/x11/compton.nix b/nixos/modules/services/x11/picom.nix
similarity index 89%
rename from nixos/modules/services/x11/compton.nix
rename to nixos/modules/services/x11/picom.nix
index 61174672e2dd..e3bd21be73e4 100644
--- a/nixos/modules/services/x11/compton.nix
+++ b/nixos/modules/services/x11/picom.nix
@@ -5,7 +5,7 @@ with builtins;
let
- cfg = config.services.compton;
+ cfg = config.services.picom;
pairOf = x: with types; addCheck (listOf x) (y: length y == 2);
@@ -31,20 +31,24 @@ let
(key: value: "${toString key}=${mkValueString value};")
v)
+ " }"
- else abort "compton.mkValueString: unexpected type (v = ${v})";
+ else abort "picom.mkValueString: unexpected type (v = ${v})";
in "${escape [ sep ] k}${sep}${mkValueString v};")
attrs);
- configFile = pkgs.writeText "compton.conf" (toConf cfg.settings);
+ configFile = pkgs.writeText "picom.conf" (toConf cfg.settings);
in {
- options.services.compton = {
+ imports = [
+ (mkAliasOptionModule [ "services" "compton" ] [ "services" "picom" ])
+ ];
+
+ options.services.picom = {
enable = mkOption {
type = types.bool;
default = false;
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 = ''
List of conditions of windows that should not be faded.
- See compton(1) man page for more examples.
+ See picom(1) man page for more examples.
'';
};
@@ -125,7 +129,7 @@ in {
];
description = ''
List of conditions of windows that should have no shadow.
- See compton(1) man page for more examples.
+ See picom(1) man page for more examples.
'';
};
@@ -192,7 +196,7 @@ in {
apply = x:
let
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}";
in
if isBool x then x
@@ -222,13 +226,13 @@ in {
type = loaOf (types.either configTypes (loaOf (types.either configTypes (loaOf configTypes))));
default = {};
description = ''
- Additional Compton configuration.
+ Additional Picom configuration.
'';
};
};
config = mkIf cfg.enable {
- services.compton.settings = let
+ services.picom.settings = let
# Hard conversion to float, literally lib.toInt but toFloat
toFloat = str: let
may_be_float = builtins.fromJSON str;
@@ -264,8 +268,8 @@ in {
refresh-rate = mkDefault cfg.refreshRate;
};
- systemd.user.services.compton = {
- description = "Compton composite manager";
+ systemd.user.services.picom = {
+ description = "Picom composite manager";
wantedBy = [ "graphical-session.target" ];
partOf = [ "graphical-session.target" ];
@@ -275,13 +279,13 @@ in {
};
serviceConfig = {
- ExecStart = "${pkgs.compton}/bin/compton --config ${configFile}";
+ ExecStart = "${pkgs.picom}/bin/picom --config ${configFile}";
RestartSec = 3;
Restart = "always";
};
};
- environment.systemPackages = [ pkgs.compton ];
+ environment.systemPackages = [ pkgs.picom ];
};
meta.maintainers = with lib.maintainers; [ rnhmjoj ];
diff --git a/pkgs/applications/window-managers/compton/default.nix b/pkgs/applications/window-managers/picom/default.nix
similarity index 87%
rename from pkgs/applications/window-managers/compton/default.nix
rename to pkgs/applications/window-managers/picom/default.nix
index 3f7cfd4864d6..ad5f73ab1739 100644
--- a/pkgs/applications/window-managers/compton/default.nix
+++ b/pkgs/applications/window-managers/picom/default.nix
@@ -3,15 +3,16 @@
, xorgproto, libxcb ,xcbutilrenderutil, xcbutilimage, pixman, libev
, dbus, libconfig, libdrm, libGL, pcre, libX11
, libXinerama, libXext, xwininfo, libxdg_basedir }:
+
stdenv.mkDerivation rec {
- pname = "compton";
- version = "7.2";
+ pname = "picom";
+ version = "7.5";
src = fetchFromGitHub {
owner = "yshui";
- repo = "compton";
+ repo = "picom";
rev = "v${version}";
- sha256 = "1vwa5f0nifc1913diqd6cp5k1dlfyc2ijxbcdj1s37ywpx6c63c3";
+ sha256 = "1l48fxl04vkzr4r94sl37nbbw7a621rn8sxmkbdv4252i1gjxd4z";
fetchSubmodules = true;
};
@@ -43,7 +44,7 @@ stdenv.mkDerivation rec {
installFlags = [ "PREFIX=$(out)" ];
postInstall = ''
- wrapProgram $out/bin/compton-trans \
+ wrapProgram $out/bin/picom-trans \
--prefix PATH : ${lib.makeBinPath [ xwininfo ]}
'';
@@ -57,7 +58,7 @@ stdenv.mkDerivation rec {
well-defined and proper place.
'';
license = licenses.mit;
- homepage = "https://github.com/yshui/compton";
+ homepage = "https://github.com/yshui/picom";
maintainers = with maintainers; [ ertes enzime twey ];
platforms = platforms.linux;
};
diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix
index 4911f96fad62..c4bfcbc09839 100644
--- a/pkgs/top-level/aliases.nix
+++ b/pkgs/top-level/aliases.nix
@@ -71,6 +71,7 @@ mapAliases ({
clawsMail = claws-mail; # added 2016-04-29
clutter_gtk = clutter-gtk; # added 2018-02-25
conkerorWrapper = conkeror; # added 2015-01
+ compton = picom; # added 2019-12-02
compton-git = compton; # added 2019-05-20
conntrack_tools = conntrack-tools; # added 2018-05
cool-old-term = cool-retro-term; # added 2015-01-31
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index a5d568971b26..fe832c910287 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -22215,7 +22215,7 @@ in
inherit (xorg) xcompmgr;
- compton = callPackage ../applications/window-managers/compton {};
+ picom = callPackage ../applications/window-managers/picom {};
xdaliclock = callPackage ../tools/misc/xdaliclock {};