Some config files added

This commit is contained in:
ManOfGoldForever 2025-11-10 12:37:40 -05:00
commit 7e2ddc1054
33 changed files with 1470 additions and 0 deletions

View file

@ -0,0 +1,15 @@
# ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
# ┃ Animations Configuration ┃
# ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
# https://wiki.hyprland.org/Configuring/Animations/
animations {
enabled = yes
bezier = overshot, 0.13, 0.99, 0.29, 1.1
animation = windowsIn, 1, 4, overshot, slide
animation = windowsOut, 1, 5, default, popin 80%
animation = border, 1, 5, default
animation = workspacesIn, 1, 6, overshot, slide
animation = workspacesOut, 1, 6, overshot, slidefade 80%
}

View file

@ -0,0 +1,28 @@
# ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
# ┃ Autostart Configuration ┃
# ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
source = ~/.config/hypr/config/defaults.conf
exec-once = xrandr --output HDMI-A-1 --primary
exec-once=hyprctl setcursor Dracula 24
# exec-once = hyprctl dispatch workspace 1
# Autostart wiki https://wiki.hyprland.org/Configuring/Keywords/#executing
exec-once = waybar &
exec-once = mako &
exec-once = nm-applet --indicator &
exec-once = bash -c "mkfifo /tmp/$HYPRLAND_INSTANCE_SIGNATURE.wob && tail -f /tmp/$HYPRLAND_INSTANCE_SIGNATURE.wob | wob & disown" &
exec-once = /usr/lib/polkit-kde-authentication-agent-1 &
# exec-once = hyprlock &
exec-once = swww-daemon & sleep 0.1 && swww img /mnt/data/Wallpapers/base.png --transition-type none &
# ## Slow app launch fix
exec-once = systemctl --user import-environment &
exec-once = hash dbus-update-activation-environment 2>/dev/null &
exec-once = dbus-update-activation-environment --systemd &
# ## Idle configuration
exec-once = $idlehandler

View file

@ -0,0 +1,13 @@
# ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
# ┃ Colors Configuration ┃
# ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
$cachylgreen = rgba(82dcccff)
$cachymgreen = rgba(00aa84ff)
$cachydgreen = rgba(007d6fff)
$cachylblue = rgba(01ccffff)
$cachymblue = rgba(182545ff)
$cachydblue = rgba(111826ff)
$cachywhite = rgba(ffffffff)
$cachygrey = rgba(ddddddff)
$cachygray = rgba(798bb2ff)

View file

@ -0,0 +1,24 @@
# ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
# ┃ Decorations Configuration ┃
# ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
source = ~/.config/hypr/config/colors.conf
# https://wiki.hyprland.org/Configuring/Variables/#decoration
decoration {
active_opacity = 1
rounding = 4
# https://wiki.hyprland.org/Configuring/Variables/#blur
blur {
size = 15
passes = 2 # more passes = more resource intensive.
xray = true
}
# https://wiki.hyprland.org/Configuring/Variables/#shadow
shadow {
enabled = false
}
}

View file

@ -0,0 +1,16 @@
# ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
# ┃ Defaults Configuration ┃
# ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
# General
$webbrowser = firefox
$filemanager = nautilus
$applauncher = rofi -show drun
$terminal = kitty
$idlehandler = hypridle
# Screenshots
$shot-region = grimblast copy area
$shot-window = grimblast copy active
$shot-screen = grimblast copy output

View file

@ -0,0 +1,10 @@
# ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
# ┃ Enviroment Configuration ┃
# ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
envd = HYPRCURSOR_THEME, Dracula
envd = HYPRCURSOR_SIZE,24
envd = XCURSOR_THEME, Dracula
envd = XCURSOR_SIZE,24
envd = QT_CURSOR_THEME, Dracula
envd = QT_CURSOR_SIZE,24

View file

@ -0,0 +1,10 @@
# ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
# ┃ Input Configuration ┃
# ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
# Input wiki https://wiki.hyprland.org/Configuring/Variables/#input
input {
follow_mouse = 2 # 0|1|2|3
float_switch_override_focus = 2
}

View file

@ -0,0 +1,167 @@
# ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
# ┃ Keybinds ┃
# ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
source = ~/.config/hypr/config/defaults.conf
# https://wiki.hyprland.org/Configuring/Binds/
bindd = $mainMod, F2, Runs gamemode script, exec, ~/.config/hypr/gamemode.sh
bindd = $mainMod, W, Runs Rofi Wallpaper Selector Script, exec, ~/.config/rofi/wallpaper_selector.sh
bindd = $mainMod, P, Opens power menu (Wlogout), exec, wlogout
bindd = $mainMod, A, Opens mumble, exec, mumble
bindd = $mainMod, S, Opens steam, exec, steam
bindd = $mainMod, B, Opens your preferred web browser($webbrowser), exec, $webbrowser
bindd = $mainMod, RETURN, Opens your preferred terminal emulator ($terminal), exec, $terminal
bindd = $mainMod, E, Opens your preferred filemanager ($filemanager), exec, $filemanager
bindd = $mainMod, Q, Closes (not kill) current window, killactive,
bindd = $mainMod SHIFT, M, Exits Hyprland by terminating the user sessions, exec, loginctl terminate-user ""
bindd = $mainMod, V, Switches current window between floating and tiling mode, togglefloating,
bindd = $mainMod, SPACE, Runs your application launcher, exec, $applauncher
bindd = $mainMod, F, Toggles current window fullscreen mode, fullscreen
bindd = $mainMod, Y, Pin current window (shows on all workspaces), pin
bindd = $mainMod, J, Toggles current window split mode, togglesplit, # dwindle
bindd = , Print, Creates a screenshot of an area, exec, $shot-region,
bindd = CTRL, Print, Creates a screenshot of the active window, exec, $shot-window,
bindd = ALT, Print, Creates a screenshot of the active display, exec, $shot-screen,
# ======= Grouping Windows =======
bindd = $mainMod, K, Toggles current window group mode (ungroup all related), togglegroup,
bindd = $mainMod, Tab, Switches to the next window in the group, changegroupactive, f
# ======= Toggle Gaps =======
bindd = $mainMod SHIFT, G, Set CachyOS default gaps, exec, hyprctl --batch "keyword general:gaps_out 5;keyword general:gaps_in 3"
bindd = $mainMod, G, Remove gaps between window, exec, hyprctl --batch "keyword general:gaps_out 0;keyword general:gaps_in 0"
# ======= Volume Control =======
bindel = , XF86AudioRaiseVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ +5% && pactl get-sink-volume @DEFAULT_SINK@ | grep -oP '\d+(?=%)' | awk '{if($1>100) system("pactl set-sink-volume @DEFAULT_SINK@ 100%")}' && pactl get-sink-volume @DEFAULT_SINK@ | grep -oP '\d+(?=%)' | awk '{print $1}' | head -1 > /tmp/$HYPRLAND_INSTANCE_SIGNATURE.wob # Raise Volume
bindel = , XF86AudioLowerVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ -5% && pactl get-sink-volume @DEFAULT_SINK@ | grep -oP '\d+(?=%)' | awk '{print $1}' | head -1 > /tmp/$HYPRLAND_INSTANCE_SIGNATURE.wob # Lower Volume
bindel = , XF86AudioMute, exec, amixer sset Master toggle | sed -En '/\[on\]/ s/.*\[([0-9]+)%\].*/\1/ p; /\[off\]/ s/.*/0/p' | head -1 > /tmp/$HYPRLAND_INSTANCE_SIGNATURE.wob #Mutes player audio
# ======= Playback Control =======
bind = SUPER, bracketright, exec, playerctl --player=spotify_player next
bind = SUPER, bracketleft, exec, playerctl --player=spotify_player previous
bind = SUPER, backslash, exec, playerctl --player=spotify_player play-pause
bindd = , XF86AudioPlay, Toggles play/pause, exec, playerctl play-pause
bindd = , XF86AudioNext, Next track, exec, playerctl next
bindd = , XF86AudioPrev, Previous track, exec, playerctl previous
# ======= Screen Brightness =======
bindel = , XF86MonBrightnessUp, exec, brightnessctl s +5% #Increases brightness 5%
bindel = , XF86MonBrightnessDown, exec, brightnessctl s 5%- #Decreases brightness 5%
bindd = $mainMod, L, Lock the screen, exec, swaylock-fancy -e -K -p 10 -f Hack-Regular
bindd = $mainMod, O, Reload/restarts Waybar, exec, killall -SIGUSR2 waybar
# ======= Window Actions =======
## Move window with mainMod + LMB/RMB and dragging
bindd = $mainMod, mouse:272, Move the window towards a direction, movewindow
## Move window towards a direction
bindd = $mainMod SHIFT, left, Move active window to the left, movewindow, l
bindd = $mainMod SHIFT, right, Move active window to the right, movewindow, r
bindd = $mainMod SHIFT, up, Move active window upwards, movewindow, u
bindd = $mainMod SHIFT, down, Move active window downwards, movewindow, d
## Move focus with mainMod + arrow keys
bindd = $mainMod, left, Move focus to the left, movefocus, l
bindd = $mainMod, right, Move focus to the right, movefocus, r
bindd = $mainMod, up, Move focus upwards, movefocus, u
bindd = $mainMod, down, Move focus downwards, movefocus, d
## Resizing windows
# Activate keyboard window resize mode
# https://wiki.hyprland.org/Configuring/Binds/#submaps
bindd = $mainMod, R, Activates window resizing mode, submap, resize
submap = resize
bindd = , right, Resize to the right (resizing mode), resizeactive, 15 0
bindd = , left, Resize to the left (resizing mode), resizeactive, -15 0
bindd = , up, Resize upwards (resizing mode), resizeactive, 0 -15
bindd = , down, Resize downwards (resizing mode), resizeactive, 0 15
bindd = , l, Resize to the right (resizing mode), resizeactive, 15 0
bindd = , h, Resize to the left (resizing mode), resizeactive, -15 0
bindd = , k, Resize upwards (resizing mode), resizeactive, 0 -15
bindd = , j, Resize downwards (resizing mode), resizeactive, 0 15
bindd = , escape, Ends window resizing mode, submap, reset
submap = reset
# Quick resize window with keyboard
# !!! added $mainMod here because CTRL + SHIFT is used for word selection in various text editors
bindd = $mainMod CTRL SHIFT, right, Resize to the right, resizeactive, 15 0
bindd = $mainMod CTRL SHIFT, left, Resize to the left, resizeactive, -15 0
bindd = $mainMod CTRL SHIFT, up, Resize upwards, resizeactive, 0 -15
bindd = $mainMod CTRL SHIFT, down, Resize downwards, resizeactive, 0 15
bindd = $mainMod CTRL SHIFT, l, Resize to the right, resizeactive, 15 0
bindd = $mainMod CTRL SHIFT, h, Resize to the left, resizeactive, -15 0
bindd = $mainMod CTRL SHIFT, k, Resize upwards, resizeactive, 0 -15
bindd = $mainMod CTRL SHIFT, j, Resize downwards, resizeactive, 0 15
# Resize window with mainMod + LMB/RMB and dragging
bindm = $mainMod, mouse:273, resizewindow #Resize the window towards a direction
bindm = $mainMod, mouse:272, movewindow #Drag window
## Resizing Windows End #
## Move active window to a workspace with $mainMod + CTRL + [0-9]
bindd = $mainMod CTRL, 1, Move window and switch to workspace 1, movetoworkspace, 1
bindd = $mainMod CTRL, 2, Move window and switch to workspace 2, movetoworkspace, 2
bindd = $mainMod CTRL, 3, Move window and switch to workspace 3, movetoworkspace, 3
bindd = $mainMod CTRL, 4, Move window and switch to workspace 4, movetoworkspace, 4
bindd = $mainMod CTRL, 5, Move window and switch to workspace 5, movetoworkspace, 5
bindd = $mainMod CTRL, 6, Move window and switch to workspace 6, movetoworkspace, 6
bindd = $mainMod CTRL, 7, Move window and switch to workspace 7, movetoworkspace, 7
bindd = $mainMod CTRL, 8, Move window and switch to workspace 8, movetoworkspace, 8
bindd = $mainMod CTRL, 9, Move window and switch to workspace 9, movetoworkspace, 9
bindd = $mainMod CTRL, 0, Move window and switch to workspace 10, movetoworkspace, 10
bindd = $mainMod CTRL, left, Move window and switch to the next workspace, movetoworkspace, -1
bindd = $mainMod CTRL, right, Move window and switch to the previous workspace, movetoworkspace, +1
## Same as above, but doesn't switch to the workspace
bindd = $mainMod SHIFT, 1, Move window silently to workspace 1, movetoworkspacesilent, 1
bindd = $mainMod SHIFT, 2, Move window silently to workspace 2, movetoworkspacesilent, 2
bindd = $mainMod SHIFT, 3, Move window silently to workspace 3, movetoworkspacesilent, 3
bindd = $mainMod SHIFT, 4, Move window silently to workspace 4, movetoworkspacesilent, 4
bindd = $mainMod SHIFT, 5, Move window silently to workspace 5, movetoworkspacesilent, 5
bindd = $mainMod SHIFT, 6, Move window silently to workspace 6, movetoworkspacesilent, 6
bindd = $mainMod SHIFT, 7, Move window silently to workspace 7, movetoworkspacesilent, 7
bindd = $mainMod SHIFT, 8, Move window silently to workspace 8, movetoworkspacesilent, 8
bindd = $mainMod SHIFT, 9, Move window silently to workspace 9, movetoworkspacesilent, 9
bindd = $mainMod SHIFT, 0, Move window silently to workspace 10, movetoworkspacesilent, 10
# Window actions End #
# ======= Workspace Actions =======
# Switch workspaces with mainMod + [0-9]
bindd = $mainMod, 1, Switch to workspace 1, workspace, 1
bindd = $mainMod, 2, Switch to workspace 2, workspace, 2
bindd = $mainMod, 3, Switch to workspace 3, workspace, 3
bindd = $mainMod, 4, Switch to workspace 4, workspace, 4
bindd = $mainMod, 5, Switch to workspace 5, workspace, 5
bindd = $mainMod, 6, Switch to workspace 6, workspace, 6
bindd = $mainMod, 7, Switch to workspace 7, workspace, 7
bindd = $mainMod, 8, Switch to workspace 8, workspace, 8
bindd = $mainMod, 9, Switch to workspace 9, workspace, 9
bindd = $mainMod, 0, Switch to workspace 10, workspace, 10
# Scroll through existing workspaces with mainMod + , or .
bindd = $mainMod, PERIOD, Scroll through workspaces incrementally, workspace, e+1
bindd = $mainMod, COMMA, Scroll through workspaces decrementally, workspace, e-1
# With $mainMod + scroll
bindd = $mainMod, mouse_down, Scroll through workspaces incrementally, workspace, e+1
bindd = $mainMod, mouse_up, Scroll through workspaces decrementally, workspace, e-1
bindd = $mainMod, slash, Switch to the previous workspace, workspace, previous
# Special workspaces (scratchpads)
bindd = $mainMod, minus, Move active window to Special workspace, movetoworkspace, special
bindd = $mainMod, equal, Toggles the Special workspace, togglespecialworkspace, special
bindd = $mainMod, F1, Call special workspace scratchpad, togglespecialworkspace, scratchpad
bindd = $mainMod ALT SHIFT, F1, Move active window to special workspace scratchpad, movetoworkspacesilent, special:scratchpad
# ======= Additional Settings =======
# https://wiki.hyprland.org/Configuring/Binds
binds {
allow_workspace_cycles = 1
workspace_back_and_forth = 1
workspace_center_on = 1
movefocus_cycles_fullscreen = true
window_direction_monitor_fallback = true
}

View file

@ -0,0 +1,5 @@
# Generated by nwg-displays on 2025-11-02 at 02:52:57. Do not edit manually.
monitor = HDMI-A-1,1920x1080@239.76,0x0,1,transform,0
monitor = DP-1,2560x1440@59.95,1920x0,1,transform,1
monitor = eDP-2,disable

View file

@ -0,0 +1,87 @@
# ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
# ┃ Variables Configuration ┃
# ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
source = ~/.config/hypr/config/colors.conf
# https://wiki.hyprland.org/Configuring/Variables/#general
general {
gaps_in = 3
gaps_out = 5
border_size = 3
col.active_border = $cachylgreen
col.inactive_border = $cachymblue
layout = dwindle # master|dwindle
# https://wiki.hyprland.org/Configuring/Variables/#snap
snap {
enabled = true
}
}
# removed old gestures {} block — Hyprland 0.39+ uses gesture = … lines
# https://wiki.hyprland.org/Configuring/Variables/#group
group {
col.border_active = $cachydgreen
col.border_inactive = $cachylgreen
col.border_locked_active = $cachymgreen
col.border_locked_inactive = $cachydblue
# https://wiki.hyprland.org/Configuring/Variables/#groupbar
groupbar {
font_family = "Fira Sans"
text_color = $cachydblue
col.active = $cachydgreen
col.inactive = $cachylgreen
col.locked_active = $cachymgreen
col.locked_inactive = $cachydblue
}
}
# https://wiki.hyprland.org/Configuring/Variables/#misc
misc {
font_family = "Fira Sans"
splash_font_family = "Fira Sans"
disable_hyprland_logo = true
col.splash = $cachylgreen
background_color = $cachydblue
enable_swallow = true
swallow_regex = ^(nautilus|nemo|thunar|btrfs-assistant.)$
focus_on_activate = true
vrr = 2
}
# https://wiki.hyprland.org/Configuring/Variables/#render
render {
direct_scanout = true
}
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
dwindle {
special_scale_factor = 0.8
pseudotile = true
preserve_split = true
}
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
master {
new_status = master
special_scale_factor = 0.8
}
# ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
# ┃ Gestures ┃
# ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
# 4-finger horizontal swipe to switch workspaces
gesture = 4, horizontal, workspace
# 3-finger swipe down closes active window
gesture = 3, down, close
# 3-finger swipe up toggles fullscreen
gesture = 3, up, fullscreen
# 3-finger swipe left toggles float/tile
gesture = 3, left, float

View file

@ -0,0 +1,66 @@
# ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
# ┃ Windowrules Configuration ┃
# ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
# Windows Rules https://wiki.hyprland.org/Configuring/Window-Rules/ #
windowrulev2 = fullscreen, initialTitle:^(ARC Raiders)$, monitor:1
windowrule = monitor 1, initialTitle:^(Deadlock)$
# Float Necessary Windows
windowrule = tile, initialTitle:^(Godot)$
windowrule = float, class:^(org.pulseaudio.pavucontrol)
windowrule = float, class:^()$,title:^(Picture in picture)$
windowrule = float, class:^()$,title:^(Save File)$
windowrule = float, class:^()$,title:^(Open File)$
windowrule = float, class:^(LibreWolf)$,title:^(Picture-in-Picture)$
windowrule = float, class:^(blueman-manager)$
windowrule = float, class:^(xdg-desktop-portal-gtk|xdg-desktop-portal-kde|xdg-desktop-portal-hyprland)(.*)$
windowrule = float, class:^(polkit-gnome-authentication-agent-1|hyprpolkitagent|org.org.kde.polkit-kde-authentication-agent-1)(.*)$
windowrule = float, class:^(CachyOSHello)$
windowrule = float, class:^(zenity)$
windowrule = float, class:^()$,title:^(Steam - Self Updater)$
# Increase the opacity
windowrule = opacity 0.92, class:^(thunar|nemo)$
windowrule = opacity 0.96, class:^(discord|armcord|webcord)$
windowrule = opacity 0.95, title:^(QQ|Telegram)$
windowrule = opacity 0.95, title:^(NetEase Cloud Music Gtk4)$
# General window rules
windowrule = float, title:^(Picture-in-Picture)$
windowrule = size 960 540, title:^(Picture-in-Picture)$
windowrule = move 25%-, title:^(Picture-in-Picture)$
windowrule = float, title:^(imv|mpv|danmufloat|termfloat|nemo|ncmpcpp)$
windowrule = move 25%-, title:^(imv|mpv|danmufloat|termfloat|nemo|ncmpcpp)$
windowrule = size 960 540, title:^(imv|mpv|danmufloat|termfloat|nemo|ncmpcpp)$
windowrule = pin, title:^(danmufloat)$
windowrule = rounding 5, title:^(danmufloat|termfloat)$
windowrule = animation slide right, class:^(kitty|Alacritty)$
windowrule = noblur, class:^(org.mozilla.firefox)$
# Decorations related to floating windows on workspaces 1 to 10
windowrule = bordersize 2, floating:1, onworkspace:w[fv1-10]
windowrule = bordercolor $cachylblue, floating:1, onworkspace:w[fv1-10]
windowrule = rounding 8, floating:1, onworkspace:w[fv1-10]
# Decorations related to tiling windows on workspaces 1 to 10
windowrule = bordersize 3, floating:0, onworkspace:f[1-10]
windowrule = rounding 4, floating:0, onworkspace:f[1-10]
# Windows Rules End #
# Workspaces Rules https://wiki.hyprland.org/Configuring/Workspace-Rules/ #
# workspace = 1, default:true, monitor:$priMon
# workspace = 3, default:true, monitor:$secMon
# Workspace selectors https://wiki.hyprland.org/Configuring/Workspace-Rules/#workspace-selectors
# workspace = r[1-2], monitor:$priMon
# workspace = r[3-5], monitor:$secMon
# workspace = special:scratchpad, on-created-empty:$applauncher
# no_gaps_when_only deprecated instead workspaces rules with selectors can do the same
# Smart gaps from 0.45.0 https://wiki.hyprland.org/Configuring/Workspace-Rules/#smart-gaps
workspace = w[tv1-10], gapsout:5, gapsin:3
workspace = f[1], gapsout:5, gapsin:3
# Workspaces Rules End #
# Layers Rules #
layerrule = animation slide top, logout_dialog
# layerrule = animation popin 50%, waybar
layerrule = animation slide down, waybar
layerrule = animation fade 50%, wallpaper
# Layers Rules End #

View file

@ -0,0 +1,7 @@
# Generated by nwg-displays on 2025-11-02 at 02:49:30. Do not edit manually.
workspace=1,monitor:HDMI-A-1,default:true
workspace=2,monitor:HDMI-A-1
workspace=3,monitor:DP-1,default:true
workspace=4,monitor:DP-1
workspace=5,monitor:DP-1

View file

@ -0,0 +1,24 @@
$background = rgb(282A36)
$backgroundRaw = 282A36
$foreground = rgb(F8F8F2)
$foregroundRaw = F8F8F2
$selection = rgb(44475A)
$selectionRaw = 44475A
$comment = rgb(6272A4)
$commentRaw = 6272A4
$red = rgb(FF5555)
$redRaw = FF5555
$orange = rgb(FFB86C)
$orangeRaw = FFB86C
$yellow = rgb(F1FA8C)
$yellowRaw = F1FA8C
$green = rgb(50FA7B)
$greenRaw = 50FA7B
$purple = rgb(BD93F9)
$purpleRaw = BD93F9
$cyan = rgb(8BE9FD)
$cyanRaw = 8BE9FD
$pink = rgb(FF79C6)
$pinkRaw = FF79C6
$accent = $purple
$accentRaw = $purpleRaw

21
.config/hypr/gamemode.sh Executable file
View file

@ -0,0 +1,21 @@
#!/usr/bin/env sh
HYPRGAMEMODE=$(hyprctl getoption animations:enabled | awk 'NR==1{print $2}')
if [ "$HYPRGAMEMODE" = 1 ] ; then
hyprctl --batch "\
keyword animations:enabled 0;\
keyword animation borderangle,0; \
keyword decoration:shadow:enabled 0;\
keyword decoration:blur:enabled 0;\
keyword decoration:fullscreen_opacity 1;\
keyword general:gaps_in 0;\
keyword general:gaps_out 0;\
keyword general:border_size 1;\
keyword decoration:rounding 0"
hyprctl notify 1 5000 "rgb(40a02b)" "Gamemode [ON]"
exit
else
hyprctl notify 1 5000 "rgb(d20f39)" "Gamemode [OFF]"
hyprctl reload
exit 0
fi
exit 1

View file

@ -0,0 +1,11 @@
general {
lock_cmd = pidof hyprlock || hyprlock # avoid starting multiple hyprlock instances.
before_sleep_cmd = loginctl lock-session # lock before suspend.
after_sleep_cmd = hyprctl dispatch dpms on # to avoid having to press a key twice to turn on the display.
}
listener {
timeout = 1800 # 30min
on-timeout = hyprctl dispatch dpms off # screen off when timeout has passed
on-resume = hyprctl dispatch dpms on && brightnessctl -r # screen on when activity is detected after timeout has fired.
}

View file

@ -0,0 +1,68 @@
# ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
# ┃ CachyOS Hyprland Configuration ┃
# ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
$mainMod = SUPER
env = HYPRCURSOR_THEME,Dracula
env = HYPRCURSOR_SIZE,24
env = GTK_CSD,0
# ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
# ┃ Source Files ┃
# ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
source = ~/.config/hypr/config/animations.conf
source = ~/.config/hypr/config/autostart.conf
source = ~/.config/hypr/config/decorations.conf
source = ~/.config/hypr/config/environment.conf
source = ~/.config/hypr/config/input.conf
source = ~/.config/hypr/config/keybinds.conf
source = ~/.config/hypr/config/monitors.conf
source = ~/.config/hypr/config/variables.conf
source = ~/.config/hypr/config/windowrules.conf
source = ~/.config/hypr/config/workspaces.conf
# Modifying these configs can be done by creating a user defined config in the home directory, e.g.
## ~/.config/hypr/config/user-config.conf
# source = ~/.config/hypr/config/user-config.conf
# dracula/hyprland
general {
col.active_border = rgb(44475a) rgb(bd93f9) 90deg
col.inactive_border = rgba(44475aaa)
col.nogroup_border = rgba(282a36dd)
col.nogroup_border_active = rgb(bd93f9) rgb(44475a) 90deg
no_border_on_floating = false
border_size = 2
# non-gradient alternative
#col.active_border = rgb(bd93f9)
#col.inactive_border = rgba(44475aaa)
#col.group_border = rgba(282a36dd)
#col.group_border_active = rgb(bd93f9)
# darker alternative
#col.active_border = rgb(44475a) # or rgb(6272a4)
#col.inactive_border = rgb(282a36)
#col.group_border = rgb(282a36)
#col.group_border_active = rgb(44475a) # or rgb(6272a4)
}
decoration:shadow {
color = rgba(1E202966)
# suggested shadow setting
#enabled = true
#range = 60
#offset = 1 2
#render_power = 3
#scale = 0.97
}
group {
groupbar {
col.active = rgb(bd93f9) rgb(44475a) 90deg
col.inactive = rgba(282a36dd)
}
}
windowrulev2 = bordercolor rgb(ff5555),xwayland:1 # check if window is xwayland

View file

@ -0,0 +1,68 @@
source = $HOME/.config/hypr/dracula_colors.conf
$font = JetBrainsMono Nerd Font
$base = $background
$text = $foreground
$textAlpha = $foregroundRaw
$accentAlpha = $accentRaw
# GENERAL
general {
hide_cursor = true
}
# BACKGROUND
background {
monitor =
# change to the path to your wallpaper
path = /mnt/data/Wallpapers/base.png
blur_passes = 0
color = $base
}
# TIME
label {
monitor =
text = $TIME12
color = $text
font_size = 90
font_family = $font
position = 30, 0
halign = left
valign = top
}
# DATE
label {
monitor =
text = cmd[update:43200000] echo "$(date +"%A, %d %B %Y")"
color = $text
font_size = 25
font_family = $font
position = 30, -150
halign = left
valign = top
}
# INPUT FIELD
input-field {
monitor =
size = 300, 60
outline_thickness = 4
dots_size = 0.2
dots_spacing = 0.2
dots_center = true
outer_color = $accent
inner_color = $background
font_color = $text
fade_on_empty = false
placeholder_text = <span foreground="##$textAlpha">󰌾 Logged in as <span foreground="##$accentAlpha">$USER</span></span>
hide_input = false
check_color = $accent
fail_color = $red
fail_text = <i>$FAIL <b>($ATTEMPTS)</b></i>
capslock_color = $yellow
position = 0, -35
halign = center
valign = center
}

12
.config/waybar/colors.css Normal file
View file

@ -0,0 +1,12 @@
@define-color background-darker rgba(30, 31, 41, 230);
@define-color background #282a36;
@define-color selection #44475a;
@define-color foreground #f8f8f2;
@define-color comment #6272a4;
@define-color cyan #8be9fd;
@define-color green #50fa7b;
@define-color orange #ffb86c;
@define-color pink #ff79c6;
@define-color purple #bd93f9;
@define-color red #ff5555;
@define-color yellow #f1fa8c;

79
.config/waybar/config Normal file
View file

@ -0,0 +1,79 @@
{
"layer": "top",
"position": "top",
"height": 24,
"spacing": 4,
"modules-left": [
"hyprland/workspaces",
],
"modules-center": [
"hyprland/window"
],
"modules-right": [
"custom/media",
"custom/updates",
"custom/storage",
"tray",
"clock"
],
"wlr/taskbar": {
"on-click": "activate",
"on-click-middle": "close",
"ignore-list": [
"foot"
]
},
"hyprland/workspaces": {
"on-click": "activate",
"on-scroll-up": "hyprctl dispatch workspace e-1",
"on-scroll-down": "hyprctl dispatch workspace e+1"
},
"hyprland/window": {
"max-length": 128
},
"clock": {
"format": "{:%m/%d/%Y %I:%M %p}",
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>"
},
"tray": {
"spacing": 4
},
"custom/weather": {
"exec": "~/.config/waybar/wittr.sh",
"return-type": "json",
"format": "{}",
"tooltip": true,
"interval": 900
},
"custom/spotify": {
"exec": "~/.config/waybar/modules/spotify.sh",
"return-type": "json",
"format": "{}",
"tooltip": false,
"interval": 5
},
"custom/media": {
"exec": "~/.config/waybar/mediaplayer.py --player spotify_player",
"return-type": "json",
"interval": 0,
"on-click": "playerctl play-pause",
"tooltip": false
},
"custom/storage": {
"exec": "~/.config/waybar/modules/storage.sh",
"return-type": "json",
"interval": 900,
"format": "{}",
"tooltip": false
},
"custom/updates": {
"exec": "~/.config/waybar/modules/update-check.sh",
"interval": 900,
"return-type": "json",
"format": "{text}",
"on-click": "kitty -e fish -ic 'update'",
"on-output": "class: no-updates",
"on-error": "class: updates-available",
"tooltip": false
},
}

127
.config/waybar/mediaplayer.py Executable file
View file

@ -0,0 +1,127 @@
#!/usr/bin/env python3
import argparse
import logging
import sys
import signal
import gi
import json
gi.require_version('Playerctl', '2.0')
from gi.repository import Playerctl, GLib
logger = logging.getLogger(__name__)
def write_output(text, player):
logger.info('Writing output')
output = {'text': text,
'class': 'custom-' + player.props.player_name,
'alt': player.props.player_name}
sys.stdout.write(json.dumps(output) + '\n')
sys.stdout.flush()
def on_play(player, status, manager):
logger.info('Received new playback status')
on_metadata(player, player.props.metadata, manager)
def on_metadata(player, metadata, manager):
logger.info('Received new metadata')
track_info = ''
if player.props.player_name == 'spotify' and \
'mpris:trackid' in metadata.keys() and \
':ad:' in player.props.metadata['mpris:trackid']:
track_info = 'AD PLAYING'
elif player.get_artist() != '' and player.get_title() != '':
track_info = '{artist} - {title}'.format(artist=player.get_artist(),
title=player.get_title())
else:
track_info = player.get_title()
if player.props.status != 'Playing' and track_info:
track_info = '' + track_info
write_output(track_info, player)
def on_player_appeared(manager, player, selected_player=None):
if player is not None and (selected_player is None or player.name == selected_player):
init_player(manager, player)
else:
logger.debug("New player appeared, but it's not the selected player, skipping")
def on_player_vanished(manager, player):
logger.info('Player has vanished')
sys.stdout.write('\n')
sys.stdout.flush()
def init_player(manager, name):
logger.debug('Initialize player: {player}'.format(player=name.name))
player = Playerctl.Player.new_from_name(name)
player.connect('playback-status', on_play, manager)
player.connect('metadata', on_metadata, manager)
manager.manage_player(player)
on_metadata(player, player.props.metadata, manager)
def signal_handler(sig, frame):
logger.debug('Received signal to stop, exiting')
sys.stdout.write('\n')
sys.stdout.flush()
# loop.quit()
sys.exit(0)
def parse_arguments():
parser = argparse.ArgumentParser()
# Increase verbosity with every occurance of -v
parser.add_argument('-v', '--verbose', action='count', default=0)
# Define for which player we're listening
parser.add_argument('--player')
return parser.parse_args()
def main():
arguments = parse_arguments()
# Initialize logging
logging.basicConfig(stream=sys.stderr, level=logging.DEBUG,
format='%(name)s %(levelname)s %(message)s')
# Logging is set by default to WARN and higher.
# With every occurrence of -v it's lowered by one
logger.setLevel(max((3 - arguments.verbose) * 10, 0))
# Log the sent command line arguments
logger.debug('Arguments received {}'.format(vars(arguments)))
manager = Playerctl.PlayerManager()
loop = GLib.MainLoop()
manager.connect('name-appeared', lambda *args: on_player_appeared(*args, arguments.player))
manager.connect('player-vanished', on_player_vanished)
signal.signal(signal.SIGINT, signal_handler)
signal.signal(signal.SIGTERM, signal_handler)
for player in manager.props.player_names:
if arguments.player is not None and arguments.player != player.name:
logger.debug('{player} is not the filtered player, skipping it'
.format(player=player.name)
)
continue
init_player(manager, player)
loop.run()
if __name__ == '__main__':
main()

42
.config/waybar/modules/mail.py Executable file
View file

@ -0,0 +1,42 @@
#!/usr/bin/python
import os
import imaplib
import mailsecrets
def getmails(username, password, server):
imap = imaplib.IMAP4_SSL(server, 993)
imap.login(username, password)
imap.select('INBOX')
ustatus, uresponse = imap.uid('search', None, 'UNSEEN')
if ustatus == 'OK':
unread_msg_nums = uresponse[0].split()
else:
unread_msg_nums = []
fstatus, fresponse = imap.uid('search', None, 'FLAGGED')
if fstatus == 'OK':
flagged_msg_nums = fresponse[0].split()
else:
flagged_msg_nums = []
return [len(unread_msg_nums), len(flagged_msg_nums)]
ping = os.system("ping " + mailsecrets.server + " -c1 > /dev/null 2>&1")
if ping == 0:
mails = getmails(mailsecrets.username, mailsecrets.password, mailsecrets.server)
text = ''
alt = ''
if mails[0] > 0:
text = alt = str(mails[0])
if mails[1] > 0:
alt = str(mails[1]) + "" + alt
else:
exit(1)
print('{"text":"' + text + '", "alt": "' + alt + '"}')
else:
exit(1)

View file

@ -0,0 +1,18 @@
#!/bin/sh
class=$(playerctl metadata --player=spotify_player --format '{{lc(status)}}')
icon=""
if [[ $class == "playing" ]]; then
info=$(playerctl metadata --player=spotify_player --format '{{artist}} - {{title}}')
if [[ ${#info} > 40 ]]; then
info=$(echo $info | cut -c1-40)"..."
fi
text=$info" "$icon
elif [[ $class == "paused" ]]; then
text=$icon
elif [[ $class == "stopped" ]]; then
text=""
fi
echo -e "{\"text\":\""$text"\", \"class\":\""$class"\"}"

View file

@ -0,0 +1,24 @@
#!/bin/sh
mount="/"
warning=20
critical=10
df -h -P -l "$mount" | awk -v warning=$warning -v critical=$critical '
/\/.*/ {
text=$5
tooltip="Filesystem: "$1"\rSize: "$2"\rUsed: "$3"\rAvail: "$4"\rUse%: "$5"\rMounted on: "$6
use=$5
exit 0
}
END {
class=""
gsub(/%$/,"",use)
if ((100 - use) < critical) {
class="critical"
} else if ((100 - use) < warning) {
class="warning"
}
print "{\"text\":\""text"\", \"percentage\":"use",\"tooltip\":\""tooltip"\", \"class\":\""class"\"}"
}
'

View file

@ -0,0 +1,8 @@
#!/bin/bash
updates=$(($(checkupdates 2>/dev/null | wc -l) + $(paru -Qum 2>/dev/null | wc -l)))
if [ "$updates" -gt 0 ]; then
echo '{"text":"⟳","class":"updates-available"}'
else
echo '{"text":"⟳","class":"no-updates"}'
fi

View file

@ -0,0 +1,79 @@
#!/bin/bash
cachedir=~/.cache/rbn
cachefile=${0##*/}-$1
if [ ! -d $cachedir ]; then
mkdir -p $cachedir
fi
if [ ! -f $cachedir/$cachefile ]; then
touch $cachedir/$cachefile
fi
# Save current IFS
SAVEIFS=$IFS
# Change IFS to new line.
IFS=$'\n'
cacheage=$(($(date +%s) - $(stat -c '%Y' "$cachedir/$cachefile")))
if [ $cacheage -gt 1740 ] || [ ! -s $cachedir/$cachefile ]; then
data=($(curl -s https://en.wttr.in/$1\?0qnT 2>&1))
echo ${data[0]} | cut -f1 -d, > $cachedir/$cachefile
echo ${data[1]} | sed -E 's/^.{15}//' >> $cachedir/$cachefile
echo ${data[2]} | sed -E 's/^.{15}//' >> $cachedir/$cachefile
fi
weather=($(cat $cachedir/$cachefile))
# Restore IFSClear
IFS=$SAVEIFS
temperature=$(echo ${weather[2]} | sed -E 's/([[:digit:]])+\.\./\1 to /g')
#echo ${weather[1]##*,}
# https://fontawesome.com/icons?s=solid&c=weather
case $(echo ${weather[1]##*,} | tr '[:upper:]' '[:lower:]') in
"clear" | "sunny")
condition=""
;;
"partly cloudy")
condition="杖"
;;
"cloudy")
condition=""
;;
"overcast")
condition=""
;;
"mist" | "fog" | "freezing fog")
condition=""
;;
"patchy rain possible" | "patchy light drizzle" | "light drizzle" | "patchy light rain" | "light rain" | "light rain shower" | "rain")
condition=""
;;
"moderate rain at times" | "moderate rain" | "heavy rain at times" | "heavy rain" | "moderate or heavy rain shower" | "torrential rain shower" | "rain shower")
condition=""
;;
"patchy snow possible" | "patchy sleet possible" | "patchy freezing drizzle possible" | "freezing drizzle" | "heavy freezing drizzle" | "light freezing rain" | "moderate or heavy freezing rain" | "light sleet" | "ice pellets" | "light sleet showers" | "moderate or heavy sleet showers")
condition="ﭽ"
;;
"blowing snow" | "moderate or heavy sleet" | "patchy light snow" | "light snow" | "light snow showers")
condition="流"
;;
"blizzard" | "patchy moderate snow" | "moderate snow" | "patchy heavy snow" | "heavy snow" | "moderate or heavy snow with thunder" | "moderate or heavy snow showers")
condition="ﰕ"
;;
"thundery outbreaks possible" | "patchy light rain with thunder" | "moderate or heavy rain with thunder" | "patchy light snow with thunder")
condition=""
;;
*)
condition=""
echo -e "{\"text\":\""$condition"\", \"alt\":\""${weather[0]}"\", \"tooltip\":\""${weather[0]}: $temperature ${weather[1]}"\"}"
;;
esac
#echo $temp $condition
echo -e "{\"text\":\""$temperature $condition"\", \"alt\":\""${weather[0]}"\", \"tooltip\":\""${weather[0]}: $temperature ${weather[1]}"\"}"

44
.config/waybar/style.css Normal file
View file

@ -0,0 +1,44 @@
@import url("./colors.css");
* {
border: none;
border-radius: 0;
font-family: Iosevka;
font-size: 11pt;
min-height: 0;
}
window#waybar {
opacity: 1;
background: @background-darker;
color: @foreground;
border-bottom: 2px solid @background;
}
#workspaces button {
padding: 0 10px;
background: @background;
color: @foreground;
}
#workspaces button:hover {
box-shadow: inherit;
text-shadow: inherit;
background-image: linear-gradient(0deg, @selection, @background-darker);
}
#workspaces button.focused,
#workspaces button.active {
background-image: linear-gradient(0deg, @purple, @selection);
}
#workspaces button.urgent {
background-image: linear-gradient(0deg, @red, @background-darker);
}
#taskbar button.active {
background-image: linear-gradient(0deg, @selection, @background-darker);
}
#clock {
padding: 0 4px;
background: @background;
}
#custom-updates.no-updates {
color: #f8f8f2;
}
#custom-updates.updates-available {
color: #bd93f9;
}

10
.config/waybar/waybar.sh Executable file
View file

@ -0,0 +1,10 @@
#!/usr/bin/env sh
# Terminate already running bar instances
killall -q waybar
# Wait until the processes have been shut down
while pgrep -x waybar >/dev/null; do sleep 1; done
# Launch main
waybar &

5
.config/waybar/wittr.sh Executable file
View file

@ -0,0 +1,5 @@
#!/usr/bin/sh
req=$(curl -s wttr.in/CITY?format="%t|%l+(%c%f)+%h,+%C")
bar=$(echo $req | awk -F "|" '{print $1}')
tooltip=$(echo $req | awk -F "|" '{print $2}')
echo "{\"text\":\"$bar\", \"tooltip\":\"$tooltip\"}"

36
.config/wlogout/layout Normal file
View file

@ -0,0 +1,36 @@
{
"label" : "lock",
"action" : "hyprlock",
"text" : "Lock",
"keybind" : "l"
}
{
"label" : "hibernate",
"action" : "systemctl hibernate",
"text" : "Hibernate",
"keybind" : "h"
}
{
"label" : "logout",
"action" : "hyprctl dispatch exit",
"text" : "Logout",
"keybind" : "e"
}
{
"label" : "shutdown",
"action" : "systemctl poweroff",
"text" : "Shutdown",
"keybind" : "s"
}
{
"label" : "suspend",
"action" : "systemctl suspend",
"text" : "Suspend",
"keybind" : "u"
}
{
"label" : "reboot",
"action" : "systemctl reboot",
"text" : "Reboot",
"keybind" : "r"
}

51
.config/wlogout/style.css Normal file
View file

@ -0,0 +1,51 @@
* {
background-image: none;
box-shadow: none;
}
window {
background-color: rgba(40, 42, 54, 0.8); /* DraculaBackground and slightly transparent */
}
button {
border-radius: 4;
margin: 5;
border-color: #44475a; /* DraculaPurple */
text-decoration-color: #BD93F9; /* DraculaPurple */
color: #BD93F9; /* DraculaPurple */
background-color: #282A36; /* DraculaBackground */
border-style: solid;
border-width: 2px;
background-repeat: no-repeat;
background-position: center;
background-size: 25%;
}
button:focus, button:active, button:hover {
border-color: #BD93F9; /* DraculaPurple */
outline-style: none;
}
#lock {
background-image: image(url("/usr/share/wlogout/icons/lock.png"), url("/usr/local/share/wlogout/icons/lock.png"));
}
#logout {
background-image: image(url("/usr/share/wlogout/icons/logout.png"), url("/usr/local/share/wlogout/icons/logout.png"));
}
#suspend {
background-image: image(url("/usr/share/wlogout/icons/suspend.png"), url("/usr/local/share/wlogout/icons/suspend.png"));
}
#hibernate {
background-image: image(url("/usr/share/wlogout/icons/hibernate.png"), url("/usr/local/share/wlogout/icons/hibernate.png"));
}
#shutdown {
background-image: image(url("/usr/share/wlogout/icons/shutdown.png"), url("/usr/local/share/wlogout/icons/shutdown.png"));
}
#reboot {
background-image: image(url("/usr/share/wlogout/icons/reboot.png"), url("/usr/local/share/wlogout/icons/reboot.png"));
}

1
.config/wob/wob.ini Symbolic link
View file

@ -0,0 +1 @@
/home/henry/.config/wob/wob_horizontal.ini

View file

@ -0,0 +1,59 @@
; WOB CONFIG
; ============================
; This is a Dracula theme for wob.
; There include examples and descriptions of all the options available.
; Only modified options are uncommented.
; ============================
; `max` This value will be represented as fully filled bar.
;max = 100
; `timeout` Timeout after which wob hides itself, in milliseconds.
;timeout = 1000
; `width` Width of wob, in pixels.
;width = 400
; `height` Height of wob, in pixels.
;height = 50
; `border_offset` Border offset, in pixels.
;border_offset = 4
; `border_size` Border size, in pixels.
;border_size = 4
; `bar_padding` Bar padding, in pixels.
;bar_padding = 4
; `orientation` Orientation of the bar, one of horizontal and vertical. (only available after release 0.14.2 or in master branch)
; You probably want to set inverse *width* and *height* values for vertical orientation.
; This feature is implemented after the release 0.14.2 and will be available in the next release or you can build it from master branch.
;orientation = horizontal
; `margin` Anchor margin, in pixels. Either as a single value or 4 values (top right bottom left).
; (using 4 values are only available after release 0.14.2 or in master branch)
margin = 50
; `anchor` Anchor point, combination of top, left, right, bottom, center.
anchor = bottom center
; `overflow_mode` Overflow mode, one of wrap, and nowrap.
; *wrap*: wrap value so *max* + 20 will be displayed as 20
; *nowrap* values > *max* will be displayed as just *max*
;overflow_mode = wrap
; `output_mode` Output mode, one of whitelist, all, focused.
; *whitelist*: show wob only on outputs defined in *output.\** sections of config file
; *all*: show wob on all available outputs
; *focused*: show wob on compositor default (focused) output
;output_mode = focused
; `background_color` Background color, in RRGGBB[AA] format.
background_color = 282a36ff
; `bar_color` Bar color, in RRGGBB[AA] format.
bar_color = bd93f9ff
; `border_color` Border color, in RRGGBB[AA] format.
border_color = bd93f9ff
; `overflow_background_color` Overflow background color, in RRGGBB[AA] format.
overflow_background_color = 282a36ff
; `overflow_bar_color` Overflow bar color, in RRGGBB[AA] format.
overflow_bar_color = ff79c6ff
; `overflow_border_color` Overflow border color, in RRGGBB[AA] format.
overflow_border_color = bd93f9ff
[style.muted]
bar_color = 6272a4ff
overflow_bar_color = 6272a4ff

235
.pacman.list Normal file
View file

@ -0,0 +1,235 @@
1password
accountsservice
adobe-source-han-sans-cn-fonts
adobe-source-han-sans-jp-fonts
adobe-source-han-sans-kr-fonts
alsa-firmware
alsa-plugins
alsa-utils
awesome-terminal-fonts
base
base-devel
bash-completion
bemenu
bemenu-wayland
bind
bluez
bluez-hid2hci
bluez-libs
bluez-utils
btop
btrfs-assistant
btrfs-progs
cachyos-fish-config
cachyos-gaming-applications
cachyos-gaming-meta
cachyos-grub-theme
cachyos-hello
cachyos-hooks
cachyos-hyprland-settings
cachyos-kernel-manager
cachyos-keyring
cachyos-mirrorlist
cachyos-nord-gtk-theme-git
cachyos-packageinstaller
cachyos-rate-mirrors
cachyos-settings
cachyos-snapper-support
cachyos-v3-mirrorlist
cachyos-v4-mirrorlist
cachyos-wallpapers
capitaine-cursors
chwd
cpupower
cryptsetup
device-mapper
dhclient
diffutils
discord
dmidecode
dmraid
dnsmasq
dosfstools
duf
e2fsprogs
efibootmgr
efitools
egl-wayland
ethtool
exfatprogs
f2fs-tools
fastfetch
ffmpegthumbnailer
firefox
fsarchiver
git
glances
godot
gparted
grimblast-git
gslapper
gst-libav
gst-plugin-pipewire
gst-plugin-va
gst-plugins-bad
gst-plugins-ugly
haveged
hdparm
htop
hwdetect
hwinfo
hypridle
hyprland
hyprlock
hyprpaper
inetutils
intel-media-driver
intel-ucode
iptables-nft
iwd
jfsutils
kitty
kvantum
kvantum-theme-nordic-git
lazygit
less
lib32-mesa
lib32-nvidia-utils
lib32-opencl-nvidia
lib32-vulkan-intel
libdvdcss
libgsf
libopenraw
libva-nvidia-driver
libwnck3
limine
limine-mkinitcpio-hook
limine-snapper-sync
linux-cachyos
linux-cachyos-headers
linux-cachyos-lts
linux-cachyos-lts-headers
linux-cachyos-lts-nvidia-open
linux-cachyos-nvidia-open
linux-firmware
logrotate
lsb-release
lsscsi
lvm2
mako
man-db
man-pages
mdadm
meld
mesa-utils
mkinitcpio
modemmanager
mtools
mumble
nano
nano-syntax-highlighting
nautilus
netctl
networkmanager
networkmanager-openvpn
nfs-utils
nilfs-utils
noto-color-emoji-fontconfig
noto-fonts
noto-fonts-cjk
noto-fonts-emoji
nss-mdns
ntp
nvidia-prime
nvidia-settings
nvidia-utils
nwg-displays
nwg-look
obsidian
octopi
opencl-nvidia
opendesktop-fonts
openssh
os-prober
pacman-contrib
pamixer
paru
pavucontrol
perl
pipewire-alsa
pipewire-pulse
pkgfile
plocate
polkit-kde-agent
poppler-glib
power-profiles-daemon
pv
python
python-defusedxml
python-packaging
qt5ct
rebuild-detector
reflector
ripgrep
rofi
rofi-emoji
rsync
rtkit
s-nail
sddm
sg3_utils
slurp
smartmontools
snapper
sof-firmware
spotify-player
spotifyd
stow
sudo
swappy
swaybg
swaylock-effects-git
swaylock-fancy-git
switcheroo-control
swww
sysc-greet-hyprland
sysfsutils
texinfo
ttf-bitstream-vera
ttf-dejavu
ttf-liberation
ttf-meslo-nerd
ttf-opensans
ufw
unrar
unzip
upower
usb_modeswitch
usbutils
uwsm
vi
vlc-plugins-all
vulkan-intel
waybar
wget
which
wireless-regdb
wireplumber
wl-clipboard
wlogout
wob
wofi
wpa_supplicant
xdg-desktop-portal-hyprland
xdg-user-dirs
xf86-input-libinput
xfsprogs
xl2tpd
xorg-server
xorg-xdpyinfo
xorg-xinit
xorg-xinput
xorg-xkill
xorg-xrandr
xorg-xwayland
zed