Sakura Line: retheme the whole desktop from the wallpaper

Palette sampled from bspwm/wallpaper/wallpaper.jpg and applied per-role
(not per-hex, so terminal green stays green and nvim's LineNr/Comment
stay recessive) across st, kitty, polybar, rofi, dunst, nvim, qt5ct/qt6ct
and GTK 2/3/4.

Also:
- rofi drun centred, icons enabled
- polybar translucent (true ARGB) and rounded; picom corner-radius, with
  the desktop layer and fullscreen windows excluded
- fix qt5ct color_scheme_path pointing at a nonexistent /home/carrie
- export QT_QPA_PLATFORMTHEME so qt6ct is actually consulted
- point GTK at an icon theme that exists on this system
- add .config/rice: one-shot install.sh (--dry-run supported), package
  list, vendored st config.h (gitignored upstream) and the particles
  wallpaper-layer source, so a clone reproduces the rice

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Cn3dHfbgNYdbZvzb1b3GQt
This commit is contained in:
Sarthak 2026-09-04 00:19:36 +05:30
parent 45e5fe53d2
commit f341989335
35 changed files with 3300 additions and 124 deletions

61
.config/rice/README.md Normal file
View file

@ -0,0 +1,61 @@
# Sakura Line
bspwm rice. Palette sampled from `~/.config/bspwm/wallpaper/wallpaper.jpg`.
## Replicate on a fresh machine
```sh
bash <(curl -fsSL https://git.srtk.in/sarthak/dotfiles/raw/branch/main/.config/rice/install.sh)
```
Or, if the dotfiles are already cloned:
```sh
~/.config/rice/install.sh # full run
~/.config/rice/install.sh --dry-run # show what it would do, change nothing
```
Arch is the first-class target. Debian/Ubuntu and Fedora are best-effort —
the desktop, build and theming steps work; the AUR extras are skipped.
The script is safe to re-run. Anything in `$HOME` that would be overwritten by
the dotfiles checkout is moved to `~/.rice-backup-<timestamp>/` first.
## What it sets up
| | |
|---|---|
| WM | bspwm + sxhkd |
| Bar | polybar (translucent, rounded) |
| Compositor | picom (rounded corners, vsync) |
| Launcher | rofi, centred, with icons |
| Notifications | dunst |
| Terminal | st, built from `st/config.h` here (upstream gitignores it) |
| Wallpaper layer | `particles`, built from `particles/` here |
| Toolkits | GTK2/3/4 via `gtk.css` overrides, Qt via qt6ct |
## Palette
| role | hex | from |
|---|---|---|
| bg | `#0f0d17` | twilight shadow |
| fg | `#e9eefb` | cool white |
| accent | `#92b9ea` | sky |
| red | `#cf6a80` | blossom |
| green | `#8fae74` | grass |
| yellow | `#d8a87c` | train stripe |
| magenta | `#b483c0` | plum blossom |
| cyan | `#8ab6c4` | station house |
Changing the wallpaper does not re-derive these — they are written into each
app's config.
## Layout
```
.config/rice/
├── install.sh one-shot bootstrap
├── packages.txt package list ("aur:" prefix = needs an AUR helper)
├── st/config.h st build config
└── particles/ wallpaper-layer particle field (source + Makefile)
```