Picom: Difference between revisions
imported>Flexagoon Create Picom page |
Added an example for installing custom forks |
||
Line 9: | Line 9: | ||
<syntaxhighlight lang="nix"> | <syntaxhighlight lang="nix"> | ||
packages.picom.enable = true; | packages.picom.enable = true; | ||
</syntaxhighlight> | |||
== Installing a custom fork == | |||
Picom is known for having multiple forks, each having their own features such as animations, better performance or fixes that the most popular forks don't implement. Usually these forks are not available in [[nixpkgs]]. But with the following code you can compile and build custom versions from any source. [https://github.com/nix-community/nurl Nurl] can be used to generate fetch calls.<syntaxhighlight lang="nix"> | |||
environment.systemPackages = with pkgs; [ | |||
(picom.overrideAttrs (oldAttrs: rec { | |||
src = fetchFromGitHub { | |||
owner = "pijulius"; | |||
repo = "picom"; | |||
rev = "da21aa8ef70f9796bc8609fb495c3a1e02df93f9"; | |||
hash = "sha256-rxGWAot+6FnXKjNZkMl1uHHHEMVSxm36G3VoV1vSXLA="; | |||
}; | |||
})) | |||
]; | |||
</syntaxhighlight> | </syntaxhighlight> | ||
Revision as of 16:00, 5 April 2024
picom is a standalone compositor for Xorg, suitable for use with window managers that do not provide compositing. picom is a fork of compton, which is a fork of xcompmgr-dana, which in turn is a fork of xcompmgr.
Installation
Put the following line into your system or home-manager config to install picom and enable it's service:
services.picom.enable = true;
If you just want to install picom without automatically running it every time your system boots, use this instead:
packages.picom.enable = true;
Installing a custom fork
Picom is known for having multiple forks, each having their own features such as animations, better performance or fixes that the most popular forks don't implement. Usually these forks are not available in nixpkgs. But with the following code you can compile and build custom versions from any source. Nurl can be used to generate fetch calls.
environment.systemPackages = with pkgs; [
(picom.overrideAttrs (oldAttrs: rec {
src = fetchFromGitHub {
owner = "pijulius";
repo = "picom";
rev = "da21aa8ef70f9796bc8609fb495c3a1e02df93f9";
hash = "sha256-rxGWAot+6FnXKjNZkMl1uHHHEMVSxm36G3VoV1vSXLA=";
};
}))
];