feat(assets): NexusOS asset + theme rebrand
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Regular → Executable
+103
-5
@@ -10,8 +10,8 @@ Lime-green + purple, dark, with tightened menus.
|
||||
| `NexusOS/` | GTK2/3 + xfwm4 theme. **GTK3 CSS in `NexusOS/gtk-3.0/` is hand-maintained** (no build step). |
|
||||
| `NexusOS/gtk-3.0/colors.css` | All color tokens. Edit colors here, not in the widget files. |
|
||||
| `NexusOS-icons/` | Icon theme (inherits `Papirus-Dark`). |
|
||||
| `../../management/Mint-Y-Nexus/` | XFCE app-icon set. |
|
||||
| `_palette.py` + `*-src/build.py` | Regenerate gtk2 / icons / xfwm4 — **NOT gtk-3.0**. |
|
||||
| `NexusOS-icons-src/build_actions.py` | Regenerate the `actions` icons (logoff dialog / Whisker session buttons). |
|
||||
| `install-theme.sh` | Idempotent restore of all the *wiring* (see below). |
|
||||
| `gtk3-user-overrides.css` | Symlinked to `~/.config/gtk-3.0/gtk.css`. |
|
||||
|
||||
@@ -20,7 +20,7 @@ Lime-green + purple, dark, with tightened menus.
|
||||
The files above are just *source*. What makes the desktop use them lives
|
||||
outside this folder and is recreated by `install-theme.sh`:
|
||||
|
||||
- Symlinks: `~/.themes/NexusOS`, `~/.icons/NexusOS`, `~/.icons/Mint-Y-Nexus`,
|
||||
- Symlinks: `~/.themes/NexusOS`, `~/.icons/NexusOS`,
|
||||
`~/.config/gtk-3.0/gtk.css`.
|
||||
- xfconf: `xsettings` (`/Net/ThemeName`, `/Net/IconThemeName`,
|
||||
`/Gtk/CursorThemeName`, `/Gtk/FontName`) and `xfwm4 /general/theme`.
|
||||
@@ -43,9 +43,10 @@ Some apps cache the theme at startup and need a full restart.
|
||||
## Backup / restore
|
||||
|
||||
- `bin/backup.sh` (run at home): snapshots live wiring into
|
||||
`restore-snapshot/`, then lftp-mirrors the repo to the router.
|
||||
- `bin/restore.sh` / `bin/restore-full.sh`: pull back, rebuild
|
||||
venv/frontend, then auto-run `install-theme.sh`.
|
||||
`restore-snapshot/`, then rsyncs the repo to the router.
|
||||
- `bin/restore.sh`: pull back, rebuild venv/frontend, then auto-run
|
||||
`install-theme.sh`. Use `bin/restore.sh --checksum` for a content-only
|
||||
dry-run.
|
||||
- The repo is git-tracked; **`backup.sh` mirrors `.git` too**, so if a
|
||||
bulk `git add` is ever interrupted run `git gc --prune=now` before
|
||||
backing up (a killed `git add -A` once left 4 GB of loose objects).
|
||||
@@ -78,3 +79,100 @@ Some apps cache the theme at startup and need a full restart.
|
||||
7. **`.gitignore` does not support trailing/inline comments.** A
|
||||
`Dir/ # note` line matches nothing — comments must be on their own
|
||||
line. (This once let a `git add` start ingesting the 28 GB venv.)
|
||||
|
||||
---
|
||||
|
||||
## KDE Plasma migration (`KDE/`)
|
||||
|
||||
All KDE Plasma theme assets live under `KDE/`. These are built to mirror the NexusOS
|
||||
visual design — same palette, same flat aesthetic — in KDE-native formats. The GTK 3
|
||||
theme and icon theme carry over unchanged.
|
||||
|
||||
```
|
||||
KDE/
|
||||
install-plasma.sh # idempotent installer (run once after switching)
|
||||
generate_plasma_colors.py # regenerate NexusOS.colors from _palette.py
|
||||
|
||||
plasma/NexusOS/ # Plasma shell theme (panel, widgets, tooltips)
|
||||
NexusOS.colors # KDE color scheme — source of truth for Qt/KDE colors
|
||||
colors # Plasma shell palette overrides
|
||||
widgets/*.svg # 9-slice SVGs: panel-background, tooltip, button, etc.
|
||||
opaque/widgets/ # compositor-off variants
|
||||
|
||||
kvantum/NexusOS/ # Qt5/Qt6 app styling
|
||||
NexusOS.kvconfig # widget geometry + element references
|
||||
NexusOS.svg # flat SVG widget drawings
|
||||
|
||||
aurorae/NexusOS/ # KWin window decoration
|
||||
NexusOSrc # titlebar height, button layout, colors
|
||||
decoration.svg # window frame (9-slice)
|
||||
close/maximize/minimize/restore/alldesktops/keepabove/keepbelow/shade.svg
|
||||
|
||||
sddm/NexusOS-QML/ # Login screen (already deployed; palette now aligned)
|
||||
Main.qml # QML login UI — NexusOS purple/green palette
|
||||
assets/background.svg assets/logo.png
|
||||
|
||||
kscreenlocker/NexusOS/ # Runtime screen lock (Meta+L in KDE)
|
||||
contents/ui/LockScreenUi.qml # matches SDDM aesthetic; kscreenlocker API
|
||||
|
||||
konsole/
|
||||
NexusOS.colorscheme # general terminal colors
|
||||
NexusOS-Promethean.colorscheme # deep purple — matches promethean-kitty.conf
|
||||
Promethean.profile # Konsole profile: rcfile, cursor, color scheme
|
||||
```
|
||||
|
||||
### What survives the switch unchanged
|
||||
|
||||
| Asset | Status |
|
||||
|---|---|
|
||||
| `NexusOS/gtk-3.0/` (all CSS) | GTK apps on Plasma use it as-is |
|
||||
| `NexusOS-icons/` | Freedesktop spec — works on any DE |
|
||||
| `_palette.py` / `colors.css` | Source of truth; KDE palette generated from it |
|
||||
| Plymouth boot splash | System-level; unaffected by DE switch |
|
||||
|
||||
### Installing before the switch (XFCE)
|
||||
|
||||
**Testable now:**
|
||||
```bash
|
||||
# Kvantum (Qt5 app styling — works on XFCE)
|
||||
sudo apt install qt5-style-kvantum qt5-style-kvantum-themes
|
||||
ln -sfn "$PWD/assets/themes/KDE/kvantum/NexusOS" ~/.config/Kvantum/NexusOS
|
||||
kvantummanager --set NexusOS # then open any Qt5 app
|
||||
|
||||
# Konsole colors (works on XFCE if konsole installed)
|
||||
cp assets/themes/KDE/konsole/*.colorscheme assets/themes/KDE/konsole/Promethean.profile \
|
||||
~/.local/share/konsole/
|
||||
|
||||
# SDDM palette (already live; installer will redeploy if needed)
|
||||
```
|
||||
|
||||
**Needs KDE session:** Aurorae decoration, Plasma shell theme, kscreenlocker.
|
||||
|
||||
### First boot into Plasma
|
||||
|
||||
```bash
|
||||
assets/themes/KDE/install-plasma.sh
|
||||
```
|
||||
|
||||
Then in System Settings → Appearance verify:
|
||||
- Global Theme: (manual if needed — set individual components below)
|
||||
- Colors: NexusOS
|
||||
- Application Style: Kvantum-dark
|
||||
- Plasma Style: NexusOS
|
||||
- Window Decorations: NexusOS
|
||||
- Icons: NexusOS
|
||||
|
||||
Test lock screen: **Meta+L**
|
||||
|
||||
### Promethean Terminal on KDE
|
||||
|
||||
`bin/promethean/promethean-terminal.desktop` now uses `konsole --profile Promethean`.
|
||||
The Promethean Konsole profile configures the rcfile, deep-purple color scheme,
|
||||
and `#b040c0` cursor. The kitty fallback line is commented out in the `.desktop`.
|
||||
|
||||
### Palette alignment note
|
||||
|
||||
The SDDM `NexusOS-QML` theme previously used a navy/cyan palette (`#0f1626` / `#00d4ff`).
|
||||
It has been updated to the NexusOS palette (`#1e1526` / `#8cc63f`) for consistency.
|
||||
The live SDDM at `/usr/share/sddm/themes/NexusOS-QML/` still has the old colors;
|
||||
`install-plasma.sh` will replace it.
|
||||
|
||||
Reference in New Issue
Block a user