Advertisement
Dobbie03

Picom

Apr 12th, 2023
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.53 KB | None | 0 0
  1. ##PICOM CONFIG###
  2.  
  3. #========================= Corners =========================#
  4.  
  5. corner-radius = 10;
  6. rounded-corners-exclude = [
  7. # "window_type = 'normal'",
  8. # "class_g ?= 'rofi'",
  9. "class_g ?= 'polybar'",
  10. "class_g ?= 'polybar'",
  11. "class_g ?= 'eww-bar'",
  12. "class_g ?= 'Dunst'",
  13. "class_g = 'dwmsystray'",
  14. "class_g ?= 'firefox'",
  15. "class_g ?= 'LibreWolf'",
  16. "class_g ?= 'qutebrowser'",
  17. "class_g ?= 'ncmpcpp'",
  18. "class_g = 'dwm'",
  19. "class_g ?= 'tint2'"
  20. ];
  21.  
  22. round-borders = 7;
  23. round-borders-exclude = [
  24. "class_g = 'TelegramDesktop'"
  25. "class_g = 'slock'",
  26. "class_g = 'Dunst'"
  27. ];
  28.  
  29. # Specify a list of border width rules, in the format `PIXELS:PATTERN`,
  30. # Note we don't make any guarantee about possible conflicts with the
  31. # border_width set by the window manager.
  32. #
  33. # example:
  34. # round-borders-rule = [ "2:class_g = 'URxvt'" ];
  35. #
  36. round-borders-rule = [
  37. "2:class_g ?= 'URxvt'",
  38. "2:class_g ?= 'Alacritty'",
  39. "2:class_g ?= 'St'",
  40. "0:class_g ?= 'firefox'"
  41. ];
  42.  
  43. #========================= Shadows =========================#
  44.  
  45. # Enabled client-side shadows on windows. Note desktop windows
  46. # (windows with '_NET_WM_WINDOW_TYPE_DESKTOP') never get shadow,
  47. # unless explicitly requested using the wintypes option.
  48. #
  49. shadow = true;
  50.  
  51. # The blur radius for shadows, in pixels. (defaults to 12)
  52. shadow-radius = 16;
  53. #14
  54. # The opacity of shadows. (0.0 - 1.0, defaults to 0.75)
  55. shadow-opacity = 1.0;
  56.  
  57. # The left offset for shadows, in pixels. (defaults to -15)
  58. shadow-offset-x = -16;
  59. #-12
  60. # The top offset for shadows, in pixels. (defaults to -15)
  61. shadow-offset-y = -16;
  62. #-12
  63. # Red color value of shadow (0.0 - 1.0, defaults to 0).
  64. # shadow-red = 0
  65.  
  66. # Green color value of shadow (0.0 - 1.0, defaults to 0).
  67. # shadow-green = 0
  68.  
  69. # Blue color value of shadow (0.0 - 1.0, defaults to 0).
  70. # shadow-blue = 0
  71.  
  72. # Hex string color value of shadow (#000000 - #FFFFFF, defaults to #000000). This option will override options set shadow-(red/green/blue)
  73. #shadow-color = "#363636"
  74.  
  75. # Specify a list of conditions of windows that should have no shadow.
  76. #
  77. # examples:
  78. # shadow-exclude = "n:e:Notification";
  79. #
  80. # shadow-exclude = []
  81. shadow-exclude = [
  82. "! name~=''",
  83. "_GTK_FRAME_EXTENTS@:c",
  84. "_NET_WM_STATE@:32a *= '_NET_WM_STATE_MAXIMIZED'",
  85. "_NET_WM_STATE@:32a *= '_NET_WM_STATE_FULLSCREEN'",
  86. "class_g = 'Conky'",
  87. "class_g *?= 'firefox'",
  88. "class_g *?= 'firefox-nightly'",
  89. "class_g ?= 'LibreWolf'",
  90. "class_g = 'dwmsystray'",
  91. "class_g = 'slock'",
  92. "class_g = 'slock'",
  93. "class_g = 'dwm'",
  94. "_NET_WM_WINDOW_TYPE@:32a *= '_NET_WM_WINDOW_TYPE_DOCK'",
  95. ];
  96.  
  97. # Specify a X geometry that describes the region in which shadow should not
  98. # be painted in, such as a dock window region. Use
  99. # shadow-exclude-reg = "x10+0+0"
  100. # for example, if the 10 pixels on the bottom of the screen should not have shadows painted on.
  101. #
  102. # shadow-exclude-reg = ""
  103.  
  104. # Crop shadow of a window fully on a particular Xinerama screen to the screen.
  105. # xinerama-shadow-crop = false
  106.  
  107. animations=true
  108. animation-for-open-window = "zoom"
  109.  
  110. #========================= Fading =========================#
  111.  
  112. # fading = false
  113. fading = true;
  114.  
  115. ## Opacity change between steps while fading in.
  116.  
  117. # fade-in-step = 0.028
  118. fade-in-step = 0.03;
  119.  
  120. ## Opacity change between steps while fading out.
  121.  
  122. # fade-out-step = 0.03
  123. fade-out-step = 0.03;
  124.  
  125. #========================= Opacity =========================#
  126.  
  127. # Opacity of inactive windows. (0.1 - 1.0, defaults to 1.0)
  128. # inactive-opacity = 1
  129. inactive-opacity = 1;
  130.  
  131. # Opacity of window titlebars and borders. (0.1 - 1.0, disabled by default)
  132. # frame-opacity = 1.0
  133. frame-opacity = 1.0;
  134.  
  135. # Let inactive opacity set by -i override the '_NET_WM_OPACITY' values of windows.
  136. # inactive-opacity-override = true
  137. inactive-opacity-override = false;
  138.  
  139. # Default opacity for active windows. (0.0 - 1.0, defaults to 1.0)
  140. active-opacity = 1;
  141.  
  142. # Dim inactive windows. (0.0 - 1.0, defaults to 0.0)
  143. #inactive-dim = 0.1
  144.  
  145. # Specify a list of conditions of windows that should always be considered focused.
  146. # focus-exclude = []
  147. focus-exclude = [
  148. "class_g = 'Cairo-clock'",
  149. "class_g = 'dwmsystray'",
  150. "class_g = 'slock'",
  151. "class_g = 'Slock'",
  152. "class_g = 'Polybar'",
  153. "class_g = 'dwm'",
  154. "class_g = 'Bar'", # lemonbar
  155. "class_g = 'Dunst'",
  156. "class_g = 'slop'" # maim
  157. ];
  158.  
  159. # Use fixed inactive dim value, instead of adjusting according to window opacity.
  160. # inactive-dim-fixed = 1.0
  161.  
  162. # Specify a list of opacity rules, in the format `PERCENT:PATTERN`,
  163. # like `50:name *= "firefox"`. picom-trans is recommended over this.
  164. # Note we don't make any guarantee about possible conflicts with other
  165. # programs that set '_NET_WM_WINDOW_OPACITY' on frame or client windows.
  166. # example:
  167. # opacity-rule = [ "80:class_g = 'URxvt'" ];
  168. #
  169. # opacity-rule = []
  170. opacity-rule = [
  171. "100:class_g = 'Bar'", # lemonbar
  172. "100:class_g = 'slop'", # maim
  173. "100:class_g = 'XTerm'",
  174. "100:class_g = 'ncmpcpp'",
  175. "100:class_g = 'URxvt'",
  176. "100:class_g = 'slock'",
  177.  
  178. "90:class_g = 'kitty' && focused",
  179. "80:class_g = 'kitty' && !focused",
  180. "95:class_g = 'Alacritty'",
  181. "95:class_g = 'St'",
  182. "90:class_g = 'Dunst'",
  183. "100:class_g = 'Polybar'",
  184. "100:class_g = 'firefox'",
  185. "100:class_g = 'LibreWolf'",
  186. "100:class_g = 'dwmsystray'",
  187. "100:class_g = 'dwm'",
  188. "100:class_g = 'Thunderbird'",
  189. "100:class_g = 'Thunar'"
  190. ];
  191.  
  192. #========================= Blurring =========================#
  193.  
  194. blur: {
  195. method = "dual_kawase";
  196. strength = 10;
  197. background = false;
  198. background-frame = false;
  199. background-fixed = false;
  200. kern = "3x3box";
  201. }
  202.  
  203. # Exclude conditions for background blur.
  204. blur-background-exclude = [
  205. #"window_type = 'dock'",
  206. "window_type = 'desktop'",
  207. "class_g = 'Plank'",
  208. "class_g = 'firefox'",
  209. "class_g = 'LibreWolf'",
  210. "class_g = 'dwmsystray'",
  211. "class_g = 'Polybar'",
  212. "class_g = 'dwm'",
  213. "class_g = 'slock'",
  214. "class_g = 'Slock'",
  215. "class_g = 'slop'",
  216. "_GTK_FRAME_EXTENTS@:c"
  217. ];
  218.  
  219. #========================= General Settings =========================#
  220.  
  221. # Daemonize process. Fork to background after initialization. Causes issues with certain (badly-written) drivers.
  222. # daemon = false
  223.  
  224. # Specify the backend to use: `xrender`, `glx`, or `xr_glx_hybrid`.
  225. # `xrender` is the default one.
  226. #
  227. #experimental-backends = true;
  228. backend = "glx";
  229.  
  230. # Enable/disable VSync.
  231. # vsync = false
  232. vsync = true;
  233.  
  234. # Enable remote control via D-Bus. See the *D-BUS API* section below for more details.
  235. # dbus = false
  236.  
  237. # Try to detect WM windows (a non-override-redirect window with no
  238. # child that has 'WM_STATE') and mark them as active.
  239. #
  240. # mark-wmwin-focused = false
  241. mark-wmwin-focused = true;
  242.  
  243. # Mark override-redirect windows that doesn't have a child window with 'WM_STATE' focused.
  244. # mark-ovredir-focused = false
  245. mark-ovredir-focused = true;
  246.  
  247. # Try to detect windows with rounded corners and don't consider them
  248. # shaped windows. The accuracy is not very high, unfortunately.
  249. #
  250. # detect-rounded-corners = false
  251. detect-rounded-corners = true;
  252.  
  253. # Detect '_NET_WM_OPACITY' on client windows, useful for window managers
  254. # not passing '_NET_WM_OPACITY' of client windows to frame windows.
  255. #
  256. # detect-client-opacity = false
  257. detect-client-opacity = true;
  258.  
  259. # Specify refresh rate of the screen. If not specified or 0, picom will
  260. # try detecting this with X RandR extension.
  261. #
  262. refresh-rate = 60
  263. #refresh-rate = 0;
  264.  
  265. # Use EWMH '_NET_ACTIVE_WINDOW' to determine currently focused window,
  266. # rather than listening to 'FocusIn'/'FocusOut' event. Might have more accuracy,
  267. # provided that the WM supports it.
  268. #
  269. # use-ewmh-active-win = false
  270.  
  271. # Unredirect all windows if a full-screen opaque window is detected,
  272. # to maximize performance for full-screen windows. Known to cause flickering
  273. # when redirecting/unredirecting windows.
  274. #
  275. unredir-if-possible = true
  276.  
  277. # Delay before unredirecting the window, in milliseconds. Defaults to 0.
  278. # unredir-if-possible-delay = 0
  279.  
  280. # Conditions of windows that shouldn't be considered full-screen for unredirecting screen.
  281. # unredir-if-possible-exclude = []
  282.  
  283. # Use 'WM_TRANSIENT_FOR' to group windows, and consider windows
  284. # in the same group focused at the same time.
  285. #
  286. # detect-transient = false
  287. detect-transient = true;
  288.  
  289. # Use 'WM_CLIENT_LEADER' to group windows, and consider windows in the same
  290. # group focused at the same time. 'WM_TRANSIENT_FOR' has higher priority if
  291. # detect-transient is enabled, too.
  292. #
  293. # detect-client-leader = false
  294. detect-client-leader = true;
  295.  
  296. # GLX backend: Avoid using stencil buffer, useful if you don't have a stencil buffer.
  297. # Might cause incorrect opacity when rendering transparent content (but never
  298. # practically happened) and may not work with blur-background.
  299. # My tests show a 15% performance boost. Recommended.
  300. #
  301. glx-no-stencil = true;
  302.  
  303. # Disable the use of damage information.
  304. # This cause the whole screen to be redrawn everytime, instead of the part of the screen
  305. # has actually changed. Potentially degrades the performance, but might fix some artifacts.
  306. # The opposing option is use-damage
  307. #
  308. # no-use-damage = false
  309. use-damage = true;
  310.  
  311. log-level = "info";
  312.  
  313. wintypes:
  314. {
  315. tooltip = { fade=true; shadow=true; opacity=0.95; focus=true; full-shadow=false; };
  316. popup_menu = { opacity=1.0; }
  317. dropdown_menu = { opacity=1.0; }
  318. utility = { shadow=false; opacity=1.0; }
  319. };
  320.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement