#+TITLE: Dupre Theme Color Palette #+AUTHOR: Craig Jennings #+DATE: 2026-01-27 #+DESCRIPTION: Complete color reference for the Dupre theme across all applications. * Color Palette The Dupre theme originates from =dupre-theme.el= in Emacs. It is a warm, earthy dark theme built around goldenrod/amber accents on a near-black background. ** Core Colors | Name | Hex | Role | |-----------+-----------+-------------------------------------| | bg | =#151311= | Background | | bg+2 | =#474544= | Elevated surfaces, inactive borders | | fg | =#f0fef0= | Primary foreground text | | gray+2 | =#d0cbc0= | Secondary text, muted foreground | | yellow | =#d7af5f= | Primary accent (gold/amber) | | steel | =#969385= | Tertiary text, status bar labels | | muted | =#58574e= | Disabled/dimmed elements | | black | =#252321= | Dark surface (bg+1) | ** Full 16-Color Terminal Palette | Index | Name | Hex | Alias | |-------+----------------+-----------+-------------------| | 0 | black | =#252321= | bg+1 | | 1 | red | =#d47c59= | dupre-red | | 2 | green | =#a4ac64= | dupre-green | | 3 | yellow | =#d7af5f= | dupre-yellow | | 4 | blue | =#67809c= | dupre-blue | | 5 | magenta | =#b294bb= | | | 6 | cyan | =#8a9496= | dupre-steel | | 7 | white | =#d0cbc0= | gray+2 | | 8 | bright black | =#474544= | bg+2 | | 9 | bright red | =#edb08f= | dupre-red+1 | | 10 | bright green | =#ccc768= | dupre-green+1 | | 11 | bright yellow | =#ffd75f= | dupre-yellow+1 | | 12 | bright blue | =#b2c3cc= | dupre-blue+1 | | 13 | bright magenta | =#c397d8= | | | 14 | bright cyan | =#acb0b3= | dupre-steel+1 | | 15 | bright white | =#f0fef0= | fg | ** Semantic Colors | Purpose | Hex | Source Color | |-----------------+-----------+----------------| | Accent/active | =#d7af5f= | yellow (gold) | | Error/fail | =#d47c59= | red | | Warning | =#d7af5f= | yellow | | Success | =#a4ac64= | green | | Caps lock | =#ccc768= | bright green | | Critical bg | =#7c2a09= | dark red | | Placeholder | =#6c6a60= | muted variant | * Application Color Mappings ** Hyprland Window Manager Source: =dotfiles/hyprland/.config/themes/dupre/hyprland.conf= | Element | Color | Format | |-----------------+-----------+--------------------| | Active border | =#d7af5f= | =rgba(d7af5fff)= | | Inactive border | =#474544= | =rgba(474544ff)= | ** hy3 Plugin (Tab Bar / Monocle Mode) Applied at runtime via =set-theme= and =hyprctl keyword=. | Element | Color | Format | |---------------+-----------+------------------| | Active tab bg | =#474544= | =rgba(474544ff)= | | Active text | =#969385= | =rgba(969385ff)= | | Inactive tab | =#d0cbc0= | =rgba(d0cbc0ff)= | | Inactive text | =#d0cbc0= | =rgba(d0cbc0ff)= | | Urgent tab | =#d47c59= | =rgba(d47c59ff)= | | Locked tab | =#8a9496= | =rgba(8a9496ff)= | ** Hyprlock (Lock Screen) Source: =dotfiles/hyprland/.config/themes/dupre/hyprlock.conf= | Element | Color | Format | |-------------------+-----------+-----------------| | Clock text | =#969385= | =rgb(969385)= | | Profile border | =#d7af5f= | =rgb(d7af5f)= | | Username | =#d7af5f= | =rgb(d7af5f)= | | Input outer/inner | =#151311= | =rgb(151311)= | | Input text | =#969385= | =rgb(969385)= | | Check (success) | =#d7af5f= | =rgb(d7af5f)= | | Fail | =#d47c59= | =rgb(d47c59)= | | Caps lock | =#ccc768= | =rgb(ccc768)= | ** Waybar Source: =dotfiles/hyprland/.config/themes/dupre/waybar.css= | Element | Color | CSS | |----------------------+-----------+-------------------| | Bar background | =#151311= | =background-color= | | Bar border | =#d7af5f= | =border= | | Module text | =#969385= | =color= | | Clock text | =#f0fef0= | =color= | | Active workspace bg | =#d7af5f= | =background= | | Active workspace fg | =#151311= | =color= | | Inactive workspace | =#969385= | =color= | | Urgent workspace | =#d47c59= | 40% opacity | | Hover bg | =#474544= | =background-color= | | Volume muted | =#58574e= | =color= | | Battery warning | =#d7af5f= | =color= | | Battery critical | =#d47c59= | =color= | | Tray needs-attention | =#d7af5f= | =background-color= | ** Foot Terminal Source: =dotfiles/hyprland/.config/themes/dupre/foot.ini= Uses the full 16-color terminal palette (see table above). | Element | Color | |------------+-----------| | Background | =#151311= | | Foreground | =#f0fef0= | | Cursor fg | =#151311= | | Cursor bg | =#d7af5f= | ** Fuzzel (Application Launcher) Source: =dotfiles/hyprland/.config/themes/dupre/fuzzel.ini= Format: =RRGGBBAA= (no =#= prefix). | Element | Color | |----------------+---------------| | Background | =151311f0= | | Text | =f0fef0ff= | | Selection bg | =d7af5fff= | | Selection text | =151311ff= | | Border | =d7af5fff= | | Match | =d7af5fff= | | Prompt | =969385ff= | | Placeholder | =6c6a60ff= | | Input | =f0fef0ff= | ** Dunst (Notifications) Source: =dotfiles/hyprland/.config/themes/dupre/dunstrc= | Element | Color | |--------------------+-------------| | Foreground | =#f0fef0= | | Frame | =#d7af5f= | | Highlight | =#d7af5f= | | Normal/low bg | =#151311f0= | | Critical bg | =#7c2a09f0= | | Critical frame | =#d47c59= | | Critical highlight | =#ff2a00= | ** Xresources (X11 / Emacs / st / xterm) Source: =dotfiles/hyprland/.config/themes/dupre/Xresources= Uses C preprocessor =#define= macros for the 16-color palette, then applies via =theme_*= aliases to st and xterm resources. Emacs reads these via =xrdb=. ** GTK and Qt | Setting | Value | |---------------------+--------------------| | GTK theme | Adwaita-dark | | Qt theme | Adwaita-Dark | | Qt method | adwaita-qt5/qt6, QT_STYLE_OVERRIDE | | Icon theme | Papirus-Dark | | Cursor theme | capitaine-cursors-light | | Cursor size | 24 | GTK and Qt use system dark themes rather than custom Dupre colors. This provides consistent widget styling from well-maintained themes while Dupre handles terminal, bar, and compositor colors. * Font | Setting | Value | |---------+----------------------------| | Family | BerkeleyMono Nerd Font | | Size | 13pt (terminal, launcher, notifications) | | Waybar | 14px (CSS pixels) | Point-based configs (foot, fuzzel, dunst, Xresources) use 13pt. Waybar CSS uses 14px. Hyprlock uses 64pt (clock) and 36pt (username) for lock screen readability. * Theme Infrastructure ** Theme Directory =~/.config/themes/dupre/= contains per-application config files: | File | Application | |----------------+-------------------| | =foot.ini= | Foot terminal | | =fuzzel.ini= | Fuzzel launcher | | =waybar.css= | Waybar status bar | | =dunstrc= | Dunst notifications | | =hyprland.conf= | Hyprland borders | | =hyprlock.conf= | Hyprlock screen | | =Xresources= | X11 apps / Emacs | ** Switching Themes =set-theme= (=~/.local/bin/set-theme=) copies theme configs into place, applies Hyprland/hy3 colors via =hyprctl=, merges Xresources, and reloads waybar and dunst. #+begin_src sh set-theme dupre # apply dupre set-theme --toggle # toggle between dupre and hudson set-theme --pick # fuzzel picker set-theme --current # print current theme name #+end_src Keybindings: =$mod+Y= toggles, =$mod+Shift+Y= opens picker. ** Adding a New Theme 1. Create =~/.config/themes//= with all seven config files 2. Add a case block in =set-theme= for Hyprland/hy3 runtime colors 3. The theme will appear automatically in =set-theme --list= and the fuzzel picker * Palette Image =assets/color-themes/dupre/dupre-palette.png= is a visual reference of the palette. Regenerate with: #+begin_src sh assets/color-themes/generate-palette.sh #+end_src