Enable picom

This commit is contained in:
Paul-Henri Froidmont 2023-03-27 01:56:07 +02:00
parent 0ab0d39bb8
commit e37d668817
Signed by: phfroidmont
GPG key ID: BE948AFD7E7873BE
3 changed files with 66 additions and 1 deletions

View file

@ -36,6 +36,69 @@ in {
}; };
services = { services = {
picom = {
backend = "glx";
vSync = true;
opacityRules = [
# "100:class_g = 'Firefox'"
# Art/image programs where we need fidelity
"100:class_g = 'Gimp'"
"100:class_g = 'Inkscape'"
"100:class_g = 'aseprite'"
"100:class_g = 'krita'"
"100:class_g = 'feh'"
"100:class_g = 'mpv'"
"100:class_g = 'Rofi'"
"100:class_g = 'Peek'"
"99:_NET_WM_STATE@:32a = '_NET_WM_STATE_FULLSCREEN'"
];
shadowExclude = [
# Put shadows on notifications, the scratch popup and rofi only
"! name~='(rofi|scratch|Dunst)$'"
];
fade = true;
fadeDelta = 1;
fadeSteps = [ 1.0e-2 1.2e-2 ];
shadow = true;
shadowOffsets = [ (-10) (-10) ];
shadowOpacity = 0.22;
# activeOpacity = "1.00";
# inactiveOpacity = "0.92";
#
settings = {
blur-background-exclude = [
"window_type = 'dock'"
"window_type = 'desktop'"
"class_g = 'Rofi'"
"_GTK_FRAME_EXTENTS@:c"
];
# Unredirect all windows if a full-screen opaque window is detected, to
# maximize performance for full-screen windows. Known to cause
# flickering when redirecting/unredirecting windows.
unredir-if-possible = true;
# GLX backend: Avoid using stencil buffer, useful if you don't have a
# stencil buffer. Might cause incorrect opacity when rendering
# transparent content (but never practically happened) and may not work
# with blur-background. My tests show a 15% performance boost.
# Recommended.
glx-no-stencil = true;
# Use X Sync fence to sync clients' draw calls, to make sure all draw
# calls are finished before picom starts drawing. Needed on
# nvidia-drivers with GLX backend for some users.
xrender-sync-fence = true;
shadow-radius = 12;
# blur-background = true;
# blur-background-frame = true;
# blur-background-fixed = true;
blur-kern = "7x7box";
blur-strength = 320;
};
};
nextcloud-client.enable = true; nextcloud-client.enable = true;
udiskie.enable = true; udiskie.enable = true;
gpg-agent = { gpg-agent = {

View file

@ -14,7 +14,7 @@ in {
alignment = "left"; alignment = "left";
monitor = 0; monitor = 0;
browser = "firefox -new-tab"; browser = "firefox -new-tab";
corner_radius = 2; corner_radius = 5;
dmenu = "${pkgs.rofi}/bin/rofi -dmenu -p dunst"; dmenu = "${pkgs.rofi}/bin/rofi -dmenu -p dunst";
follow = "none"; follow = "none";
origin = "top-right"; origin = "top-right";

View file

@ -41,6 +41,8 @@ in {
}; };
}; };
services.picom.enable = true;
home = { home = {
file.".xmonad/scripts" = { file.".xmonad/scripts" = {
source = ./scripts; source = ./scripts;