From 3d3a9e7997dec6cf7774e70ee7f91b8bfe1520e1 Mon Sep 17 00:00:00 2001 From: rope Date: Tue, 28 Jul 2026 22:28:56 +0100 Subject: [PATCH] fastfetch: more DE detail + stylix palette --- settings/shell.nix | 43 +++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 41 insertions(+), 2 deletions(-) diff --git a/settings/shell.nix b/settings/shell.nix index bfefc5f..f68cdae 100644 --- a/settings/shell.nix +++ b/settings/shell.nix @@ -1,4 +1,11 @@ { config, pkgs, lib, ... }: +let + c = config.lib.stylix.colors; + # Truecolor swatch for one base16 slot. `` stays a literal JSON escape + # here — fastfetch's JSONC parser turns it into a real ESC byte. + swatch = n: "\\u001b[48;2;${c."${n}-rgb-r"};${c."${n}-rgb-g"};${c."${n}-rgb-b"}m "; + paletteRow = names: lib.concatMapStrings swatch names + "\\u001b[0m"; +in { # Install fastfetch environment.systemPackages = with pkgs; [ @@ -38,11 +45,43 @@ "separator", "os", "kernel", + "uptime", + "memory", + "break", "de", + "wm", + "theme", + "icons", + "cursor", + "font", + "display", "shell", "terminal", - "uptime", - "memory" + "terminalfont", + "break", + { + "type": "custom", + "key": "Scheme", + "format": "base16, generated by stylix from wallpaper.png (${config.stylix.polarity})" + }, + { + "type": "custom", + "key": "Base", + "format": "${paletteRow [ "base00" "base01" "base02" "base03" "base04" "base05" "base06" "base07" ]}" + }, + { + "type": "custom", + "key": "Accent", + "format": "${paletteRow [ "base08" "base09" "base0A" "base0B" "base0C" "base0D" "base0E" "base0F" ]}" + }, + { + "type": "colors", + "key": "Term", + "symbol": "block", + "block": { + "width": 2 + } + } ] } '';