compfy instead of picom, nice animations

This commit is contained in:
Cedric Bonhomme 2024-03-12 12:08:21 +01:00
parent b484544dbe
commit b4568f91c3
8 changed files with 330 additions and 16 deletions

View file

@ -71,7 +71,7 @@ sxhkd -m 1 &
# Compositor #
##################################################
picom -b &
compfy -b &
redshift -l 44.481:0.3545 &
##################################################
@ -92,14 +92,14 @@ dunst &
eww daemon
eww open bar
eww open clock
bspc subscribe node_state | while read -r _ _ _ _ state flag; do
if [[ "$state" != fullscreen ]]; then continue; fi
if [[ "$flag" == on ]]; then
xdotool search --class eww-bar windowunmap
else
xdotool search --class eww-bar windowmap
fi
done &
#bspc subscribe node_state | while read -r _ _ _ _ state flag; do
# if [[ "$state" != fullscreen ]]; then continue; fi
# if [[ "$flag" == on ]]; then
# xdotool search --class eww-bar windowunmap
# else
# xdotool search --class eww-bar windowmap
# fi
#done &
#TODO#vdirsyncer sync &
##################################################

View file

@ -63,7 +63,7 @@ constant = " "
" " = ["discover"]
" " = ["ProtonUp-Qt"]
"󰺣 " = ["easyeffects","lsp-plugins"]
"󰭹 " = ["KotatogramDesktop"]
"󰭹 " = ["KotatogramDesktop","kaidan"]
"󰛮 " = ["betterbird"]
" " = ["kdeconnect.app"]
"🎹" = ["Ardour"]

309
bspwm/.config/compfy.conf Normal file
View file

@ -0,0 +1,309 @@
# Enables patches for specific window managers.
# Currently patched: "awesome", "dwm", "herb"
wm-support = "none";
#################################
# ANIMATIONS #
#################################
# Toggles whether animations should be used for windows
animations = true;
# Changes animation stiffness.
# What stiffness basically is inferring is how much the window geometry will be stretched,
# when opening/closing windows
animation-stiffness = 120;
# Change the mass of windows
# Modifying the mass of windows makes them virtually heavier and therefore slower to animate.
animation-window-mass = 0.8;
# Change dampening applied during the animation
# This setting basically does what it says. It dampens the animation of windows.
animation-dampening = 12;
# Toggles clamping
# if you are using a animation setting that would make the window extend larger than it would be after,
# the animation has played then it will cut the animation off once the window reaches its physical geometry.
animation-clamping = false;
# Set the open window animation.
# Options: ("none","zoom","fly-in","slide-up","slide-down","slide-left","slide-right")
animation-for-open-window = "none";
# Set the closing window animation.
# Options: ("none","zoom","fly-in","slide-up","slide-down","slide-left","slide-right")
animation-for-unmap-window = "none";
# Exclude certain windows from having a open animation.
animation-open-exclude = [
"class_g = 'Dunst'",
"window_type = 'popup_menu'",
"window_type = 'dock'"
];
# Exclude certain windows from having a closing animation.
animation-unmap-exclude = [
"class_g = 'Dunst'",
"window_type = 'popup_menu'",
"window_type = 'dock'"
];
#################################
# Corners #
#################################
# Adjusts the window corner rounding in pixels.
corner-radius = 10;
# Explicitly declare the corner-radius of individual windows.
#
# corners-rule = [
# "20:class_g = 'Polybar'",
# "15:class_g = 'Dunst'",
# ];
# Exclude conditions for rounded corners.
#
rounded-corners-exclude = [
"name = 'Latte Shell — Latte Dock'",
"class_g = 'awesome'",
"class_g = 'latte-dock'",
# "window_type = 'dock'",
# "class_g = 'bar'"
];
#################################
# 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.
#
shadow = true;
# The blur radius for shadows, in pixels. (defaults to 16)
shadow-radius = 16;
# The opacity of shadows. (0.0 - 1.0, defaults to 0.75)
# shadow-opacity = 0.75;
# The left offset for shadows, in pixels. (defaults to -15)
shadow-offset-x = -15;
# The top offset for shadows, in pixels. (defaults to -15)
shadow-offset-y = -15;
# Red color value of shadow (0.0 - 1.0, defaults to 0).
# shadow-red = 0;
# Green color value of shadow (0.0 - 1.0, defaults to 0).
# shadow-green = 0;
# Blue color value of shadow (0.0 - 1.0, defaults to 0).
# shadow-blue = 0;
# Hex string color value of shadow (#000000 - #FFFFFF, defaults to #000000). This option will override options set shadow-(red/green/blue)
# shadow-color = "#000000";
# Specify a list of conditions of windows that should have no shadow.
shadow-exclude = [
# "class_g = 'change-me'",
"argb && (_NET_WM_WINDOW_TYPE@:a *= 'MENU' || _NET_WM_WINDOW_TYPE@:a *= 'COMBO')",
"name = 'Notification'",
"class_g = 'Conky'",
"class_g ?= 'Notify-osd'",
"class_g = 'Cairo-clock'",
"class_g = 'slop'",
"class_g = 'Polybar'",
"class_g = 'latte-dock'",
"window_type = 'popup_menu'",
"_GTK_FRAME_EXTENTS@:c"
];
#################################
# Fading #
#################################
# Fade windows in/out when opening/closing and when opacity changes,
# unless no-fading-openclose is used.
# FADING IS REQUIRED FOR CLOSING ANIMATIONS
fading = true;
# Opacity change between steps while fading in. (0.01 - 1.0, defaults to 0.03)
#
# Increasing this value will result in faster fading in of windows.
# Decreasing makes the fading in of windows take longer.
# (This does not means the animations take longer, just the fading).
fade-in-step = 0.03;
# Opacity change between steps while fading out. (0.01 - 1.0, defaults to 0.03)
#
# Increasing this value will result in faster fading out AND animating out of windows.
# Decreasing this makes fading and animating out take longer.
fade-out-step = 0.03;
# The time between steps in fade step, in milliseconds. (> 0, defaults to 10)
fade-delta = 6
# Specify a list of conditions of windows that should not be faded.
# fade-exclude = []
fade-exclude = [
"class_g = 'slop'", # maim
"class_g = 'eww-bar'"
]
# 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 inactive windows. (0.1 - 1.0, defaults to 1.0)
inactive-opacity = 0.8;
# Opacity of window titlebars and borders. (0.1 - 1.0, disabled by default)
frame-opacity = 0.7;
# Overrides any opacities set in `opacity-rule` when set to true.
inactive-opacity-override = false;
# Default opacity for active windows. (0.0 - 1.0, defaults to 1.0)
active-opacity = 1.0;
# Dim inactive windows. (0.0 - 1.0, defaults to 0.0)
# inactive-dim = 0.0;
# A list of windows that should have their inactive-opacity set to whatever the active-opacity is.
# Unless the window is also in active-exclude then it will be set to 1.0 or if it is set in "opacity-rule",
# it will use the opacity set there as the inactive-opacity
# Also excludes effects caused by inactive-dim
#
# inactive-exclude = [
# "class_g = 'dwm'"
# ];
# A list of windows that should never have their opacity changed by active-opacity when focused.
#
# active-exclude = [
# "class_g = 'dwm'"
# ];
# Specify a list of opacity rules, in the format `PERCENT:PATTERN`,
# like `50:name *= "Firefox"`.
# opacity-rule = [
# "80:class_g = 'Alacritty'"
# ];
#################################
# Background-Blurring #
#################################
# Blur background of windows.
#
blur-background = true;
# Parameters for background blurring, see the *BLUR* section for more information.
blur-method = "dual_kawase";
#
blur-size = 10;
#
blur-deviation = true;
#
blur-strength = 7;
# Blur kernel preset. Play around and see what looks best.
# Options "3x3box", "5x5box", "7x7box", "3x3gaussian", "5x5gaussian", "7x7gaussian", "9x9gaussian", "11x11gaussian"
#
blur-kern = "5x5box";
# Toggle whether you want to use a blacklist or whitelist.
# Defaults to "true"
blur-whitelist = false;
# Whitelist for windows to have background blurring
#blur-include = [
# "class_g = 'Alacritty'",
# "class_g = 'kitty'"
#];
# Blacklist for background blurring.
# Only works if "blur-whitelist = false;"
#
blur-exclude = [
"window_type = 'utility'",
"class_g = 'Conky'",
"class_g = 'equalizer'",
"class_g = 'foreground'",
"class_g = 'widget'",
"class_g = 'slop'",
"class_g = 'Firefox' && argb",
"class_g = 'Xfce4-panel'",
"name = 'rofi - Search'",
"_GTK_FRAME_EXTENTS@:c"
];
#################################
# General Settings #
#################################
# Enable remote control via D-Bus. See the man page for more details.
# dbus = true
# Daemonize process. Fork to background after initialization. Causes issues with certain (badly-written) drivers.
daemon = true
# Specify the backend to use: `xrender`, `glx`, or `xr_glx_hybrid`.
backend = "glx";
# Enable/disable VSync.
vsync = true;
log-level = "info";
#################################
# ADVANCED #
#################################
# Set settings for specific window types. See Wiki for more information
# Below is an example of how to disabled shadows on Firefox/Librewolf menus,
# and also make sure they are considered focused so that they cannot be affected by inactive window settings.
#
# wintypes:
# {
# utility = { shadow = false; focus = true; };
# popup_menu = { shadow = false; focus = true; };
# };
wintypes:
{
tooltip = { fade = true; shadow = false; focus = false; };
normal = { shadow = false; };
dock = { shadow = false; };
dnd = { shadow = false; };
popup_menu = { shadow = false; focus = false; opacity = 0.90; };
dropdown_menu = { shadow = false; focus = false; };
above = { shadow = false; };
splash = { shadow = false; };
utility = { focus = false; shadow = false; };
notification = { shadow = false; };
desktop = { shadow = false };
menu = { focus = false };
dialog = { shadow = false; };
};

View file

@ -38,7 +38,7 @@
(defwidget clock []
(box :orientation "h" :class "clock" :space-evenly "false" :spacing 0
(image :path {mascot} :image-width 90 :image-height 225)
(box :orientation "v" :space-evenly "false" :spacing 5 :valign "end"
(box :orientation "v" :space-evenly "false" :spacing 5 :valign "center"
(literal :content cal)
(box :orientation "h" :class "date" :space-evenly "false" :spacing 5 :halign "end"
(box :class "day-side" {date.day})

View file

@ -501,4 +501,8 @@ feeds:
download_path: "/media/sakura/jojo/Videos/Sokushi Cheat ga Saikyou Sugite"
- url: "https://nyaa.si/?page=rss&q=+Tsuki+ga+Michibiku+Isekai+Douchuu+S2+subsplease+1080&c=0_0&f=0"
download_path: "/media/sakura/jojo/Videos/Tsuki ga Michibiku Isekai Douchuu S2"
- url: "https://nyaa.si/?page=rss&q=saikyou+tank+ember&c=1_2&f=0"
download_path: "/media/sakura/jojo/Videos/Saikyou Tank no Meikyuu Kouryaku"
- url: "https://nyaa.si/?page=rss&q=akuyaku+level+99+1080+erai&c=1_2&f=0"
download_path: "/media/sakura/jojo/Videos/Akuyaku Reijou Level 99"
regexp: ^((?!HEVC).)*$

View file

@ -1,5 +1,5 @@
#!/usr/bin/env sh
buf="$(khal list --day-format '(box :orientation "v" :spacing 10 :space-evenly "false" :halign "start" :valign "center" :vexpend true :hexpend true :class "cal-event" (label :class "cal-header" :text "{name} {date}")' --format '(label :wrap "true" :class "cal-event-text" :text "{start-end-time-style} {title}{repeat-symbol}{alarm-symbol}{description-separator}{description}")' | sed -e "s/:class \"cal-event\" (label :class \"cal-header\" :text \"Today/:class \"cal-event-today\" (label :class \"cal-header-today\" :text \"Aujourd\'hui/g" -e "s/Tomorrow/Demain/g" | sed -z 's/\n(box/)(box/g' | sed -z 's/\n//g' )"
buf="$(khal list --day-format '(box :orientation "v" :spacing 0 :space-evenly "true" :halign "center" :valign "center" :vexpend false :hexpend false :class "cal-event" (label :class "cal-header" :text "{name} {date}")' --format '(label :wrap "false" :class "cal-event-text" :text "[{start-end-time-style}] {title}")' | sed -e "s/:class \"cal-event\" (label :class \"cal-header\" :text \"Today/:class \"cal-event-today\" (label :class \"cal-header-today\" :text \"Aujourd\'hui/g" -e "s/Tomorrow/Demain/g" | sed -z 's/\n(box/)(box/g' | sed -z 's/\n//g' | sed -z 's/\[\]//g' )"
echo "(box :orientation \"v\" :class \"super-cal\" :space-evenly "false" :spacing 20 :halign \"start\" :valign \"center\" :vexpand true :hexpand true $buf))"
echo "(box :orientation \"v\" :class \"super-cal\" :space-evenly "true" :spacing 0 :valign \"center\" :vexpand false :hexpand false $buf))"

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 MiB

After

Width:  |  Height:  |  Size: 4.6 MiB

Before After
Before After

View file

@ -66,7 +66,8 @@ alias bocchi 'sudo poweroff'
alias play 'env SOX_OPTS="--buffer 20000 --play-rate-arg -hs" play'
alias docker 'podman'
alias docker-compose 'podman-compose'
alias rekt 'yay -Rd'
alias rekt 'yay -Rcsn'
alias k 'yay -S'
abbr - 'ssh'
## Utilities
@ -91,7 +92,7 @@ abbr torrent 'aria2c --bt-metadata-only=true --bt-save-metadata=true'
## Navigation
abbr ls 'exa' # ls with colors
abbr r 'ranger'
abbr r 'ya'
## Git
abbr g:a 'git add -A'