Regenerated

This commit is contained in:
2026-03-21 21:18:26 +00:00
parent 837642d104
commit a68570bda0
31 changed files with 62 additions and 1604 deletions
+62 -78
View File
@@ -1055,124 +1055,108 @@ This file sets up Kitty terminal
{ lib, pkgs, config, ... }:
let
moduleName = "kitty";
username = config.defaultUser or "henrov";
username = config.defaultUser or "henrov";
moduleName = "kitty";
assetPath = ../../../assets/system/conf/${moduleName};
# Paths and files
assetPath = ../../../assets/system/conf/${moduleName};
programFiles = builtins.readDir assetPath;
files = lib.genAttrs (builtins.attrNames programFiles) (name: {
files = lib.genAttrs (builtins.attrNames programFiles) (name: {
src = "${assetPath}/${name}";
});
enableProgram = config.enableKitty or true;
in
{
options.enableKitty = lib.mkEnableOption "Enable Kitty terminal integration";
# Install kitty system-wide
environment.systemPackages = [ pkgs.kitty ];
config = lib.mkIf enableProgram {
# Install kitty system-wide
environment.systemPackages = [ pkgs.kitty ];
# Home Manager user-specific configuration
home-manager.users.${username} = {
# Home Manager user-specific configuration
_module.args.hmUsers = {
${username} = {
programs.kitty.enable = true;
# Extra user config snippet
programs.kitty.extraConfig = ''
# Include the Catppuccin-Mocha theme
include themes/Catppuccin-Mocha.conf
'';
xdg.configFile =
lib.mapAttrs' (name: value: {
name = "${moduleName}/${name}";
value.source = value.src;
}) files;
# Copy all asset files into ~/.config/kitty/
home.file = lib.mkMerge (
map (name: { ".config/${moduleName}/${name}" = { source = files.${name}.src; }; })
(builtins.attrNames files)
);
};
};
}
#+END_SRC
** =generated/parked/terminals/starship.nix=
** =generated/moduled/terminals/starship.nix=
This file sets up starship prompt
#+BEGIN_SRC nix :tangle generated/parked/terminals/starship.nix :noweb tangle :mkdirp yes :eval never-html
{ lib, ... }:
#+BEGIN_SRC nix :tangle generated/modules/terminals/starship.nix :noweb tangle :mkdirp yes :eval never-html
{ lib, config, pkgs, ... }:
let
# Path to your Starship config inside the flake
username = config.defaultUser or "henrov";
# Paths
starshipAssets = ../../../assets/system/conf/starship.toml;
# Read and parse the TOML file as a symbolic value
starshipConfig = lib.importTOML starshipAssets;
# Toggle on/off
enableStarship = true;
in
{
# Declare a top-level module option
options.starship = {
enable = lib.mkEnableOption "Enable Starship prompt";
configFiles = lib.mkOption {
type = lib.types.attrsOf lib.types.any;
default = {};
description = "Symbolic Starship configuration files";
};
};
# Install Starship system-wide
environment.systemPackages = [
pkgs.starship
];
# Populate the option safely
config = lib.mkIf enableStarship {
starship.enable = true;
starship.configFiles = {
"starship.toml" = starshipConfig;
assetsDir = ../../../assets/system/conf;
# Home Manager user settings
_module.args.hmUsers = {
${username} = {
home.packages = [
pkgs.starship
];
# Copy the config into ~/.config
home.file.".config/starship.toml".source = starshipAssets;
};
};
}
#+END_SRC
** =generated/parked/terminals/zsh.nix=
** =generated/modules/terminals/zsh.nix=
This sets up the zsh in the terminal
#+BEGIN_SRC nix :tangle generated/parked/terminals/zsh.nix :noweb tangle :mkdirp yes :eval never-html
#+BEGIN_SRC nix :tangle generated/modules/terminals/zsh.nix :noweb tangle :mkdirp yes :eval never-html
{ lib, pkgs, config, ... }:
let
programName = "zsh";
programAssets = ../../../assets/system/conf/${programName};
# Read the config file that will be injected into Zsh
zshInitFile = "${programAssets}/zsh.conf";
# Toggle for this module
enableProgram = config.enableZsh or false;
# User reference
username = config.defaultUser or "henrov";
programName = "zsh";
programAssets = ../../../assets/system/conf/${programName};
zshInitFile = "${programAssets}/zsh.conf";
in
{
# Top-level toggle
options.enableZsh = lib.mkEnableOption "Enable Zsh terminal with Oh-My-Zsh";
# System-wide package
environment.systemPackages = [ pkgs.zsh ];
# Only apply configuration if enabled
config = lib.mkIf enableProgram {
# Home Manager user settings
_module.args.hmUsers = {
${username} = {
# Enable Zsh + Oh-My-Zsh
programs.zsh = {
enable = true;
ohMyZsh.enable = true;
ohMyZsh.theme = "catppuccin-mocha";
ohMyZsh.plugins = [
"git"
"docker"
"direnv"
"zsh-autosuggestions"
"zsh-completions"
"zsh-history-substring-search"
];
# Install Zsh system-wide
environment.systemPackages = [ pkgs.zsh ];
# Enable Zsh + Oh-My-Zsh
programs.zsh.enable = true;
programs.zsh.ohMyZsh.enable = true;
programs.zsh.ohMyZsh.theme = "catppuccin-mocha";
programs.zsh.ohMyZsh.plugins = [
"git"
"docker"
"direnv"
"zsh-autosuggestions"
"zsh-completions"
"zsh-history-substring-search"
];
# Use the contents of zsh.conf as shellInit
programs.zsh.shellInit = builtins.readFile zshInitFile;
# Inject contents of zsh.conf
shellInit = builtins.readFile zshInitFile;
};
};
};
}
#+END_SRC