This commit is contained in:
Chris Kruining 2025-07-30 21:38:15 +02:00
parent 9aa634bd71
commit 3528e22c67
Signed by: chris
SSH key fingerprint: SHA256:nG82MUfuVdRVyCKKWqhY+pCrbz9nbX6uzUns4RKa1Pg
54 changed files with 380 additions and 1243 deletions

47
modules/home/default.nix Normal file
View file

@ -0,0 +1,47 @@
{ pkgs, config, lib, namespace, ... }:
let
inherit (lib) mkOption;
inherit (lib.types) enum;
cfg = config.${namespace}.defaults;
in {
options.${namespace}.defaults = {
editor = mkOption {
type = enum [ "nano" "nvim" "zed" ];
default = "nano";
description = "Default editor for text manipulation";
example = "nvim";
};
shell = mkOption {
type = enum [ "fish" "zsh" "bash" ];
default = "zsh";
description = "Default shell";
example = "zsh";
};
terminal = mkOption {
type = enum [ "ghostty" "alacritty" ];
default = "ghostty";
description = "Default terminal";
example = "ghostty";
};
browser = mkOption {
type = enum [ "chrome" "ladybird" "zen" ];
default = "zen";
description = "Default terminal";
example = "zen";
};
};
config = {
home.sessionVariables = {
EDITOR = cfg.editor;
TERMINAL = cfg.terminal;
BROWSER = cfg.browser;
};
shell = pkgs.${cfg.shell};
};
}