Theme btop and Homepage via matugen on the mediaserver

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>
This commit is contained in:
ediblerope 2026-04-16 20:17:38 +01:00
parent 7d50716bc6
commit 2096330eb8
6 changed files with 171 additions and 4 deletions

View file

@ -13,10 +13,22 @@
home.file.".config/nixpkgs/config.nix".text = ''
{ allowUnfree = true; }
'';
# Wallpaper — source of truth for matugen on all hosts
home.file.".local/share/backgrounds/wallpaper.png".source =
"${inputs.self}/walls/wallpaper.png";
# Ensure Ghostty themes directory exists for matugen
home.file.".config/ghostty/themes/.keep".text = "";
# btop config — use matugen-generated theme
home.file.".config/btop/btop.conf".text = ''
color_theme = "matugen"
theme_background = False
vim_keys = False
'';
home.file.".config/btop/themes/.keep".text = "";
# Ghostty config
home.file.".config/ghostty/config".force = true;
home.file.".config/ghostty/config".text = ''
@ -73,6 +85,14 @@
input_path = "${inputs.self}/templates/recolor-folders.sh"
output_path = "${config.home.homeDirectory}/.local/share/matugen/recolor-folders.sh"
post_hook = "bash ${config.home.homeDirectory}/.local/share/matugen/recolor-folders.sh"
[templates.btop]
input_path = "${inputs.self}/templates/btop.theme"
output_path = "${config.home.homeDirectory}/.config/btop/themes/matugen.theme"
[templates.homepage]
input_path = "${inputs.self}/templates/homepage.css"
output_path = "/var/lib/homepage-custom-css/custom.css"
'';
}