summaryrefslogtreecommitdiff
path: root/dotfiles/hyprland
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-02-10 10:47:49 -0600
committerCraig Jennings <c@cjennings.net>2026-02-10 10:47:49 -0600
commitbfbee542acb164c9093d353bde8448c1f86796f7 (patch)
tree6b44df89592e6af9e7e1e2a64a138ca6221f5bbd /dotfiles/hyprland
parenteae8dae5f3735a677b25e15721e83b81a08611e1 (diff)
feat(waybar): SVG workspace circles, improved arch logo, remove mod+0
Replace per-workspace SVG mapping with hybrid approach: two circle SVGs (active gold, inactive dark) as background-image with text overlay for workspace numbers. Update arch-logo.svg with padded/crisp variant. Remove sysmonitor margin to fix bar height inflation. Remove mod+0 binding to restrict workspaces to 1-9. Sync dupre theme files. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Diffstat (limited to 'dotfiles/hyprland')
-rw-r--r--dotfiles/hyprland/.config/foot/foot.ini44
-rw-r--r--dotfiles/hyprland/.config/fuzzel/fuzzel.ini22
-rw-r--r--dotfiles/hyprland/.config/hypr/hyprland.conf2
-rw-r--r--dotfiles/hyprland/.config/hypr/hyprlock.conf22
-rw-r--r--dotfiles/hyprland/.config/themes/dupre/waybar.css1
-rw-r--r--dotfiles/hyprland/.config/themes/hudson/waybar.css1
-rw-r--r--dotfiles/hyprland/.config/waybar/arch-logo.svg6
-rw-r--r--dotfiles/hyprland/.config/waybar/style.css53
-rw-r--r--dotfiles/hyprland/.config/waybar/ws-icons/ws-active.svg3
-rw-r--r--dotfiles/hyprland/.config/waybar/ws-icons/ws-inactive.svg3
10 files changed, 75 insertions, 82 deletions
diff --git a/dotfiles/hyprland/.config/foot/foot.ini b/dotfiles/hyprland/.config/foot/foot.ini
index 2ef78d4..48c26a6 100644
--- a/dotfiles/hyprland/.config/foot/foot.ini
+++ b/dotfiles/hyprland/.config/foot/foot.ini
@@ -1,5 +1,5 @@
-# foot terminal configuration - Hudson theme
-# Tomorrow Night + Goldenrod accent
+# foot terminal configuration - Dupre theme
+# Warm, earthy colors from dupre-theme.el
[main]
term=xterm-256color
@@ -10,29 +10,29 @@ pad=8x8
lines=10000
[colors]
-# Hudson theme - Tomorrow Night + Goldenrod accent
-background=222222
-foreground=eeeeee
+# Dupre theme colors (from Emacs dupre-theme.el)
+background=151311
+foreground=f0fef0
-# Regular colors (0-7)
-regular0=222222 # black
-regular1=cc6666 # red
-regular2=b5bd68 # green
-regular3=f0c674 # yellow
-regular4=81a2be # blue
+# Regular colors (0-7) - dupre palette
+regular0=252321 # black (dupre-bg+1)
+regular1=d47c59 # red (dupre-red)
+regular2=a4ac64 # green (dupre-green)
+regular3=d7af5f # yellow (dupre-yellow)
+regular4=67809c # blue (dupre-blue)
regular5=b294bb # magenta
-regular6=8abeb7 # cyan
-regular7=c5c8c6 # white
+regular6=8a9496 # cyan (dupre-steel)
+regular7=d0cbc0 # white (dupre-gray+2)
# Bright colors (8-15)
-bright0=444444 # bright black
-bright1=d54e53 # bright red
-bright2=b9ca4a # bright green
-bright3=e0b040 # bright yellow (adjusted for gold)
-bright4=7aa6da # bright blue
+bright0=474544 # bright black (dupre-bg+2)
+bright1=edb08f # bright red (dupre-red+1)
+bright2=ccc768 # bright green (dupre-green+1)
+bright3=ffd75f # bright yellow (dupre-yellow+1)
+bright4=b2c3cc # bright blue (dupre-blue+1)
bright5=c397d8 # bright magenta
-bright6=70c0b1 # bright cyan
-bright7=eeeeee # bright white
+bright6=acb0b3 # bright cyan (dupre-steel+1)
+bright7=f0fef0 # bright white (dupre-fg)
-# Cursor: goldenrod on dark
-cursor=222222 daa520
+# Cursor: muted gold on dark
+cursor=151311 d7af5f
diff --git a/dotfiles/hyprland/.config/fuzzel/fuzzel.ini b/dotfiles/hyprland/.config/fuzzel/fuzzel.ini
index 39dabc0..f00ac8a 100644
--- a/dotfiles/hyprland/.config/fuzzel/fuzzel.ini
+++ b/dotfiles/hyprland/.config/fuzzel/fuzzel.ini
@@ -1,5 +1,5 @@
-# Fuzzel config - Hudson theme
-# Tomorrow Night + Goldenrod accent
+# Fuzzel config - Dupre theme
+# Warm, earthy colors from dupre-theme.el
[main]
# size is in points (fontconfig syntax)
@@ -17,15 +17,15 @@ exit-on-keyboard-focus-loss=yes
[colors]
# Format: RRGGBBAA
-background=222222f0
-text=eeeeeeff
-selection=daa520ff
-selection-text=222222ff
-border=daa520ff
-match=daa520ff
-prompt=bbbbbbff
-placeholder=888888ff
-input=eeeeeeff
+background=151311f0
+text=f0fef0ff
+selection=d7af5fff
+selection-text=151311ff
+border=d7af5fff
+match=d7af5fff
+prompt=969385ff
+placeholder=6c6a60ff
+input=f0fef0ff
[border]
width=2
diff --git a/dotfiles/hyprland/.config/hypr/hyprland.conf b/dotfiles/hyprland/.config/hypr/hyprland.conf
index f258353..54139af 100644
--- a/dotfiles/hyprland/.config/hypr/hyprland.conf
+++ b/dotfiles/hyprland/.config/hypr/hyprland.conf
@@ -225,7 +225,6 @@ bind = $mod, 6, workspace, 6
bind = $mod, 7, workspace, 7
bind = $mod, 8, workspace, 8
bind = $mod, 9, workspace, 9
-bind = $mod, 0, workspace, 10
# Move window to workspace (from DWM tag)
bind = $mod SHIFT, 1, movetoworkspacesilent, 1
@@ -237,7 +236,6 @@ bind = $mod SHIFT, 6, movetoworkspacesilent, 6
bind = $mod SHIFT, 7, movetoworkspacesilent, 7
bind = $mod SHIFT, 8, movetoworkspacesilent, 8
bind = $mod SHIFT, 9, movetoworkspacesilent, 9
-bind = $mod SHIFT, 0, movetoworkspacesilent, 10
# Monitor focus (from DWM focusmon)
bind = $mod, COMMA, focusmonitor, -1
diff --git a/dotfiles/hyprland/.config/hypr/hyprlock.conf b/dotfiles/hyprland/.config/hypr/hyprlock.conf
index f9c08bb..fd85651 100644
--- a/dotfiles/hyprland/.config/hypr/hyprlock.conf
+++ b/dotfiles/hyprland/.config/hypr/hyprlock.conf
@@ -1,5 +1,5 @@
-# Hyprlock configuration - Hudson theme
-# Tomorrow Night + Goldenrod accent
+# Hyprlock configuration - Dupre theme
+# Warm, earthy colors from dupre-theme.el
general {
disable_loading_bar = false
@@ -25,7 +25,7 @@ label {
monitor =
text = $TIME12
text_align = center
- color = rgb(bbbbbb)
+ color = rgb(969385)
font_size = 64
font_family = BerkeleyMono Nerd Font
position = 0, 15%
@@ -40,7 +40,7 @@ image {
size = 120
rounding = -1
border_size = 3
- border_color = rgb(daa520)
+ border_color = rgb(d7af5f)
position = 0, 0%
halign = center
valign = center
@@ -54,7 +54,7 @@ label {
monitor =
text = $USER
text_align = center
- color = rgb(daa520)
+ color = rgb(d7af5f)
font_size = 36
font_family = BerkeleyMono Nerd Font
position = 0, -7%
@@ -71,19 +71,19 @@ input-field {
dots_spacing = 0.15
dots_center = true
dots_rounding = -1
- outer_color = rgb(222222)
- inner_color = rgb(222222)
- font_color = rgb(bbbbbb)
+ outer_color = rgb(151311)
+ inner_color = rgb(151311)
+ font_color = rgb(969385)
fade_on_empty = true
fade_timeout = 1000
placeholder_text = <i>Password...</i>
hide_input = false
rounding = 8
- check_color = rgb(daa520)
- fail_color = rgb(d54e53)
+ check_color = rgb(d7af5f)
+ fail_color = rgb(d47c59)
fail_text = <i>$FAIL <b>($ATTEMPTS)</b></i>
fail_transition = 300
- capslock_color = rgb(e0b040)
+ capslock_color = rgb(ccc768)
numlock_color = -1
bothlock_color = -1
invert_numlock = false
diff --git a/dotfiles/hyprland/.config/themes/dupre/waybar.css b/dotfiles/hyprland/.config/themes/dupre/waybar.css
index 64ad36c..c2b2a9c 100644
--- a/dotfiles/hyprland/.config/themes/dupre/waybar.css
+++ b/dotfiles/hyprland/.config/themes/dupre/waybar.css
@@ -80,7 +80,6 @@ window#waybar {
}
#sysmonitor {
- margin: 0.3rem;
background-color: transparent;
border-radius: 1rem;
}
diff --git a/dotfiles/hyprland/.config/themes/hudson/waybar.css b/dotfiles/hyprland/.config/themes/hudson/waybar.css
index da1ad75..f46342b 100644
--- a/dotfiles/hyprland/.config/themes/hudson/waybar.css
+++ b/dotfiles/hyprland/.config/themes/hudson/waybar.css
@@ -79,7 +79,6 @@ window#waybar {
}
#sysmonitor {
- margin: 0.3rem;
background-color: transparent;
border-radius: 1rem;
}
diff --git a/dotfiles/hyprland/.config/waybar/arch-logo.svg b/dotfiles/hyprland/.config/waybar/arch-logo.svg
index 0c03976..9892ef8 100644
--- a/dotfiles/hyprland/.config/waybar/arch-logo.svg
+++ b/dotfiles/hyprland/.config/waybar/arch-logo.svg
@@ -1,4 +1,4 @@
-<svg xmlns="http://www.w3.org/2000/svg" width="64" height="64" viewBox="4 4 56 56" version="1.1">
- <circle style="fill:#67809c" cx="32" cy="32" r="28"/>
- <path style="fill:#ffffff" d="m 32.001272,8.2 c -1.781906,4.365386 -2.856728,7.224642 -4.83977,11.460214 1.217058,1.288514 2.708396,2.781644 5.13031,4.476314 C 29.687034,23.064586 27.913272,21.9961 26.584468,20.879242 24.04675,26.173342 20.066442,33.707228 11.999957,48.2 18.339392,44.540842 23.599636,42.287642 28.17934,41.4262 27.98224,40.580986 27.872528,39.662642 27.88066,38.707728 l 0.0058,-0.19708 c 0.09956,-4.061442 1.871392,-7.664814 4.374576,-7.453514 2.503192,0.2113 3.96354,4.160072 3.861952,8.2215 -0.0184,0.763944 -0.10356,1.4974 -0.253976,2.17803 4.528902,0.88787 9.8812,3.13497 16.131032,6.743328 -1.2333,-2.269444 -2.338612,-4.311344 -3.389064,-6.259772 -1.655914,-1.284056 -3.378888,-2.954142 -6.902038,-4.7624 2.419884,0.629844 4.1591,1.353144 5.510262,2.165844 C 36.531818,19.445258 35.664228,16.801558 32.000886,8.201214 Z"/>
+<svg xmlns="http://www.w3.org/2000/svg" width="64" height="64" viewBox="-3 -3 70 70" version="1.1">
+ <circle stroke="none" style="fill:#67809c" cx="32" cy="32" r="35"/>
+ <path shape-rendering="geometricPrecision" style="fill:#ffffff" d="m 32.001272,8.2 c -1.781906,4.365386 -2.856728,7.224642 -4.83977,11.460214 1.217058,1.288514 2.708396,2.781644 5.13031,4.476314 C 29.687034,23.064586 27.913272,21.9961 26.584468,20.879242 24.04675,26.173342 20.066442,33.707228 11.999957,48.2 18.339392,44.540842 23.599636,42.287642 28.17934,41.4262 27.98224,40.580986 27.872528,39.662642 27.88066,38.707728 l 0.0058,-0.19708 c 0.09956,-4.061442 1.871392,-7.664814 4.374576,-7.453514 2.503192,0.2113 3.96354,4.160072 3.861952,8.2215 -0.0184,0.763944 -0.10356,1.4974 -0.253976,2.17803 4.528902,0.88787 9.8812,3.13497 16.131032,6.743328 -1.2333,-2.269444 -2.338612,-4.311344 -3.389064,-6.259772 -1.655914,-1.284056 -3.378888,-2.954142 -6.902038,-4.7624 2.419884,0.629844 4.1591,1.353144 5.510262,2.165844 C 36.531818,19.445258 35.664228,16.801558 32.000886,8.201214 Z"/>
</svg>
diff --git a/dotfiles/hyprland/.config/waybar/style.css b/dotfiles/hyprland/.config/waybar/style.css
index 45ce837..4551de9 100644
--- a/dotfiles/hyprland/.config/waybar/style.css
+++ b/dotfiles/hyprland/.config/waybar/style.css
@@ -1,5 +1,5 @@
-/* Waybar style - Hudson theme */
-/* Tomorrow Night + Goldenrod accent */
+/* Waybar style - Dupre theme */
+/* Warm, earthy colors from dupre-theme.el */
* {
border: none;
@@ -24,14 +24,18 @@ window#waybar {
padding: 0;
margin: 0.15rem;
background-color: transparent;
- color: #bbbbbb;
+ color: #969385;
+ background-image: url("/home/cjennings/.config/waybar/ws-icons/ws-inactive.svg");
+ background-size: contain;
+ background-repeat: no-repeat;
+ background-position: center;
border-radius: 50%;
transition: all 0.3s ease;
}
#workspaces button.active {
- background: #daa520;
- color: #222222;
+ background-image: url("/home/cjennings/.config/waybar/ws-icons/ws-active.svg");
+ color: #151311;
}
#custom-menu {
@@ -48,15 +52,15 @@ window#waybar {
}
#workspaces button.urgent {
- background-color: rgba(255, 88, 88, 0.4);
+ background-color: rgba(212, 124, 89, 0.4);
}
.modules-right, .modules-left {
- background-color: #222222;
+ background-color: #151311;
border-radius: 1rem;
padding: 0.1rem 0.6rem;
margin: 0.3rem;
- border: 0.095rem solid #daa520;
+ border: 0.095rem solid #d7af5f;
box-shadow: 0rem 0.2rem 0.4rem rgba(0,0,0,0.5);
}
@@ -74,7 +78,7 @@ window#waybar {
#window {
padding: 0.45rem;
margin: 0.3rem;
- color: #bbbbbb;
+ color: #969385;
background-color: transparent;
border-radius: 1rem;
}
@@ -90,52 +94,39 @@ window#waybar {
#custom-disk:hover,
#custom-netspeed:hover,
#pulseaudio:hover,
-#idle_inhibitor:hover,
#sysmonitor:hover,
#custom-layout:hover {
- background-color: #444444;
+ background-color: #474544;
border-radius: 1rem;
}
-#clock {
- color: #eeeeee;
-}
-
-#pulseaudio {
- color: #bbbbbb;
-}
#custom-netspeed.disconnected {
- color: #ff5858;
+ color: #d47c59;
}
#temperature.warning {
- color: #daa520;
+ color: #d7af5f;
}
#temperature.critical {
- color: #ff5858;
+ color: #d47c59;
}
#custom-disk.warning {
- color: #daa520;
+ color: #d7af5f;
}
#custom-disk.critical {
- color: #ff5858;
+ color: #d47c59;
}
#battery.warning {
- color: #daa520;
+ color: #d7af5f;
}
#battery.critical {
- color: #ff5858;
-}
-
-#tray {
- margin-right: 0;
- padding-right: 0;
+ color: #d47c59;
}
#tray > .passive {
@@ -144,5 +135,5 @@ window#waybar {
#tray > .needs-attention {
-gtk-icon-effect: highlight;
- background-color: #daa520;
+ background-color: #d7af5f;
}
diff --git a/dotfiles/hyprland/.config/waybar/ws-icons/ws-active.svg b/dotfiles/hyprland/.config/waybar/ws-icons/ws-active.svg
new file mode 100644
index 0000000..e03c509
--- /dev/null
+++ b/dotfiles/hyprland/.config/waybar/ws-icons/ws-active.svg
@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="64" height="64" viewBox="-3 -3 70 70" version="1.1">
+ <circle cx="32" cy="32" r="35" fill="#d7af5f" stroke="none"/>
+</svg>
diff --git a/dotfiles/hyprland/.config/waybar/ws-icons/ws-inactive.svg b/dotfiles/hyprland/.config/waybar/ws-icons/ws-inactive.svg
new file mode 100644
index 0000000..11da8ff
--- /dev/null
+++ b/dotfiles/hyprland/.config/waybar/ws-icons/ws-inactive.svg
@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="64" height="64" viewBox="-3 -3 70 70" version="1.1">
+ <circle cx="32" cy="32" r="35" fill="#151311" stroke="none"/>
+</svg>