summaryrefslogtreecommitdiff
path: root/dotfiles/hyprland
diff options
context:
space:
mode:
Diffstat (limited to 'dotfiles/hyprland')
-rw-r--r--dotfiles/hyprland/.config/hypr/hyprland.conf31
-rw-r--r--dotfiles/hyprland/.config/themes/dupre/dunstrc4
-rw-r--r--dotfiles/hyprland/.config/themes/dupre/waybar.css20
-rw-r--r--dotfiles/hyprland/.config/themes/hudson/dunstrc4
-rw-r--r--dotfiles/hyprland/.config/themes/hudson/waybar.css20
-rw-r--r--dotfiles/hyprland/.config/waybar/config10
-rw-r--r--dotfiles/hyprland/.config/waybar/style.css20
-rwxr-xr-xdotfiles/hyprland/.local/bin/pinentry-fuzzel2
-rwxr-xr-xdotfiles/hyprland/.local/bin/set-theme18
-rwxr-xr-xdotfiles/hyprland/.local/bin/waybar-disk7
10 files changed, 109 insertions, 27 deletions
diff --git a/dotfiles/hyprland/.config/hypr/hyprland.conf b/dotfiles/hyprland/.config/hypr/hyprland.conf
index a279ced..755edad 100644
--- a/dotfiles/hyprland/.config/hypr/hyprland.conf
+++ b/dotfiles/hyprland/.config/hypr/hyprland.conf
@@ -24,6 +24,7 @@ exec-once = mpd
exec-once = signal-desktop --start-in-tray --ozone-platform=wayland
exec-once = protonmail-bridge --no-window
exec-once = insync start
+exec-once = set-theme "$(cat ~/.config/current-theme 2>/dev/null || echo hudson)"
# ============================================================================
# Environment Variables
@@ -112,6 +113,27 @@ xwayland {
}
# ============================================================================
+# Plugins
+# ============================================================================
+plugin {
+ hy3 {
+ tabs {
+ col.active = rgba(444444ff)
+ col.active.text = rgba(bbbbbbff)
+ col.active.border = rgba(daa520ff)
+ col.focused = rgba(444444ff)
+ col.focused.text = rgba(bbbbbbff)
+ col.focused.border = rgba(daa520ff)
+ col.inactive = rgba(333333ff)
+ col.inactive.text = rgba(888888ff)
+ col.inactive.border = rgba(333333ff)
+ col.urgent = rgba(cc6666ff)
+ col.locked = rgba(8abeb7ff)
+ }
+ }
+}
+
+# ============================================================================
# Window Rules (Hyprland 0.53+ syntax: match:CONDITION, RULE)
# ============================================================================
# Floating windows (from DWM rules)
@@ -132,12 +154,12 @@ bind = $mod, T, exec, foot
bind = $mod, E, exec, emacsclient -c -a "" || emacs
bind = $mod, W, exec, $BROWSER
bind = $mod, P, exec, fuzzel
+bind = $mod, F, exec, nautilus
# From sxhkdrc
bind = $mod, SPACE, exec, fuzzel
bind = $mod SHIFT, W, exec, $ALTBROWSER
bind = CTRL ALT, W, exec, tor-browser
-bind = CTRL ALT, F, exec, nautilus
bind = $mod, V, exec, virtualbox
bind = $mod SHIFT, L, exec, calibre
bind = $mod SHIFT, R, exec, shortwave
@@ -231,7 +253,6 @@ workspace = special:term, on-created-empty:foot --app-id foot-term tmux
workspace = special:audio, on-created-empty:foot --app-id foot-audio pulsemixer
workspace = special:monitor, on-created-empty:foot --app-id foot-monitor gotop
workspace = special:music, on-created-empty:foot --app-id foot-music ncmpcpp
-workspace = special:files, on-created-empty:foot --app-id foot-files ranger
workspace = special:htop, on-created-empty:foot --app-id foot-htop htop
workspace = special:network, on-created-empty:foot --app-id foot-network nmtui
@@ -240,7 +261,6 @@ bind = $mod SHIFT, RETURN, togglespecialworkspace, term
bind = $mod, A, togglespecialworkspace, audio
bind = $mod, M, togglespecialworkspace, monitor
bind = $mod, SLASH, togglespecialworkspace, music
-bind = $mod, F, togglespecialworkspace, files
bind = $mod SHIFT, H, togglespecialworkspace, htop
# Window rules (using app-id/class matching, Hyprland 0.53+ syntax)
@@ -264,11 +284,6 @@ windowrule = match:class ^(foot-music)$, float on
windowrule = match:class ^(foot-music)$, size (monitor_w*0.6) (monitor_h*0.6)
windowrule = match:class ^(foot-music)$, center on
-# File manager
-windowrule = match:class ^(foot-files)$, float on
-windowrule = match:class ^(foot-files)$, size (monitor_w*0.6) (monitor_h*0.6)
-windowrule = match:class ^(foot-files)$, center on
-
# Htop
windowrule = match:class ^(foot-htop)$, float on
windowrule = match:class ^(foot-htop)$, size (monitor_w*0.6) (monitor_h*0.6)
diff --git a/dotfiles/hyprland/.config/themes/dupre/dunstrc b/dotfiles/hyprland/.config/themes/dupre/dunstrc
index 12ffac0..0847fdf 100644
--- a/dotfiles/hyprland/.config/themes/dupre/dunstrc
+++ b/dotfiles/hyprland/.config/themes/dupre/dunstrc
@@ -13,7 +13,7 @@ notification_limit = 5
gap_size = 12
padding = 12
horizontal_padding = 20
-frame_width = 2
+frame_width = 0
sort = no
corner_radius = 10
@@ -27,7 +27,7 @@ frame_color = "#d7af5f"
highlight = "#d7af5f, #ccc768"
# Text (size in points, Pango syntax)
-font = BerkeleyMono Nerd Font 13
+font = BerkeleyMono Nerd Font 10
markup = full
format = "<small>%a</small>\n<b>%s</b>\n%b"
alignment = left
diff --git a/dotfiles/hyprland/.config/themes/dupre/waybar.css b/dotfiles/hyprland/.config/themes/dupre/waybar.css
index c5333f5..18ba0f1 100644
--- a/dotfiles/hyprland/.config/themes/dupre/waybar.css
+++ b/dotfiles/hyprland/.config/themes/dupre/waybar.css
@@ -49,7 +49,7 @@ window#waybar {
#cpu,
#temperature,
#memory,
-#disk,
+#custom-disk,
#custom-netspeed,
#battery,
#wireplumber,
@@ -73,7 +73,7 @@ window#waybar {
#cpu:hover,
#temperature:hover,
#memory:hover,
-#disk:hover,
+#custom-disk:hover,
#custom-netspeed:hover,
#wireplumber:hover,
#sysmonitor:hover,
@@ -94,6 +94,22 @@ window#waybar {
color: #d47c59;
}
+#temperature.warning {
+ color: #d7af5f;
+}
+
+#temperature.critical {
+ color: #d47c59;
+}
+
+#custom-disk.warning {
+ color: #d7af5f;
+}
+
+#custom-disk.critical {
+ color: #d47c59;
+}
+
#battery.warning {
color: #d7af5f;
}
diff --git a/dotfiles/hyprland/.config/themes/hudson/dunstrc b/dotfiles/hyprland/.config/themes/hudson/dunstrc
index 2cbf0e6..f27bd33 100644
--- a/dotfiles/hyprland/.config/themes/hudson/dunstrc
+++ b/dotfiles/hyprland/.config/themes/hudson/dunstrc
@@ -13,7 +13,7 @@ notification_limit = 5
gap_size = 12
padding = 12
horizontal_padding = 20
-frame_width = 2
+frame_width = 0
sort = no
corner_radius = 10
@@ -27,7 +27,7 @@ frame_color = "#daa520"
highlight = "#daa520, #f0c674"
# Text (size in points, Pango syntax)
-font = BerkeleyMono Nerd Font 13
+font = BerkeleyMono Nerd Font 10
markup = full
format = "<small>%a</small>\n<b>%s</b>\n%b"
alignment = left
diff --git a/dotfiles/hyprland/.config/themes/hudson/waybar.css b/dotfiles/hyprland/.config/themes/hudson/waybar.css
index 4ee0615..299f1c2 100644
--- a/dotfiles/hyprland/.config/themes/hudson/waybar.css
+++ b/dotfiles/hyprland/.config/themes/hudson/waybar.css
@@ -49,7 +49,7 @@ window#waybar {
#cpu,
#temperature,
#memory,
-#disk,
+#custom-disk,
#custom-netspeed,
#battery,
#wireplumber,
@@ -73,7 +73,7 @@ window#waybar {
#cpu:hover,
#temperature:hover,
#memory:hover,
-#disk:hover,
+#custom-disk:hover,
#custom-netspeed:hover,
#wireplumber:hover,
#sysmonitor:hover,
@@ -94,6 +94,22 @@ window#waybar {
color: #ff5858;
}
+#temperature.warning {
+ color: #daa520;
+}
+
+#temperature.critical {
+ color: #ff5858;
+}
+
+#custom-disk.warning {
+ color: #daa520;
+}
+
+#custom-disk.critical {
+ color: #ff5858;
+}
+
#battery.warning {
color: #daa520;
}
diff --git a/dotfiles/hyprland/.config/waybar/config b/dotfiles/hyprland/.config/waybar/config
index 5b9879e..fdff160 100644
--- a/dotfiles/hyprland/.config/waybar/config
+++ b/dotfiles/hyprland/.config/waybar/config
@@ -28,7 +28,7 @@
"cpu",
"temperature",
"memory",
- "disk",
+ "custom/disk",
"battery"
]
},
@@ -62,6 +62,7 @@
"interval": 10,
"hwmon-path-abs": "/sys/devices/pci0000:00/0000:00:18.3/hwmon",
"input-filename": "temp1_input",
+ "warning-threshold": 70,
"critical-threshold": 80,
"format": "<span size='large'>󰔏</span> {temperatureC}°C",
"format-critical": "<span size='large'>󰸁</span> {temperatureC}°C",
@@ -74,10 +75,11 @@
"on-click": "toggle-scratchpad monitor"
},
- "disk": {
+ "custom/disk": {
+ "exec": "waybar-disk",
+ "return-type": "json",
"interval": 30,
- "format": "<span size='large'>󰆼</span> {percentage_used}%",
- "path": "/",
+ "format": "<span size='large'>󰆼</span> {}",
"on-click": "toggle-scratchpad monitor"
},
diff --git a/dotfiles/hyprland/.config/waybar/style.css b/dotfiles/hyprland/.config/waybar/style.css
index 4ee0615..299f1c2 100644
--- a/dotfiles/hyprland/.config/waybar/style.css
+++ b/dotfiles/hyprland/.config/waybar/style.css
@@ -49,7 +49,7 @@ window#waybar {
#cpu,
#temperature,
#memory,
-#disk,
+#custom-disk,
#custom-netspeed,
#battery,
#wireplumber,
@@ -73,7 +73,7 @@ window#waybar {
#cpu:hover,
#temperature:hover,
#memory:hover,
-#disk:hover,
+#custom-disk:hover,
#custom-netspeed:hover,
#wireplumber:hover,
#sysmonitor:hover,
@@ -94,6 +94,22 @@ window#waybar {
color: #ff5858;
}
+#temperature.warning {
+ color: #daa520;
+}
+
+#temperature.critical {
+ color: #ff5858;
+}
+
+#custom-disk.warning {
+ color: #daa520;
+}
+
+#custom-disk.critical {
+ color: #ff5858;
+}
+
#battery.warning {
color: #daa520;
}
diff --git a/dotfiles/hyprland/.local/bin/pinentry-fuzzel b/dotfiles/hyprland/.local/bin/pinentry-fuzzel
index 4cbe6b7..5c64968 100755
--- a/dotfiles/hyprland/.local/bin/pinentry-fuzzel
+++ b/dotfiles/hyprland/.local/bin/pinentry-fuzzel
@@ -83,7 +83,7 @@ while read cmd rest; do
else
LABEL="reenter: "
fi
- PASS=$(fuzzel --prompt "$LABEL" --width 25 --lines 0 --cache /dev/null --password --dmenu)
+ PASS=$(fuzzel --prompt "$LABEL" --width 35 --lines 0 --cache /dev/null --password --dmenu --border-color=d47c59ff)
if [ -z "$PASS" ]; then
# User cancelled - return error to GPG
rm -f "$LASTFILE"
diff --git a/dotfiles/hyprland/.local/bin/set-theme b/dotfiles/hyprland/.local/bin/set-theme
index e95b27b..9bbcbd4 100755
--- a/dotfiles/hyprland/.local/bin/set-theme
+++ b/dotfiles/hyprland/.local/bin/set-theme
@@ -56,8 +56,13 @@ apply_theme() {
# hy3 tab bar (monocle mode)
hyprctl keyword plugin:hy3:tabs:col.active "rgba(474544ff)"
hyprctl keyword plugin:hy3:tabs:col.active.text "rgba(969385ff)"
- hyprctl keyword plugin:hy3:tabs:col.inactive "rgba(d0cbc0ff)"
- hyprctl keyword plugin:hy3:tabs:col.inactive.text "rgba(d0cbc0ff)"
+ hyprctl keyword plugin:hy3:tabs:col.active.border "rgba(d7af5fff)"
+ hyprctl keyword plugin:hy3:tabs:col.focused "rgba(474544ff)"
+ hyprctl keyword plugin:hy3:tabs:col.focused.text "rgba(969385ff)"
+ hyprctl keyword plugin:hy3:tabs:col.focused.border "rgba(d7af5fff)"
+ hyprctl keyword plugin:hy3:tabs:col.inactive "rgba(2a2725ff)"
+ hyprctl keyword plugin:hy3:tabs:col.inactive.text "rgba(6c6a60ff)"
+ hyprctl keyword plugin:hy3:tabs:col.inactive.border "rgba(2a2725ff)"
hyprctl keyword plugin:hy3:tabs:col.urgent "rgba(d47c59ff)"
hyprctl keyword plugin:hy3:tabs:col.locked "rgba(8a9496ff)"
;;
@@ -68,8 +73,13 @@ apply_theme() {
# hy3 tab bar (monocle mode)
hyprctl keyword plugin:hy3:tabs:col.active "rgba(444444ff)"
hyprctl keyword plugin:hy3:tabs:col.active.text "rgba(bbbbbbff)"
- hyprctl keyword plugin:hy3:tabs:col.inactive "rgba(c5c8c6ff)"
- hyprctl keyword plugin:hy3:tabs:col.inactive.text "rgba(c5c8c6ff)"
+ hyprctl keyword plugin:hy3:tabs:col.active.border "rgba(daa520ff)"
+ hyprctl keyword plugin:hy3:tabs:col.focused "rgba(444444ff)"
+ hyprctl keyword plugin:hy3:tabs:col.focused.text "rgba(bbbbbbff)"
+ hyprctl keyword plugin:hy3:tabs:col.focused.border "rgba(daa520ff)"
+ hyprctl keyword plugin:hy3:tabs:col.inactive "rgba(333333ff)"
+ hyprctl keyword plugin:hy3:tabs:col.inactive.text "rgba(888888ff)"
+ hyprctl keyword plugin:hy3:tabs:col.inactive.border "rgba(333333ff)"
hyprctl keyword plugin:hy3:tabs:col.urgent "rgba(cc6666ff)"
hyprctl keyword plugin:hy3:tabs:col.locked "rgba(8abeb7ff)"
;;
diff --git a/dotfiles/hyprland/.local/bin/waybar-disk b/dotfiles/hyprland/.local/bin/waybar-disk
new file mode 100755
index 0000000..6050653
--- /dev/null
+++ b/dotfiles/hyprland/.local/bin/waybar-disk
@@ -0,0 +1,7 @@
+#!/bin/sh
+# Waybar disk usage module with warning/critical states
+PCT=$(df --output=pcent / | tail -1 | tr -d ' %')
+CLASS=""
+[ "$PCT" -ge 80 ] && CLASS="warning"
+[ "$PCT" -ge 90 ] && CLASS="critical"
+printf '{"text": "%s%%", "class": "%s", "tooltip": "Root: %s%% used"}\n' "$PCT" "$CLASS" "$PCT"