Krolyxon
Commit db7ac21

Branches

Refs →

auroradb7ac21

matugen: theme foot from the wallpaper, drop pywal16

Author
krolyxon
Date
2026-10-25 18:06 +0530
Parent
bf9a79c
Commit
db7ac21946320161798951ebbe9ef401ccf318b4

+42 −14

8 files changed

  1. M .config/foot/foot.ini +1 −1
  2. M .config/matugen/config.toml +5 −2
  3. A .config/matugen/templates/foot.ini +27 −0
  4. M .config/quickshell/aurora/Wall.qml +4 −5
  5. M .local/bin/setwall +1 −1
  6. M README.md +3 −3
  7. M packages/aur.txt +0 −1
  8. M packages/desktop.txt +1 −1
M .config/foot/foot.ini View
@@ -1,4 +1,4 @@
1−include=~/.cache/wal/colors-foot-dark.ini
1+include=~/.cache/matugen/foot.ini
22
33 [main]
44 font=JetBrains Mono Nerd Font:size=11
M .config/matugen/config.toml View
@@ -1,6 +1,5 @@
11 # matugen: Material colours for everything that is UI. aurora (Wall.qml) runs it on every wallpaper
2−# change, with the scheme type / contrast from its settings. pywal16 still runs too, only for the terminal.
3−# Outputs go to ~/.cache/matugen/, like pywal's ~/.cache/wal/.
2+# change, with the scheme type / contrast from its settings. Outputs go to ~/.cache/matugen/.
43 [config]
54
65 [templates.aurora]
@@ -32,3 +31,7 @@ output_path = '~/.cache/matugen/gtk.css'
3231 [templates.qt]
3332 input_path = '~/.config/matugen/templates/qt-colors.conf'
3433 output_path = '~/.cache/matugen/qt-colors.conf'
34+
35+[templates.foot]
36+input_path = '~/.config/matugen/templates/foot.ini'
37+output_path = '~/.cache/matugen/foot.ini'
A .config/matugen/templates/foot.ini View
@@ -0,0 +1,27 @@
1+# Auto-generated by matugen, do not edit, edit the template instead. Included by foot.ini (new terminals only).
2+# ANSI colours come from the wallpaper (pywal-like): Material primary/secondary/tertiary at fixed lightness.
3+[colors-dark]
4+background={{colors.surface.default.hex_stripped | set_lightness: 5.0}}
5+foreground={{colors.on_surface.default.hex_stripped}}
6+cursor={{colors.surface.default.hex_stripped | set_lightness: 5.0}} {{colors.primary.default.hex_stripped}}
7+selection-background={{colors.primary_container.default.hex_stripped}}
8+selection-foreground={{colors.on_primary_container.default.hex_stripped}}
9+urls={{colors.tertiary.default.hex_stripped}}
10+
11+regular0={{colors.surface.default.hex_stripped | set_lightness: 14.0}}
12+regular1={{colors.primary_container.default.hex_stripped}}
13+regular2={{colors.tertiary_container.default.hex_stripped | set_lightness: 58.0}}
14+regular3={{colors.tertiary.default.hex_stripped | set_lightness: 58.0}}
15+regular4={{colors.secondary.default.hex_stripped | set_lightness: 58.0}}
16+regular5={{colors.inverse_primary.default.hex_stripped | set_lightness: 58.0}}
17+regular6={{colors.secondary_container.default.hex_stripped | set_lightness: 58.0}}
18+regular7={{colors.on_surface_variant.default.hex_stripped}}
19+
20+bright0={{colors.outline.default.hex_stripped}}
21+bright1={{colors.primary_container.default.hex_stripped | set_lightness: 74.0}}
22+bright2={{colors.tertiary_container.default.hex_stripped | set_lightness: 74.0}}
23+bright3={{colors.tertiary.default.hex_stripped | set_lightness: 74.0}}
24+bright4={{colors.secondary.default.hex_stripped | set_lightness: 74.0}}
25+bright5={{colors.inverse_primary.default.hex_stripped | set_lightness: 74.0}}
26+bright6={{colors.secondary_container.default.hex_stripped | set_lightness: 74.0}}
27+bright7={{colors.on_surface.default.hex_stripped}}
M .config/quickshell/aurora/Wall.qml View
@@ -4,8 +4,8 @@ import Quickshell
44 import Quickshell.Io
55
66 // Wallpapers: folder listing, cached thumbnails, and applying them. aurora owns the wallpaper:
7−// apply() writes hyprpaper.conf, switches hyprpaper live, runs matugen (UI colours, Theme then recolours itself)
8−// and pywal16 (terminal colours only). recolor() re-runs just matugen when the scheme/contrast setting changes.
7+// apply() writes hyprpaper.conf, switches hyprpaper live, runs matugen (all colours, terminal included; Theme then
8+// recolours itself). recolor() re-runs just matugen when the scheme/contrast setting changes.
99 // ~/.local/bin/setwall is only a CLI front-end for the IPC calls (wallrandom / wall / wallset).
1010 Singleton {
1111 id: root
@@ -48,15 +48,14 @@ Singleton {
4848 'printf "splash = false\\nwallpaper {\\n monitor =\\n path = %s\\n}\\n" "$p" > "$c"; ' +
4949 'if pgrep -x hyprpaper >/dev/null; then hyprctl hyprpaper wallpaper ",$p"; ' +
5050 'else hyprctl dispatch \'hl.dsp.exec_cmd("hyprpaper")\'; fi; ' +
51− 'matugen image "$p" -m dark -t "$3" --contrast="$4" --prefer saturation -q; ' +
52− 'wal -i "$p" -n -q'
51+ 'matugen image "$p" -m dark -t "$3" --contrast="$4" --prefer saturation -q'
5352 function apply(path) {
5453 if (!path) return
5554 current = path
5655 Quickshell.execDetached(["sh", "-c", applyJob, "sh", path, conf, Settings.matuScheme, String(Settings.matuContrast)])
5756 }
5857
59− // matugen only (UI colours). --prefer: v4 otherwise asks on stdin when the image has several source colours.
58+ // matugen only. --prefer: v4 otherwise asks on stdin when the image has several source colours.
6059 // With "missing", only if there is no output yet (fresh install).
6160 readonly property string matuJob:
6261 '[ "$4" = missing ] && [ -f "$HOME/.cache/matugen/aurora.json" ] && exit 0; ' +
M .local/bin/setwall View
@@ -1,6 +1,6 @@
11 #!/bin/sh
22 # Set the wallpaper through aurora. aurora owns the wallpaper: it writes hyprpaper.conf,
3−# switches hyprpaper live and runs matugen (UI colours) + pywal (terminal colours). This is just the CLI front-end for its IPC.
3+# switches hyprpaper live and runs matugen (colours). This is just the CLI front-end for its IPC.
44 #
55 # setwall random wallpaper from the folder selected in aurora's picker
66 # setwall -m open (toggle) aurora's wallpaper picker
M README.md View
@@ -3,7 +3,7 @@
33 ![aurora desktop](assets/aurora-desktop.webp)
44
55 My desktop: **Arch Linux + Hyprland** (Lua config) + **aurora**, a custom Quickshell shell (bar, panel,
6−notifications, OSD, dock), themed live from the wallpaper with **matugen** (pywal16 for the terminal) and deployed with **GNU stow**.
6+notifications, OSD, dock), themed live from the wallpaper with **matugen** and deployed with **GNU stow**.
77
88 ## aurora
99 One shell instead of waybar, dunst, wlogout, fuzzel and a pile of scripts. Everything below is themed from the
@@ -57,7 +57,7 @@ You don't need the installer for that. Browse the repo and copy what you like, f
5757 - `.config/quickshell/aurora/`: the shell (needs Quickshell; it reads its colours from matugen's `~/.cache/matugen/aurora.json`)
5858 - `.config/hypr/`: Hyprland in the new Lua config format
5959 - `.local/bin/`: small scripts (`setwall`, `brictl`, `sysact`, `tms`, ...)
60−- `.config/matugen/templates/`: matugen templates for aurora, Hyprland, hyprlock, GTK, Qt, zathura, cava
60+- `.config/matugen/templates/`: matugen templates for aurora, Hyprland, hyprlock, GTK, Qt, foot, zathura, cava
6161
6262 ## Installing (fresh Arch only)
6363 ```bash
@@ -99,7 +99,7 @@ The lists live in `packages/*.txt`: one package per line, `#` for comments, and
9999 |---|---|
100100 | WM | Hyprland (Lua config), hypridle, hyprlock, hyprpaper |
101101 | Shell / bar | aurora (Quickshell) |
102−| Theming | matugen: picking a wallpaper in aurora (or `setwall`) re-themes everything (GTK via adw-gtk3, Qt via qt6ct); accent = the wallpaper's own colour, near-black surfaces. pywal16 colours the terminal |
102+| Theming | matugen: picking a wallpaper in aurora (or `setwall`) re-themes everything (GTK via adw-gtk3, Qt via qt6ct); accent = the wallpaper's own colour, near-black surfaces. The terminal (foot) too, with ANSI colours tinted toward the wallpaper |
103103 | Terminal / shell | foot, zsh |
104104 | Editor | Neovim (LazyVim) |
105105 | Launcher / menus | aurora's runner (`aurora-run`, also a dmenu replacement for scripts) |
M packages/aur.txt View
@@ -3,7 +3,6 @@ envycontrol
33 htop-vim
44 hyprshade-git
55 jmtpfs
6−python-pywal16-git
76 yaru-icon-theme
87 zsh-fast-syntax-highlighting-git
98 claude-code
M packages/desktop.txt View
@@ -12,7 +12,7 @@ xdg-desktop-portal-hyprland
1212 xdg-desktop-portal-gtk
1313 qt6-wayland
1414
15−# Theming: matugen = UI colours (aurora, hypr, gtk, qt), pywal16 (aur.txt) = terminal only
15+# Theming: matugen = all colours (aurora, hypr, gtk, qt, foot, ...)
1616 matugen
1717 adw-gtk-theme
1818 qt5ct