0c0066fef1
Custom tab_bar.py with flat tabs, right-aligned status area (git branch, CPU%, memory, uptime, hostname, clock) using Nerd Font icons. F12/Shift+F12 toggle for tab bar. Added Kitty-setup.md, theme-setup.md, and install scripts for kitty-only and full Debian theme deployment. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
112 lines
3.7 KiB
Markdown
112 lines
3.7 KiB
Markdown
# Seth Linux Theme — Full Setup Guide
|
|
|
|
Dark GNOME desktop theme with black titlebars, square corners, and orange (#D35400) accent. Covers GTK3/4, kitty terminal, and GNOME Shell settings.
|
|
|
|
## What You Get
|
|
|
|
- **GTK3/4**: Black headerbars, square window corners, ultra-thin bars (36px), no decorative borders
|
|
- **Kitty**: Borderless terminal with custom status bar (git, CPU, RAM, uptime, clock)
|
|
- **GNOME**: Dark mode, orange accent color, Super+right-drag resize
|
|
|
|
## Prerequisites
|
|
|
|
- **Debian/Ubuntu** (or any GNOME-based distro)
|
|
- **GNOME Shell** (tested on GNOME 48)
|
|
- **kitty** terminal (optional — theme works without it)
|
|
- **git**
|
|
|
|
## Quick Install
|
|
|
|
```bash
|
|
git clone https://git.sethpc.xyz/Seth/seth-linux-theme.git
|
|
cd seth-linux-theme
|
|
./install-debian-theme.sh
|
|
```
|
|
|
|
This installs everything: GTK CSS, kitty theme + Nerd Font, and GNOME settings.
|
|
|
|
## What Each Component Does
|
|
|
|
### GTK CSS (`gtk-3.0/gtk.css`)
|
|
|
|
Applied to both GTK3 and GTK4 apps. Overrides:
|
|
|
|
- Black headerbar background with white text
|
|
- 36px min-height headerbars (thinner than default)
|
|
- Square window corners (`border-radius: 0`)
|
|
- No CSD decoration borders or shadows
|
|
- Transparent headerbar buttons (white text, #222 hover)
|
|
- Backdrop state: #999 text/icons, #333 bottom border
|
|
- Nautilus sidebar/main headerbar height equalization
|
|
|
|
### Kitty Terminal
|
|
|
|
See [Kitty-setup.md](Kitty-setup.md) for full details.
|
|
|
|
- Borderless window
|
|
- Custom tab bar with system status
|
|
- JetBrainsMono Nerd Font
|
|
- F12 toggle for tab bar
|
|
|
|
### GNOME Settings
|
|
|
|
- `color-scheme`: prefer-dark
|
|
- `accent-color`: orange
|
|
- `resize-with-right-button`: true (Super+right-drag to resize)
|
|
- `mouse-button-modifier`: Super
|
|
|
|
## Manual Install
|
|
|
|
### 1. GTK CSS
|
|
|
|
```bash
|
|
mkdir -p ~/.config/gtk-3.0 ~/.config/gtk-4.0
|
|
cp gtk-3.0/gtk.css ~/.config/gtk-3.0/gtk.css
|
|
cp gtk-3.0/gtk.css ~/.config/gtk-4.0/gtk.css
|
|
```
|
|
|
|
GTK3 apps pick up changes on next window open. GTK4/libadwaita apps need a full relaunch.
|
|
|
|
### 2. Kitty
|
|
|
|
See [Kitty-setup.md](Kitty-setup.md).
|
|
|
|
### 3. GNOME Settings
|
|
|
|
```bash
|
|
gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark'
|
|
gsettings set org.gnome.desktop.interface accent-color 'orange'
|
|
gsettings set org.gnome.desktop.wm.preferences resize-with-right-button true
|
|
gsettings set org.gnome.desktop.wm.preferences mouse-button-modifier '<Super>'
|
|
```
|
|
|
|
## Files
|
|
|
|
```
|
|
seth-linux-theme/
|
|
├── gtk-3.0/
|
|
│ └── gtk.css # GTK3/4 headerbar + window CSS
|
|
├── kitty/
|
|
│ ├── kitty-theme.conf # Kitty colors, tab bar, keybindings
|
|
│ ├── tab_bar.py # Custom tab bar renderer
|
|
│ ├── tab-bar-hide.conf # Toggle snippet (hide)
|
|
│ └── tab-bar-show.conf # Toggle snippet (show)
|
|
├── gnome/
|
|
│ └── apply-gnome-settings.sh # GNOME gsettings
|
|
├── install.sh # Legacy install (home dir target)
|
|
├── install-kitty-theme.sh # Kitty-only install
|
|
└── install-debian-theme.sh # Full theme install (Debian/Ubuntu)
|
|
```
|
|
|
|
## Known Limitations
|
|
|
|
- **Rounded window corners**: Mutter hardcodes corner rounding at the compositor level. GTK CSS `border-radius: 0` only affects CSD content, not the compositor clipping mask. Removing rounded corners requires a patched Mutter or a shell extension.
|
|
- **Kitty changes need restart**: `tab_bar.py`, font, and keybinding changes require closing and reopening kitty. Ctrl+Shift+F5 only reloads colors.
|
|
- **CPU % first draw**: Shows "..." on first tab bar draw (needs two `/proc/stat` samples to compute delta).
|
|
|
|
## Customization
|
|
|
|
- **Accent color**: Replace `#D35400` in `gtk.css`, `kitty-theme.conf`, and `tab_bar.py`
|
|
- **Headerbar height**: Change `min-height: 36px` in `gtk.css`
|
|
- **Tab bar items**: Edit the `if is_last:` block in `tab_bar.py`
|