added enable options to termina modules.

This commit is contained in:
Gabe Venberg 2024-05-29 15:18:13 -05:00
parent 6f0e167087
commit 3eee4e105d
16 changed files with 358 additions and 298 deletions

View file

@ -4,10 +4,13 @@
lib,
...
}: {
options.user.btop.enable = lib.mkEnableOption "enable btop";
config = lib.mkIf config.user.btop.enable {
programs.btop = {
enable = true;
settings = {
vim_keys = true;
};
};
};
}

View file

@ -0,0 +1,22 @@
{
config,
pkgs,
lib,
...
}: {
imports=[
./nushell
./zellij
./btop.nix
./direnv.nix
./git.nix
./gpg.nix
./irssi.nix
./pass.nix
./ssh-agent.nix
./starship.nix
./tiny-irc.nix
./voice.nix
./zsh.nix
];
}

View file

@ -4,8 +4,11 @@
lib,
...
}: {
options.user.direnv.enable = lib.mkEnableOption "enable direnv";
config= lib.mkIf config.user.direnv.enable{
programs.direnv = {
enable = true;
nix-direnv.enable = true;
};
};
}

View file

@ -6,6 +6,7 @@
}: {
options = {
user.git = {
enable= lib.mkEnableOption "enable git";
workProfile = {
enable = lib.mkEnableOption "git work profile";
email = lib.mkOption {
@ -26,7 +27,7 @@
};
};
config = {
config = lib.mkIf config.user.git.enable {
programs.git = {
enable = true;
aliases = {

View file

@ -4,6 +4,8 @@
lib,
...
}: {
options.user.gpg.enable = lib.mkEnableOption "enable gpg";
config = lib.mkIf config.user.gpg.enable {
programs.gpg.enable = true;
services.gpg-agent = {
@ -11,4 +13,5 @@
enableSshSupport = true;
pinentryPackage = lib.mkDefault pkgs.pinentry-tty;
};
};
}

View file

@ -4,6 +4,8 @@
lib,
...
}: {
options.user.irssi.enable = lib.mkEnableOption "enable irssi";
config = lib.mkIf config.user.irssi.enable {
programs.irssi = {
enable = true;
networks = {
@ -35,4 +37,5 @@
};
};
};
};
}

View file

@ -1,30 +1,36 @@
{
config,
lib,
pkgs,
...
}: {
options.user.nushell.enable = lib.mkEnableOption "enable nushell";
config = lib.mkIf config.user.nushell.enable {
home.file = {
".config/nushell/completions".source = ./completions;
};
programs = {
#sessionVariables, sessionPath and shellAliases are not applied to nushell.
programs.nushell = {
nushell = {
enable = true;
configFile.source = ./config.nu;
envFile.source = ./env.nu;
};
home.file = {
".config/nushell/completions".source = ./completions;
};
programs.yazi.enableNushellIntegration = true;
programs.zoxide.enableNushellIntegration = true;
programs.starship.enableNushellIntegration = true;
programs.carapace = {
yazi.enableNushellIntegration = true;
zoxide.enableNushellIntegration = true;
starship.enableNushellIntegration = true;
eza.enableNushellIntegration = true;
carapace = {
enable = true;
enableNushellIntegration = true;
};
programs.direnv.enableNushellIntegration = true;
services.gpg-agent.enableNushellIntegration = true;
services.pueue = {
direnv.enableNushellIntegration = true;
};
services = {
gpg-agent.enableNushellIntegration = true;
pueue = {
enable = true;
settings = {
daemon = {
@ -32,4 +38,6 @@
};
};
};
};
};
}

View file

@ -4,6 +4,8 @@
lib,
...
}: {
options.user.pass.enable = lib.mkEnableOption "enable pass password manager";
config = lib.mkIf config.user.pass.enable {
programs.password-store = {
enable = true;
settings = {
@ -14,4 +16,5 @@
programs.nushell.extraEnv = ''
$env.PASSWORD_STORE_DIR = ($env.HOME | path join "keys" "password-store")
'';
};
}

View file

@ -4,8 +4,11 @@
lib,
...
}: {
options.user.ssh-agent.enable = lib.mkEnableOption "enable ssh-agent";
config = lib.mkIf config.user.ssh-agent.enable {
services.ssh-agent.enable = true;
programs.nushell.extraEnv = ''
$env.SSH_AUTH_SOCK = $"($env.XDG_RUNTIME_DIR)/ssh-agent"
'';
};
}

View file

@ -4,6 +4,8 @@
lib,
...
}: {
options.user.starship.enable = lib.mkEnableOption "enable starship prompt";
config = lib.mkIf config.user.starship.enable {
programs.starship = {
enable = true;
settings = {
@ -106,4 +108,5 @@
character.disabled = false;
};
};
};
}

View file

@ -4,6 +4,8 @@
lib,
...
}: {
options.user.tiny.enable=lib.mkEnableOption "enable tiny irc client";
config=lib.mkIf config.user.tiny.enable {
programs.tiny = {
enable = true;
settings = {
@ -31,9 +33,6 @@
];
sasl = {
username = "toric";
# password = {
# command = "pass show libera";
# };
pem = "${config.home.homeDirectory}/keys/certs/irc.pem";
};
}
@ -47,4 +46,4 @@
};
};
};
}
};}

View file

@ -4,13 +4,9 @@
lib,
...
}: {
options = {
user.enable-speech = lib.mkEnableOption "espeak";
};
options.user.enable-speech = lib.mkEnableOption "espeak";
config =
lib.mkIf config.user.enable-speech
{
config = lib.mkIf config.user.enable-speech {
home.shellAliases = {
say = "espeak -p 10 -s 150 -a 200";
};

View file

@ -1,10 +1,14 @@
{
config,
lib,
pkgs,
...
}: {
options.user.zellij.enable = lib.mkEnableOption "enable zellij";
config = lib.mkIf config.user.zellij.enable {
programs.zellij.enable = true;
home.file = {
".config/zellij/config.kdl".source = ./config.kdl;
};
};
}

View file

@ -4,18 +4,18 @@
lib,
...
}: {
programs.starship.enableZshIntegration = true;
programs.fzf.enableZshIntegration = true;
programs.zoxide.enableZshIntegration = true;
programs.yazi.enableZshIntegration = true;
programs.direnv.enableZshIntegration = true;
programs.kitty.shellIntegration.enableZshIntegration = true;
services.gpg-agent.enableZshIntegration = true;
programs.carapace.enableZshIntegration = false;
home.packages = with pkgs; [
curl
];
programs.zsh = {
options.user.zsh.enable = lib.mkEnableOption "enable zsh";
config = lib.mkIf config.user.zsh.enable {
programs = {
starship.enableZshIntegration = true;
fzf.enableZshIntegration = true;
zoxide.enableZshIntegration = true;
yazi.enableZshIntegration = true;
eza.enableZshIntegration = true;
direnv.enableZshIntegration = true;
kitty.shellIntegration.enableZshIntegration = true;
carapace.enableZshIntegration = false;
zsh = {
enable = true;
enableCompletion = true;
initExtra = lib.mkMerge [
@ -101,4 +101,10 @@
];
};
};
};
services.gpg-agent.enableZshIntegration = true;
home.packages = with pkgs; [
curl
];
};
}

View file

@ -5,16 +5,18 @@
...
}: {
imports = [
../../modules/home-manager/terminal/zsh.nix
../../modules/home-manager/terminal/git.nix
../../modules/home-manager/terminal/zellij
../../modules/home-manager/terminal/ssh-agent.nix
../../modules/home-manager/terminal/direnv.nix
../../modules/home-manager/terminal/btop.nix
../../modules/home-manager/terminal
../../modules/home-manager/nvim
];
user.nvim.enable = true;
user = {
btop.enable = true;
direnv.enable = true;
git.enable = true;
ssh-agent.enable = true;
zsh.enable = true;
nvim.enable = true;
};
home.packages = with pkgs; [
sshfs
@ -44,6 +46,7 @@
programs = {
yazi.enable = true;
fzf.enable = true;
eza.enable = true;
ripgrep.enable = true;
bat.enable = true;
man.enable = true;

View file

@ -11,10 +11,15 @@
../../modules/home-manager/terminal/tiny-irc.nix
];
user.nvim = {
user = {
nushell.enable = true;
starship.enable = true;
tiny.enable = true;
nvim = {
enable-lsp = true;
enable-treesitter = true;
};
};
home.packages = with pkgs; [
tre-command
@ -22,11 +27,6 @@
hyperfine
];
home.sessionVariables = {
PIPENV_VENV_IN_PROJECT = 1;
POETRY_VIRTUALENVS_IN_PROJECT = 1;
};
programs = {
zoxide.enable = true;
tealdeer.enable = true;