tanin-icons: accent-reactive folder icon theme (replaces Papirus)

New package packaging/tanin-icons/ generating 5 thin themes Tanin-<accent>
that inherit Adwaita and recolour only the folder/place ramp to the muted
Fuji accent (HSL shift keeping per-stop lightness; 16px rasterised so the
size-exact inherited blue PNG can't win).

- style.py: _set_gsettings now also sets icon-theme=Tanin-<accent_key> so
  folders recolour live with the accent.
- desktop.py: hide Tanin-* from the manual icon picker (accent-driven, a
  manual pick would be overridden on the next accent change).
- panel.py: pin-add icon hint Papirus -> Adwaita.
- build/finish-tanin-repo.sh: tanin-icons in OWN_SIMPLE; AUR rebuilds add
  librewolf-bin, arch-update, timeshift-autosnap, xdg-terminal-exec, paru.
- camel.toml: icon_theme=Tanin-<accent>, icons=[adwaita], tanin-icons own
  package + the new rebuilt_aur entries.

Deliberately excludes unrelated in-flight work (calendar/gtklock/
online-accounts/overview-backdrop) still uncommitted in the tree.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-06-22 20:39:27 +02:00
parent ca94a1828a
commit c5b0848a50
11 changed files with 364 additions and 10 deletions
+31 -4
View File
@@ -31,7 +31,7 @@ bg = "#0f0f0f"
fg = "#f0f0f0"
ui_font = "Inter" # Medium
icon_font = "Iosevka Nerd Font" # Material Design Icons (nf-md-*)
icon_theme = "Papirus" # dock app icons
icon_theme = "Tanin-<accent>" # Adwaita base + Fuji-accent folders (tanin-icons); set live by the accent picker
# -----------------------------------------------------------------------------
# Package sources. Standard software comes from the official Arch repos; only
@@ -108,6 +108,13 @@ pkgbuild = "packaging/tanin-libadwaita/PKGBUILD" # exists
status = "ready (live-verified GTK4; GTK3 partial) + ships tanin-libadwaita.service (user, watch)"
note = "STATIC defaults + CLI (tanin-libadwaita {dark|light|auto|watch}) for greeter/first-boot. LIVE theming is driven by the taninux app: gui/style.py write_global_theme() regenerates ~/.config/gtk-{4.0,3.0}/gtk(.css)|libadwaita.css from the Appearance settings (dynamic accent + light/dark, surfaces #0f0f0f/#f0f0f0, pills). GTK4/libadwaita = full exact Fuji; GTK3/adw-gtk3 = light/dark + pills only (GTK3 @define-color is parse-time, so adw-gtk3's accent/surfaces can't be overridden — exact-Fuji GTK3 would need a standalone GTK3 theme)."
[[packages.own]]
name = "tanin-icons"
desc = "Fuji-accent icon themes — Adwaita overlay, folders recoloured per accent (Tanin-<accent>)"
pkgbuild = "packaging/tanin-icons/PKGBUILD" # exists
status = "ready (live-verified: GTK resolves folder @48px svg + @16px png to Tanin-<accent>)"
note = "5 thin themes inheriting Adwaita; recolor.py HSL-shifts only the blue folder/place ramp to the muted Fuji hue (keeps per-stop lightness) + rasterises 16px so the size-exact inherited blue doesn't win. gui/style.py _set_gsettings now also sets icon-theme=Tanin-<accent_key>, so folders recolour live with the accent. Rebuild after an adwaita-icon-theme bump (reads /usr/share/icons/Adwaita at build). Replaces Papirus (dropped as 'too flat'); papirus-folders presets are saturated and couldn't match the muted Fuji accents."
[[packages.own]]
name = "tanin-setup"
desc = "first-run: seed ~/.config (eww+niri) + session target + apply theme + enable follower"
@@ -149,10 +156,30 @@ name = "calamares"
reason = "GUI installer for the ISO — AUR-only, not in official repos"
status = "in [tanin] (built without sudo — all makedeps were present)"
[[packages.rebuilt_aur]]
name = "librewolf-bin"
reason = "default browser — hard dep of tanin-desktop (AUR-only -bin package)"
status = "in [tanin]; SECURITY: rebuild+republish on every LibreWolf release"
[[packages.rebuilt_aur]]
name = "arch-update"
reason = "update notifier/helper — hard dep of tanin-desktop"
status = "in [tanin]"
[[packages.rebuilt_aur]]
name = "timeshift-autosnap"
reason = "auto-snapshot before pacman transactions — hard dep of tanin-desktop (pulls timeshift)"
status = "in [tanin]"
[[packages.rebuilt_aur]]
name = "xdg-terminal-exec"
reason = "freedesktop terminal-exec resolver — hard dep of tanin-desktop"
status = "in [tanin]"
[[packages.rebuilt_aur]]
name = "paru (or paru-bin)"
reason = "AUR helper — wanted preinstalled on the ISO; must be in [tanin] first"
status = "TODO — not yet rebuilt; ISO packages.x86_64 keeps it commented until then"
reason = "AUR helper — wanted preinstalled on the ISO; optdepend, not forced"
status = "in [tanin]"
# cliphist + cage are in `extra` (verified) — NOT rebuilt, pulled from official repos.
@@ -175,7 +202,7 @@ screenshot = ["grim", "slurp"]
packages = ["flatpak", "pacman-contrib"] # checkupdates, paccache
security = ["polkit"]
fonts = ["inter-font", "ttf-iosevka-nerd"] # verify nerd-font pkg name
icons = ["papirus-icon-theme", "adwaita-icon-theme"]
icons = ["adwaita-icon-theme"] # base; Fuji-accent folders come from own tanin-icons (inherits Adwaita)
[packages.optional]
# optdepends — installed on demand, never required to boot.