aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Emacs/.config/emacs/.config/yasnippet/snippets/c++-mode/begin4
-rw-r--r--Emacs/.config/emacs/.config/yasnippet/snippets/c++-mode/bend3
-rw-r--r--Emacs/.config/emacs/.config/yasnippet/snippets/c++-mode/end5
-rw-r--r--Emacs/.config/emacs/.var/gamegrid-user-score/tetris-scores7
-rw-r--r--Emacs/.config/emacs/config.org63
-rw-r--r--Emacs/.config/emacs/init.el6
-rw-r--r--NeoVim/.config/nvim/lazy-lock.json4
-rwxr-xr-xScripts/.local/scripts/localstream64
-rw-r--r--Shell/.zshrc2
-rw-r--r--XServer/.xinitrc4
-rw-r--r--picom/.config/picom/picom.conf317
11 files changed, 418 insertions, 61 deletions
diff --git a/Emacs/.config/emacs/.config/yasnippet/snippets/c++-mode/begin b/Emacs/.config/emacs/.config/yasnippet/snippets/c++-mode/begin
new file mode 100644
index 0000000..e0b6587
--- /dev/null
+++ b/Emacs/.config/emacs/.config/yasnippet/snippets/c++-mode/begin
@@ -0,0 +1,4 @@
+# key: beg
+# name: beg
+# --
+std::begin($0) \ No newline at end of file
diff --git a/Emacs/.config/emacs/.config/yasnippet/snippets/c++-mode/bend b/Emacs/.config/emacs/.config/yasnippet/snippets/c++-mode/bend
index e5cc387..81d3711 100644
--- a/Emacs/.config/emacs/.config/yasnippet/snippets/c++-mode/bend
+++ b/Emacs/.config/emacs/.config/yasnippet/snippets/c++-mode/bend
@@ -1,6 +1,5 @@
# -*- mode: snippet -*-
# name: v.begin(), v.end()
# key: bend
-# uuid: beginend
# --
-${1:a}.begin(), $1.end() \ No newline at end of file
+std::begin(${1:a}), std::end($1) \ No newline at end of file
diff --git a/Emacs/.config/emacs/.config/yasnippet/snippets/c++-mode/end b/Emacs/.config/emacs/.config/yasnippet/snippets/c++-mode/end
new file mode 100644
index 0000000..1892a9e
--- /dev/null
+++ b/Emacs/.config/emacs/.config/yasnippet/snippets/c++-mode/end
@@ -0,0 +1,5 @@
+# -*- mode: snippet -*-
+# name: end
+# key: end
+# --
+std::end($0) \ No newline at end of file
diff --git a/Emacs/.config/emacs/.var/gamegrid-user-score/tetris-scores b/Emacs/.config/emacs/.var/gamegrid-user-score/tetris-scores
index 9184e6e..809a260 100644
--- a/Emacs/.config/emacs/.var/gamegrid-user-score/tetris-scores
+++ b/Emacs/.config/emacs/.var/gamegrid-user-score/tetris-scores
@@ -10,8 +10,9 @@
00204 Wed Dec 28 14:50:42 2022 Aryadev Chavali <aryadev@aryadevchavali.com>
00187 Thu Jan 12 01:30:09 2023 Aryadev Chavali <aryadev@aryadevchavali.com>
00172 Mon Jan 9 12:59:13 2023 Aryadev Chavali <aryadev@aryadevchavali.com>
-00166 Mon May 6 02:40:23 2024 Aryadev Chavali <aryadev@aryadevchavali.com>
00166 Fri Aug 16 11:05:23 2024 Aryadev Chavali <aryadev@aryadevchavali.com>
+00166 Mon May 6 02:40:23 2024 Aryadev Chavali <aryadev@aryadevchavali.com>
+00154 Sat Jul 26 18:43:42 2025 Aryadev Chavali <aryadev@aryadevchavali.com>
00120 Thu Aug 29 18:45:32 2024 Aryadev Chavali <aryadev@aryadevchavali.com>
00114 Fri Jul 21 11:58:31 2023 Aryadev Chavali <aryadev@aryadevchavali.com>
00096 Sat Dec 3 16:21:40 2022 Aryadev Chavali <aryadev@aryadevchavali.com>
@@ -27,12 +28,12 @@
00048 Sun May 5 19:34:16 2024 Aryadev Chavali <aryadev@aryadevchavali.com>
00046 Wed Oct 12 11:27:19 2022 Aryadev Chavali <aryadev@aryadevchavali.com>
00042 Tue Aug 1 19:58:49 2023 Aryadev Chavali <aryadev@aryadevchavali.com>
-00038 Fri Oct 14 13:05:44 2022 Aryadev Chavali <aryadev@aryadevchavali.com>
00038 Tue Oct 11 16:47:44 2022 Aryadev Chavali <aryadev@aryadevchavali.com>
+00038 Fri Oct 14 13:05:44 2022 Aryadev Chavali <aryadev@aryadevchavali.com>
00037 Thu Aug 17 18:11:59 2023 Aryadev Chavali <aryadev@aryadevchavali.com>
00027 Thu Jan 12 01:14:32 2023 Aryadev Chavali <aryadev@aryadevchavali.com>
00024 Thu Jan 12 01:14:54 2023 Aryadev Chavali <aryadev@aryadevchavali.com>
00012 Tue Jan 17 13:58:01 2023 Aryadev Chavali <aryadev@aryadevchavali.com>
-00006 Mon Jan 9 11:04:43 2023 Aryadev Chavali <aryadev@aryadevchavali.com>
00006 Thu Jun 22 23:16:42 2023 Aryadev Chavali <aryadev@aryadevchavali.com>
+00006 Mon Jan 9 11:04:43 2023 Aryadev Chavali <aryadev@aryadevchavali.com>
00000 Fri Dec 2 13:58:02 2022 Aryadev Chavali <aryadev@aryadevchavali.com>
diff --git a/Emacs/.config/emacs/config.org b/Emacs/.config/emacs/config.org
index 9bf5a92..dcae03c 100644
--- a/Emacs/.config/emacs/config.org
+++ b/Emacs/.config/emacs/config.org
@@ -270,7 +270,8 @@ forcefully adjust the font size.
(_ 120))
(pcase (display-pixel-width) ; get a multiplier based on resolution
((pred (>= 1920)) 0.9)
- ((pred (>= 2560)) 1.24)))
+ ((pred (>= 2560)) 1.24)
+ (_ 1.05)))
floor
(progn
(set-face-attribute 'default nil :height it)
@@ -1019,8 +1020,9 @@ fundamental mode and call it a day.
(with-current-buffer "*scratch*"
(goto-char (point-max))
(thread-last
- (emacs-init-time)
- (format "Emacs v%s - %s\n" emacs-version)
+ (straight-recipes-list)
+ length
+ (format "Emacs v%s - %s - %s packages\n" emacs-version (emacs-init-time))
(insert))))))
#+end_src
** Cursor and the highlighted line
@@ -1515,6 +1517,7 @@ system.
(setq-default
smtpmail-smtp-server "mail.aryadevchavali.com"
smtpmail-smtp-user "aryadev"
+ smtpmail-servers-requiring-authorization "mail.aryadevchavali.com"
smtpmail-smtp-service 587
smtpmail-stream-type 'starttls
send-mail-function #'smtpmail-send-it
@@ -2353,13 +2356,11 @@ playing.
:general
(app-leader
"e" #'empv-hydra/body)
+
:init
- (setq empv-audio-dir (list (expand-file-name "~/Media/audio")
- ;; "/sshx:oldboy:/media/hdd/content/Audio"
- )
+ (setq empv-audio-dir (list (expand-file-name "~/Media/audio"))
empv-video-dir (list (expand-file-name "~/Media/videos")
- ;; "/sshx:oldboy:/media/hdd/content/Videos"
- )
+ (expand-file-name "~/Media/anime"))
empv-playlist-dir (expand-file-name "~/Media/playlists")
empv-audio-file-extensions (list "mp3" "ogg" "wav" "m4a" "flac" "aac" "opus")
empv-video-file-extensions (list "mkv" "mp4" "avi" "mov" "webm")
@@ -3113,7 +3114,7 @@ a very tidy way to manage your time.
org-agenda-skip-scheduled-if-done t
org-agenda-skip-deadline-if-done t
org-agenda-start-with-entry-text-mode nil
- org-agenda-span 'day)
+ org-agenda-span 'week)
:config
(evil-set-initial-state 'org-agenda-mode 'normal)
:general
@@ -3438,8 +3439,7 @@ on your machine.
(define-minor-mode clang-format-mode
"On save formats the current buffer via clang-format."
:lighter nil
- (let ((save-func (proc-int
- (clang-format-buffer))))
+ (let ((save-func (proc-int (clang-format-buffer))))
(if clang-format-mode
(add-hook 'before-save-hook save-func nil t)
(remove-hook 'before-save-hook save-func t))))
@@ -4233,11 +4233,44 @@ effectively.
:init
(setq tab-bar-close-button-show nil
tab-bar-format '(tab-bar-format-history
- tab-bar-format-tabs tab-bar-separator)
+ tab-bar-format-tabs
+ tab-bar-separator)
tab-bar-show 1
tab-bar-auto-width t
- tab-bar-auto-width-max '((100) 20)
- tab-bar-auto-width-min '((20) 2))
+ tab-bar-auto-width-max '((150) 20)
+ tab-bar-auto-width-min '((20) 2)
+ tab-bar-tab-name-function #'+tab-bar/name-func)
+
+ (defvar +tab-bar/buffer-name-max-len 7)
+ (defvar +tab-bar/project-name-max-len 10)
+
+ (defun +tab-bar/--abbreviate-project-name ()
+ (if-let* ((project (project-current))
+ (name (project-name project)))
+ (if (> (length name) +tab-bar/project-name-max-len)
+ (concat (substring name 0 +tab-bar/project-name-max-len) "<...>")
+ name)
+ ""))
+
+ (defun +tab-bar/--abbreviate-buffer-name ()
+ (let* ((buffer-name (buffer-name (window-buffer (or (minibuffer-selected-window)
+ (and (window-minibuffer-p)
+ (get-mru-window))))))
+ (ext (string-match "\\.[[:word:]]+$" buffer-name)))
+ (if (> (or ext (length buffer-name)) +tab-bar/buffer-name-max-len)
+ (thread-last
+ (if ext
+ (substring buffer-name ext)
+ "")
+ (concat (substring buffer-name 0 +tab-bar/buffer-name-max-len) "<...>"))
+ buffer-name)))
+
+ (defun +tab-bar/name-func ()
+ (if (null (project-current))
+ (+tab-bar/--abbreviate-buffer-name)
+ (format "%s[%s]"
+ (+tab-bar/--abbreviate-project-name)
+ (+tab-bar/--abbreviate-buffer-name))))
:general
(tab-leader
"R" #'tab-rename
@@ -4294,6 +4327,8 @@ Recentf provides a method of keeping track of recently opened files.
#+begin_src emacs-lisp
(use-package recentf
:defer t
+ :init
+ (setq recentf-auto-cleanup 'never)
:hook (after-init-hook . recentf-mode)
:general
(file-leader
diff --git a/Emacs/.config/emacs/init.el b/Emacs/.config/emacs/init.el
index 2bae99c..9bffb17 100644
--- a/Emacs/.config/emacs/init.el
+++ b/Emacs/.config/emacs/init.el
@@ -89,14 +89,16 @@
(require 'eshell)
(require 'eglot))
+(require 'gnutls)
+(add-to-list 'gnutls-trustfiles "/usr/local/etc/openssl/cert.pem")
+
(setq gc-cons-threshold (* 100 1024 1024) ; ~100MiB
gc-cons-percentage 0.1 ; 10% of heap allocation => collect garbage
read-process-output-max (* 5 1024 1024) ; ~5MiB
;; FIXME: Problem with memory-report after running Emacs for a
;; bit, causes a Lisp nesting error, so I just set it up really
;; high so it doesn't reach that.
- max-lisp-eval-depth 999999
- garbage-collection-messages t)
+ max-lisp-eval-depth 999999)
(provide 'init)
;;; init.el ends here
diff --git a/NeoVim/.config/nvim/lazy-lock.json b/NeoVim/.config/nvim/lazy-lock.json
index cdf93ab..64da746 100644
--- a/NeoVim/.config/nvim/lazy-lock.json
+++ b/NeoVim/.config/nvim/lazy-lock.json
@@ -1,7 +1,7 @@
{
"NeoSolarized": { "branch": "master", "commit": "b94b1a9ad51e2de015266f10fdc6e142f97bd617" },
"lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" },
- "plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" },
+ "plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" },
"telescope.nvim": { "branch": "master", "commit": "b4da76be54691e854d3e0e02c36b0245f945c2c7" },
- "vim-tmux-navigator": { "branch": "master", "commit": "412c474e97468e7934b9c217064025ea7a69e05e" }
+ "vim-tmux-navigator": { "branch": "master", "commit": "c45243dc1f32ac6bcf6068e5300f3b2b237e576a" }
}
diff --git a/Scripts/.local/scripts/localstream b/Scripts/.local/scripts/localstream
index 1250763..815d72e 100755
--- a/Scripts/.local/scripts/localstream
+++ b/Scripts/.local/scripts/localstream
@@ -1,35 +1,29 @@
-#!/usr/bin/env sh
-
-usage() {
- printf "Usage: localstream [-f|-p]
-\t-f: Lookup video files
-\t-p: Lookup playlists\n";
-}
-
-if [ $# -eq 0 ]
-then
- usage && exit 1;
-fi
-
-case $1 in
- "-f")
- filtering="-name '*.mp4' -or -name '*.mkv' -or -name '*.webm' -or -name '*.opus'";
- selection="\(.*\)";;
- "-p")
- filtering="-name 'playlist'";
- selection="\(.*\)\/playlist";
- ending="/playlist";;
- *)
- usage && exit 1;;
-esac
-
-choice=$(ssh oreo@oldboy "find /media/hdd/content/ -type 'f' $filtering" |\
- sed "s/\/media\/hdd\/content\/$selection/\1/g" |\
- dmenu -i -l 5 -p "Choose file: ")
-
-if [ $1 = "-f" ]
-then
- mpv "sftp://oldboy:/media/hdd/content/$choice$ending"
-else
- mpv --playlist="sftp://oldboy:/media/hdd/content/$choice$ending"
-fi
+#!/usr/bin/env python3
+
+from subprocess import run, PIPE
+
+DIRECTORIES = [{"type": "ssh", "host": "oreo@oldboy", "directory": "/media/hdd/content"},
+ {"type": "local", "directory": "/home/oreo/Media"}]
+
+def make_filters(extensions):
+ s = []
+ for i, ext in enumerate(extensions):
+ s.append("-iname")
+ s.append(f"\"{ext}\"")
+ if i < len(extensions) - 1:
+ s.append("-or")
+ return s
+
+def get_local_files(directory, extensions):
+ return ["find", directory, "-type", "f"] + make_filters(extensions)
+
+def get_remote_files(host, directory, extensions):
+ return ["ssh", host, f"find {directory} -type 'f' {' '.join(make_filters(extensions))}"]
+
+def run_command(cmd):
+ res = run(cmd, stdout=PIPE, stderr=PIPE, text=True)
+ return res.stdout.split("\n"), res.returncode
+
+choices = dict()
+
+'*.mp4', '*.mkv', '*.webm', '*.opus'
diff --git a/Shell/.zshrc b/Shell/.zshrc
index f935115..6f78ee3 100644
--- a/Shell/.zshrc
+++ b/Shell/.zshrc
@@ -35,7 +35,7 @@ autoload -U compinit
setopt autocd
export ZSH_THEME="af-magic"
PS1="%B%F{4}[%(4~|...|)%3~]
-%F{white}%F{0}%m%b%f> %k"
+%F{white}%F{2}%m%b%f> %k"
setopt BANG_HIST
setopt EXTENDED_HISTORY
diff --git a/XServer/.xinitrc b/XServer/.xinitrc
index 6fb30d1..b1c03b2 100644
--- a/XServer/.xinitrc
+++ b/XServer/.xinitrc
@@ -7,8 +7,8 @@ xset s 1800;
xrandr --output HDMI1 --auto --mode 1920x1080 --left-of eDP1;
xrandr --output eDP1 --auto --mode 1920x1080;
-xrandr --output HDMI-0 --auto --mode 1920x1080 --right-of HDMI-1-1;
-xrandr --output HDMI-1-1 --auto --mode 1920x1080 --left-of HDMI-0;
+xrandr --output HDMI-1 --auto --mode 1920x1080 --left-of HDMI-1-0;
+xrandr --output HDMI-1-0 --auto --mode 1920x1080 --right-of HDMI-1;
sxhkd &
dunst &
diff --git a/picom/.config/picom/picom.conf b/picom/.config/picom/picom.conf
new file mode 100644
index 0000000..1741e69
--- /dev/null
+++ b/picom/.config/picom/picom.conf
@@ -0,0 +1,317 @@
+#################################
+# Shadows #
+#################################
+
+# Enabled client-side shadows on windows. Note desktop windows
+# (windows with '_NET_WM_WINDOW_TYPE_DESKTOP') never get shadow,
+# unless explicitly requested using the wintypes option.
+#
+# Can be set per-window using rules.
+#
+# Default: false
+shadow = true;
+
+# The blur radius for shadows, in pixels.
+#
+# Default: 12
+shadow-radius = 7;
+
+# The opacity of shadows.
+#
+# Range: 0.0 - 1.0
+# Default: 0.75
+# shadow-opacity = .75
+
+# The left offset for shadows, in pixels.
+#
+# Default: -15
+shadow-offset-x = -7;
+
+# The top offset for shadows, in pixels.
+#
+# Default: -15
+shadow-offset-y = -7;
+
+# Hex string color value of shadow. Formatted like "#RRGGBB", e.g. "#C0FFEE".
+#
+# Default: #000000
+# shadow-color = "#000000"
+
+# Crop shadow of a window fully on a particular monitor to that monitor. This is
+# currently implemented using the X RandR extension.
+#
+# Default: false
+# crop-shadow-to-monitor = false
+
+
+#################################
+# Fading #
+#################################
+
+# Fade windows in/out when opening/closing and when opacity changes,
+# unless no-fading-openclose is used. Can be set per-window using rules.
+#
+# Default: false
+fading = true;
+
+# Opacity change between steps while fading in. (0.01 - 1.0, defaults to 0.028)
+fade-in-step = 0.03;
+
+# Opacity change between steps while fading out. (0.01 - 1.0, defaults to 0.03)
+fade-out-step = 0.03;
+
+# The time between steps in fade step, in milliseconds. (> 0, defaults to 10)
+# fade-delta = 10
+
+# Do not fade on window open/close.
+# no-fading-openclose = false
+
+# Do not fade destroyed ARGB windows with WM frame. Workaround of bugs in Openbox, Fluxbox, etc.
+# no-fading-destroyed-argb = false
+
+
+#################################
+# Transparency / Opacity #
+#################################
+
+# Opacity of window titlebars and borders.
+#
+# Range: 0.1 - 1.0
+# Default: 1.0 (disabled)
+frame-opacity = 0.9;
+
+# Use fixed inactive dim value, instead of adjusting according to window opacity.
+#
+# Default: false
+# inactive-dim-fixed = true
+
+#################################
+# Corners #
+#################################
+
+# Sets the radius of rounded window corners. When > 0, the compositor will
+# round the corners of windows. Does not interact well with
+# `transparent-clipping`.
+#
+# Default: 0 (disabled)
+corner-radius = 0
+
+#################################
+# Blur #
+#################################
+
+# Parameters for background blurring, see BLUR section in the man page for more information.
+# blur-method =
+# blur-size = 12
+#
+# blur-deviation = false
+#
+# blur-strength = 5
+
+# Blur background of semi-transparent / ARGB windows.
+# Can be set per-window using rules.
+#
+# Default: false
+# blur-background = false
+
+# Blur background of windows when the window frame is not opaque.
+# Implies:
+# blur-background
+#
+# Default: false
+# blur-background-frame = false
+
+# Use fixed blur strength rather than adjusting according to window opacity.
+#
+# Default: false
+# blur-background-fixed = false
+
+
+# Specify the blur convolution kernel, with the following format:
+# example:
+# blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1";
+# Can also be a pre-defined kernel, see the man page.
+#
+# Default: ""
+blur-kern = "3x3box";
+
+#################################
+# General Settings #
+#################################
+
+# Enable remote control via D-Bus. See the man page for more details.
+#
+# Default: false
+# dbus = true
+
+# Daemonize process. Fork to background after initialization. Causes issues with certain (badly-written) drivers.
+# daemon = false
+
+# Specify the backend to use: `xrender`, `glx`, or `egl`.
+#
+# Default: "xrender"
+backend = "xrender"
+
+# Use higher precision during rendering, and apply dither when presenting the
+# rendered screen. Reduces banding artifacts, but may cause performance
+# degradation. Only works with OpenGL.
+dithered-present = false;
+
+# Enable/disable VSync.
+#
+# Default: false
+vsync = true;
+
+# Try to detect windows with rounded corners and don't consider them
+# shaped windows. The accuracy is not very high, unfortunately.
+#
+# Has nothing to do with `corner-radius`.
+#
+# Default: false
+detect-rounded-corners = true;
+
+# Detect '_NET_WM_WINDOW_OPACITY' on client windows, useful for window managers
+# not passing '_NET_WM_WINDOW_OPACITY' of client windows to frame windows.
+#
+# Default: false
+detect-client-opacity = true;
+
+# Use EWMH '_NET_ACTIVE_WINDOW' to determine currently focused window,
+# rather than listening to 'FocusIn'/'FocusOut' event. May be more accurate,
+# provided that the WM supports it.
+#
+# Default: false
+# use-ewmh-active-win = false
+
+# 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.
+#
+# Default: false
+# unredir-if-possible = false
+
+# Delay before unredirecting the window, in milliseconds.
+#
+# Default: 0.
+# unredir-if-possible-delay = 0
+
+# Use 'WM_TRANSIENT_FOR' to group windows, and consider windows
+# in the same group focused at the same time.
+#
+# Default: false
+detect-transient = true;
+
+# Use 'WM_CLIENT_LEADER' to group windows, and consider windows in the same
+# group focused at the same time. This usually means windows from the same application
+# will be considered focused or unfocused at the same time.
+# 'WM_TRANSIENT_FOR' has higher priority if detect-transient is enabled, too.
+#
+# Default: false
+# detect-client-leader = false
+
+# Use of damage information for rendering. This cause the only the part of the
+# screen that has actually changed to be redrawn, instead of the whole screen
+# every time. Should improve performance.
+#
+# Default: false
+use-damage = true;
+
+# Use X Sync fence to wait for the completion of rendering of other windows,
+# before using their content to render the current screen.
+#
+# Required for explicit sync drivers, such as nvidia.
+#
+# Default: false
+# xrender-sync-fence = false
+
+# GLX backend: Use specified GLSL fragment shader for rendering window
+# contents. Read the man page for a detailed explanation of the interface.
+#
+# Can be set per-window using rules.
+#
+# window-shader-fg = "default"
+
+# Force all windows to be painted with blending. Useful if you
+# have a `window-shader-fg` that could turn opaque pixels transparent.
+#
+# Default: false
+# force-win-blend = false
+
+# Do not use EWMH to detect fullscreen windows.
+# Reverts to checking if a window is fullscreen based only on its size and coordinates.
+#
+# Default: false
+# no-ewmh-fullscreen = false
+
+# Dimming bright windows so their brightness doesn't exceed this set value.
+# Brightness of a window is estimated by averaging all pixels in the window,
+# so this could comes with a performance hit.
+# Setting this to 1.0 disables this behaviour. Requires --use-damage to be disabled.
+#
+# Default: 1.0 (disabled)
+# max-brightness = 1.0
+
+# Make transparent windows clip other windows like non-transparent windows do,
+# instead of blending on top of them. e.g. placing a transparent window on top
+# of another window will cut a "hole" in that window, and show the desktop background
+# underneath.
+#
+# Default: false
+# transparent-clipping = false
+
+# Set the log level. Possible values are:
+# "trace", "debug", "info", "warn", "error"
+# in increasing level of importance. Case insensitive.
+# If using the "TRACE" log level, it's better to log into a file
+# using *--log-file*, since it can generate a huge stream of logs.
+#
+# Default: "warn"
+# log-level = "warn";
+
+# Set the log file.
+# If *--log-file* is never specified, logs will be written to stderr.
+# Otherwise, logs will to written to the given file, though some of the early
+# logs might still be written to the stderr.
+# When setting this option from the config file, it is recommended to use an absolute path.
+#
+# log-file = "/path/to/your/log/file"
+
+# Write process ID to a file.
+# write-pid-path = "/path/to/your/log/file"
+
+# Rule-based per-window options.
+#
+# See WINDOW RULES section in the man page for how these work.
+rules: ({
+ match = "window_type = 'tooltip'";
+ fade = false;
+ shadow = true;
+ opacity = 0.75;
+ full-shadow = false;
+}, {
+ match = "window_type = 'dock' || "
+ "window_type = 'desktop' || "
+ "_GTK_FRAME_EXTENTS@";
+ blur-background = false;
+}, {
+ match = "window_type != 'dock'";
+ # shader = "my_shader.frag";
+}, {
+ match = "window_type = 'dock' || "
+ "window_type = 'desktop'";
+ corner-radius = 0;
+}, {
+ match = "name = 'Notification' || "
+ "class_g = 'Conky' || "
+ "class_g ?= 'Notify-osd' || "
+ "class_g = 'Cairo-clock' || "
+ "_GTK_FRAME_EXTENTS@";
+ shadow = false;
+})
+
+# `@include` directive can be used to include additional configuration files.
+# Relative paths are search either in the parent of this configuration file
+# (when the configuration is loaded through a symlink, the symlink will be
+# resolved first). Or in `$XDG_CONFIG_HOME/picom/include`.
+#
+# @include "extra.conf"