# 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-/` 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 | ## Control centre `super + x`, or the gear at the right of the bar, opens one centred panel that drives everything — no separate menus: | | | |---|---| | Network | Wi-Fi on/off, rescan, pick a network (password prompt inline) | | Bluetooth | power on/off, scan, connect/disconnect paired devices | | Audio | volume, mute, mic mute, switch output sink | | VPN | WireGuard interfaces up/down via `systemctl wg-quick@…` | | Display | switch resolution/refresh on the connected output | | Notifications | do-not-disturb, replay history, clear | | Clipboard / Emoji / Screenshot | greenclip, rofimoji, flameshot | | Wallpaper / Particles / Bar | shuffle, toggle the particle layer, hide the bar | | Power | lock, log out, suspend, reboot, shut down | ## Keybindings | | | |---|---| | `super + Return` | terminal (st) | | `super + w` | app launcher (rofi drun) | | `super + x` | control centre | | `super + v` | clipboard history | | `super + period` | emoji picker | | `super + b` | toggle the bar | | `super + alt + p` | screenshot (flameshot) | | `super + q` | close window | | `super + f` | fullscreen | | `super + space` | float/tile | | `super + Escape` | reload sxhkd | ## 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) ```