Two failing services after the channel switch.
automatic-timezoned has been polkit-blocked since well before the
switch — replace with a static Europe/London timezone. Hosts that
travel can override locally if needed.
The vendored crowdsec module's setup unit chowns its config dir to
the (DynamicUser-allocated) crowdsec user via an ExecStartPre+ hack.
On stable's systemd the dynamic user isn't visible to chown via NSS
at that point, so it fails with 'invalid user'. Declaring crowdsec
as a static system user makes systemd use it (DynamicUser becomes a
no-op) and the chown resolves cleanly.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
bazaar is a Flathub GUI app store — it has no business on the headless
mediaserver, where it was also pulling flatpak in transitively and
inflating local builds.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Share the wallpaper symlink across all hosts by moving it from gnome.nix
into home-manager/fred.nix, and add matugen templates for btop and the
Homepage dashboard.
The Homepage NixOS module writes custom.css into /etc (read-only), so
bind-mount /var/lib/homepage-custom-css/custom.css over it. A systemd
path unit restarts homepage-dashboard whenever matugen rewrites the
file, so regeneration works without sudo.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
No longer accepts an argument — always regenerates colors from
the wallpaper managed by git at ~/.local/share/backgrounds/wallpaper.png.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Create gtk3-colors.css matugen template and import it in GTK3
gtk.css so apps like Vesktop get wallpaper-based headerbar colors.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add GNOME Shell theme reload (dconf toggle) to recolor-folders.sh
post-hook so colors apply immediately after update or wallpaper
change. Style calendar panel, date menu, pager buttons, and today
highlight. Fix Zen URL bar background mismatch.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Override Zen's source variables (--zen-branding-dark,
--zen-main-browser-background) instead of just derived ones, since
Zen re-computes derived colors from sources. Add sidebar-pane and
top-bar backdrop rules for Nautilus split-header layout.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Generates a custom GNOME Shell CSS for the top bar, quick
settings, and notifications using wallpaper palette colors.
Uses the User Themes extension to load it.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Zen browser: generates userChrome.css with palette colors
- VSCodium: merges workbench.colorCustomizations into settings.json
- GNOME: maps palette hue to closest accent color preset
- Add jq to GNOME packages for JSON merging
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Copies Papirus-Dark mimetype icons into WallpaperAdwaita for
distinctive file type icons (json, python, markdown, etc.)
while keeping the wallpaper-colored folder icons from Adwaita.
Also fixes recolor script to process all place icons, not just
folders (fixes Desktop icon), and improves color mapping.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
MoreWaita was overriding the colored Adwaita folder icons with
monochrome symbolic ones. Added adwaita-icon-theme-legacy for
extra coverage of older icon names.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The wallpaper file is a Home Manager symlink to the Nix store,
so cp can't overwrite it. Instead, point GNOME directly at the
source image path.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Matugen templates for Ghostty theme and GTK4 colors
- Ghostty uses generated wallpaper theme instead of Catppuccin
- GTK4 CSS imports generated color overrides
- Update alias runs matugen after switch to regenerate colors
- Add wallpaper fish function to change wallpaper + regen colors
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
adw-gtk3-dark makes GTK3 apps match libadwaita dark styling.
matugen generates Material You color schemes from wallpaper.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Change hostname text in powerline prompt from white (ffffff) to
black (000000) on the amber segment
- Switch Ghostty font from JetBrainsMono to MesloLGS Nerd Font for
better vertical centering in powerline pill segments
https://claude.ai/code/session_01PwAXuaoJx7qD5FhVLsn7Sn
Merge home-manager GNOME settings (dconf, keybinds, GTK CSS, wallpaper)
from gnome-hm.nix into settings/gnome.nix so the entire DE config lives
in one file and can be toggled with a single import.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The nix-flatpak flake module was removed (no declarative packages) but
the flatpak service itself is still needed for Bazaar/manual installs.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Move shell/prompt/font config from apps/fastfetch.nix to settings/shell.nix
- Remove flatpaks.nix and nix-flatpak flake input (no flatpak packages in use)
- Update readme structure and flake inputs table
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
40-char password from a manager is impractical for frequent sudo use.
SSH is already key-only, so local privilege escalation is the only
remaining threat — acceptable on a single-user home server.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Adds authorised keys for FredOS-Gaming and phone. Disables SSH password
authentication on FredOS-Mediaserver — key auth only going forward.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>