23 lines
677 B
Nix
23 lines
677 B
Nix
{ lib, config, pkgs, ... }:
|
|
|
|
let
|
|
user = config.defaultUser or "henrov";
|
|
assetPath = ../../../assets/system/conf/waybar;
|
|
|
|
# Read all files in the directory that actually exist
|
|
files = builtins.filter (f: builtins.pathExists f) (builtins.attrValues (builtins.readDir assetPath));
|
|
|
|
# Generate Home Manager file attributes
|
|
homeFiles = lib.genAttrs (builtins.map builtins.baseNameOf files) (name: {
|
|
source = "${assetPath}/${name}";
|
|
target = ".config/waybar/${name}";
|
|
});
|
|
in
|
|
{
|
|
# Install Waybar system-wide
|
|
environment.systemPackages = [ pkgs.waybar ];
|
|
|
|
# Deploy all config files via Home Manager
|
|
home-manager.users.${user}.home.file = homeFiles;
|
|
}
|