Wire niri desktop: tanin-eww, tanin-desktop (niri), tanin-setup theme follower

- tanin-eww: package eww shell config + niri config -> /usr/share/tanin/skel/.config
  (dev paths rewritten to ~/.config/eww; niri spawn-at-startup uses sh -c)
- tanin-desktop: switch metapackage from Hyprland to the niri stack
  (niri, greetd+tanin-greet, cage, eww stack, xdg-desktop-portal-gnome, fonts)
- tanin-setup: apply Fuji theme + enable tanin-libadwaita.service on first run
- tanin-libadwaita: ship systemd user service (color-scheme watcher)
- distro manifest synced; drop stale regreet references

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-06-18 22:13:59 +02:00
parent 10b88a67bc
commit a4569795e8
7 changed files with 294 additions and 22 deletions
+5 -6
View File
@@ -54,14 +54,14 @@ AUR → OPT-IN only (paru = optdepend)
| `taninux` | tsettings + thub + TUI, helper, polkit, .desktop | ready |
| `tanin-greet` | custom GTK4 greeter for greetd → `/etc/greetd/` | ready (preview) |
| `tanin-libadwaita` | Fuji libadwaita recolour, light + dark (pills) | ready (preview) |
| `tanin-eww` | eww config + scripts → `/usr/share/tanin/skel` | **todo** |
| `tanin-eww` | eww bar/dock/panels + niri config → `/usr/share/tanin/skel/.config` | ready |
| `tanin-setup` | seed `~/.config` + enable session target | ready |
| `tanin-desktop` | metapackage pulling the whole environment (niri) | ready (needs tanin-eww) |
| `tanin-desktop` | metapackage pulling the whole environment (niri) | ready |
**Rebuilt AUR deps** — the desktop's hard requirements that aren't in the
official repos. We rebuild them into `[tanin]` so `tanin-desktop` can hard-depend
on them **without the AUR** (binary repos must never need it): `eww`, `tiramisu`,
`waypaper`, `regreet`, `cliphist`. ⚠️ Verify each before publishing — any that
`waypaper`, `cliphist`. ⚠️ Verify each before publishing — any that
turn out to live in `extra` should be dropped from this list.
The full Arch package set (compositor, portals, audio, connectivity, fonts, …)
@@ -79,13 +79,13 @@ waypaper/cliphist) are exactly why `[tanin]` must carry rebuilt AUR packages.
## Delivery
1. **Foundation**`taninux` builds (`makepkg -si`). ✅
2. **Meta + config**finish `tanin-eww`; update `tanin-desktop` to niri; keep
2. **Meta + config** `tanin-eww`, `tanin-desktop` (niri), `tanin-greet`, `tanin-libadwaita`,
`tanin-setup`. Dotfiles ship to `/usr/share/tanin/skel`, never to `/home` at
package time; `tanin-setup` seeds them on first run.
3. **`[tanin]` repo** — `repo-add -s` to build+sign the DB. Host as a
Gitea/Forgejo Arch registry **or** a static dir behind `taninux.kgva.ch`.
4. **ISO** — archiso profile with `[tanin]` pre-configured; Calamares `packages`
module installs `tanin-desktop`; greetd+regreet enabled; session target wired.
module installs `tanin-desktop`; greetd + tanin-greet enabled; session target wired.
### Session / dark-mode fix
libadwaita apps read light/dark via `org.freedesktop.portal.Settings`, which
@@ -100,7 +100,6 @@ systemctl --user start tanin-session.target
- **Name:** keep TANINUX, or split `app = tanin` / `OS = <marketing name>`?
- **Repo hosting:** Gitea Arch registry vs static dir behind `taninux.kgva.ch`.
- **Signing:** move `[tanin]` to `SigLevel = Required` + distribute the key.
- **regreet theme:** author its GTK CSS to the Fuji accent.
- **AUR check:** confirm which rebuilt-AUR entries are already in `extra`.
- **Blur/shadow:** niri `layer-rule` blur+shadow for eww layers (template is
commented in the niri config).