Update install notes and docs

This commit is contained in:
SirBlob committed 2026-09-24 01:35:27 +00:00
1 parent f81c10c7dd
commit 57224d5db9
6 files changed
+25 -11

No files matched your search

+1 -1
View File
@@ -77,7 +77,7 @@ It runs these steps, in this order, and every one of them is idempotent:
| 1. Directories | creates the 19 directories the shell and scripts expect, before anything writes into them | | 1. Directories | creates the 19 directories the shell and scripts expect, before anything writes into them |
| 2. `BLOB_PATH` | symlinks `~/.local/share/blob` to this checkout | | 2. `BLOB_PATH` | symlinks `~/.local/share/blob` to this checkout |
| 3. Packages | installs what is missing from `packages/`, bootstrapping `yay` first on a machine that has no AUR helper | | 3. Packages | installs what is missing from `packages/`, bootstrapping `yay` first on a machine that has no AUR helper |
| 4. Config | copies `hypr/`, the themed app configs, `blob/shell.json`, the uwsm environment, and the icon font into `~/.config`, and writes `/etc/profile.d/blob.sh` so a login shell finds the `blob` command | | 4. Config | copies `hypr/`, the themed app configs, `blob/shell.json`, and the uwsm environment into `~/.config`, and writes `/etc/profile.d/blob.sh` so a login shell finds the `blob` command |
| 5. First theme | links `~/wallpapers` to the checkout, applies `flats` headless, picks a background, and links the btop and Neovim theme files, so the first login is not a blank desktop | | 5. First theme | links `~/wallpapers` to the checkout, applies `flats` headless, picks a background, and links the btop and Neovim theme files, so the first login is not a blank desktop |
| 6. User units | installs the session services into `~/.config/systemd/user` and enables them | | 6. User units | installs the session services into `~/.config/systemd/user` and enables them |
| 7. systemd drop-ins | writes the shutdown timeouts, oomd thresholds, plocate prune paths, and sleep hooks under `/etc` | | 7. systemd drop-ins | writes the shutdown timeouts, oomd thresholds, plocate prune paths, and sleep hooks under `/etc` |
+4 -3
View File
@@ -35,9 +35,10 @@ with `--check`.
resolves cannot cost you the other hundred and the config, service and login resolves cannot cost you the other hundred and the config, service and login
steps below. See [packages.md](packages.md). steps below. See [packages.md](packages.md).
4. **Config** is copied into `~/.config`: `hypr/`, the themed app configs, 4. **Config** is copied into `~/.config`: `hypr/`, the themed app configs,
`blob/shell.json`, the uwsm environment, `fontconfig/fonts.conf`, and the `blob/shell.json`, the uwsm environment, and `fontconfig/fonts.conf`. A
icon font, and the font cache is refreshed. The shell draws every icon as a leftover Omarchy icon font in `~/.local/share/fonts` is removed, and the
Nerd Font glyph in the `monospace` family, and on a fresh Arch install font cache is refreshed. The shell draws every icon as a Nerd Font glyph in
the `monospace` family, and on a fresh Arch install
fontconfig resolves that to a font with no such glyphs, so the bar and its fontconfig resolves that to a font with no such glyphs, so the bar and its
panels come up full of blanks. `fonts.conf` binds `monospace` to panels come up full of blanks. `fonts.conf` binds `monospace` to
`JetBrainsMono Nerd Font`; `blob font set` rewrites the same file, and the `JetBrainsMono Nerd Font`; `blob font set` rewrites the same file, and the
+3 -1
View File
@@ -165,7 +165,9 @@ blob update
Refreshes the keyring, runs `pacman -Syu`, runs `yay -Sua` when the AUR is Refreshes the keyring, runs `pacman -Syu`, runs `yay -Sua` when the AUR is
reachable, prunes orphans, and sends a notification. `blob update-available` reachable, prunes orphans, and sends a notification. `blob update-available`
prints the pending count that the bar's update indicator reads. prints the pending count that the bar's update indicator reads. The indicator
rechecks every six hours and a few seconds after any pacman transaction, so it
clears as soon as an update, from `blob update` or by hand, finishes.
This replaces 27 upstream scripts of channel, migration, and version-pinning This replaces 27 upstream scripts of channel, migration, and version-pinning
machinery. There are no release channels: there is one repository set, which is machinery. There are no release channels: there is one repository set, which is
+1 -1
View File
@@ -103,7 +103,7 @@ sources `session/env-bootstrap` so `blob` is on `PATH` in any interactive shell.
| Command | Does | | Command | Does |
| --- | --- | | --- | --- |
| `blob theme menu` | pick from the bundled and local sets | | `blob theme menu` | pick from the bundled and local sets, each row previewing the theme's background, foreground, accent and six palette colours as swatches |
| `blob theme set <name>` | apply one by name | | `blob theme set <name>` | apply one by name |
| `blob wallpaper set <image>` | extract a palette from a wallpaper with pywal, fix flat palettes with `blob-theme-contrast`, and apply it as `blob-dynamic` | | `blob wallpaper set <image>` | extract a palette from a wallpaper with pywal, fix flat palettes with `blob-theme-contrast`, and apply it as `blob-dynamic` |
| `blob theme share <link>` | fetch a shared palette and apply it as `blob-dynamic` | | `blob theme share <link>` | fetch a shared palette and apply it as `blob-dynamic` |
+14 -3
View File
@@ -44,6 +44,15 @@ falling back to `accent` for themes that define neither. `color0` is
Both new bar click actions are already in `shell.json`. The system monitor had no Both new bar click actions are already in `shell.json`. The system monitor had no
bar entry point in the AGS setup either, so the keybinding is how it is reached. bar entry point in the AGS setup either, so the keybinding is how it is reached.
## Quick settings
The control centre is centred on the screen, with the weather card to its left.
Its tiles fill the card width in three columns, and every tile and card button
draws a JetBrainsMono Nerd Font glyph over a light foreground fill with a thin
border, so they read against the panel in any theme. An active tile takes the
accent colour. The Wallpaper tile opens `blob.displays`, the Theme tile opens
`blob theme menu`.
## Deliberately not ported ## Deliberately not ported
The tiles still poll shell commands the way the GTK widgets did - `pamixer` for The tiles still poll shell commands the way the GTK widgets did - `pamixer` for
@@ -83,10 +92,12 @@ correctly, but nothing in the widget sets it.
## Wallpapers ## Wallpapers
`blob.displays` picks wallpapers. Opened with `Super + Alt + W` or the Blob `blob.displays` picks wallpapers. Opened with `Super + Alt + W`, the quick
menu's Wallpaper row. settings Wallpaper tile, or the Blob menu's Wallpaper row.
A thumbnail grid of `~/wallpapers`, with a row of chips selecting the target: A thumbnail grid of `~/wallpapers` that fits as many columns of at least 120px
as the panel allows and stretches them to its full width, with a row of chips
selecting the target:
"All monitors" sets the global wallpaper through `blob-bg-set`, and a specific "All monitors" sets the global wallpaper through `blob-bg-set`, and a specific
output assigns just that monitor through `blob-bg-monitor`, which symlinks the output assigns just that monitor through `blob-bg-monitor`, which symlinks the
image under `~/.local/state/blob/backgrounds/<output>`. An output with its own image under `~/.local/state/blob/backgrounds/<output>`. An output with its own
+2 -2
View File
@@ -54,12 +54,12 @@ Example `shell.json` (bar subtree only shown):
| Name | What it does | Interactions | | Name | What it does | Interactions |
|---|---|---| |---|---|---|
| `blob.menu` | Blob menu launcher | left = menu · right = terminal | | `blob.menu` | Blob menu launcher, drawn from `branding/chai.svg` in the bar colour | left = menu · right = terminal |
| `blob.workspaces` | Hyprland workspace switcher | left = focus workspace | | `blob.workspaces` | Hyprland workspace switcher | left = focus workspace |
| `blob.clock` | Date/time label + popup with a month grid, ISO week numbers, and month stepping | left = popup · right = cycle label format · middle = timezone selector | | `blob.clock` | Date/time label + popup with a month grid, ISO week numbers, and month stepping | left = popup · right = cycle label format · middle = timezone selector |
| `blob.media` | MPRIS now-playing — scrolling track + artist, cover-art popup | left = play/pause · middle = next · scroll = prev/next · right = popup | | `blob.media` | MPRIS now-playing — scrolling track + artist, cover-art popup | left = play/pause · middle = next · scroll = prev/next · right = popup |
| `blob.indicators` | Manual state indicators | left = indicator action | | `blob.indicators` | Manual state indicators | left = indicator action |
| `blob.system-update` | Available update indicator | left = update | | `blob.system-update` | Available update indicator, rechecked after every pacman transaction | left = update |
| `blob.tray` | System tray | hover = reveal drawer · right on chevron = manage | | `blob.tray` | System tray | hover = reveal drawer · right on chevron = manage |
| `blob.weather` | Weather icon + popup with forecast | left = popup · right = full notification | | `blob.weather` | Weather icon + popup with forecast | left = popup · right = full notification |
| `blob.microphone` | Mic icon + scroll volume | left = mute toggle · middle = audio panel · scroll = source volume | | `blob.microphone` | Mic icon + scroll volume | left = mute toggle · middle = audio panel · scroll = source volume |