56 lines
1.4 KiB
Nix
56 lines
1.4 KiB
Nix
{ lib, pkgs, config, flakeRoot, ... }:
|
|
|
|
let
|
|
#################################
|
|
# Determine default username
|
|
#################################
|
|
username = config.defaultUser or "henrov";
|
|
moduleName = "kitty";
|
|
|
|
#################################
|
|
# Paths to assets
|
|
#################################
|
|
assetPath = "${flakeRoot}/generated/.config/${moduleName}";
|
|
assetFiles = builtins.attrNames (builtins.readDir assetPath);
|
|
in
|
|
{
|
|
#################################
|
|
# System-wide packages
|
|
#################################
|
|
environment.systemPackages = [
|
|
pkgs.kitty
|
|
];
|
|
|
|
#################################
|
|
# Home Manager user configuration
|
|
#################################
|
|
home-manager.users = {
|
|
${username} = {
|
|
|
|
#################################
|
|
# Enable Kitty
|
|
#################################
|
|
programs.kitty = {
|
|
enable = true;
|
|
|
|
extraConfig = ''
|
|
# Include the Catppuccin-Mocha theme
|
|
include themes/Catppuccin-Mocha.conf
|
|
'';
|
|
};
|
|
|
|
#################################
|
|
# Copy config files
|
|
#################################
|
|
home.file =
|
|
(lib.mapAttrs'
|
|
(name: _: {
|
|
name = ".config/${moduleName}/${name}";
|
|
value.source = "${assetPath}/${name}";
|
|
})
|
|
(builtins.readDir assetPath)
|
|
);
|
|
};
|
|
};
|
|
}
|