From 43a47321e4d7e59e295e2f978db6d2a1cce9dea0 Mon Sep 17 00:00:00 2001 From: Gabe Venberg Date: Thu, 9 May 2024 13:11:22 -0500 Subject: [PATCH] added 'roles', sets of installed programs. --- hosts/archlaptop-vm/default.nix | 2 +- hosts/gabe-archlaptop.nix | 2 +- hosts/gabe-gv-workstation.nix | 2 +- hosts/workstation-vm/default.nix | 2 +- modules/home-manager/terminal/zsh.nix | 2 +- .../default.nix => roles/minimal-terminal.nix | 24 ++++-------- roles/terminal.nix | 38 +++++++++++++++++++ 7 files changed, 50 insertions(+), 22 deletions(-) rename modules/home-manager/terminal/default.nix => roles/minimal-terminal.nix (78%) create mode 100644 roles/terminal.nix diff --git a/hosts/archlaptop-vm/default.nix b/hosts/archlaptop-vm/default.nix index 2d275ed..2a20b28 100644 --- a/hosts/archlaptop-vm/default.nix +++ b/hosts/archlaptop-vm/default.nix @@ -87,7 +87,7 @@ inputs.nixpkgs.lib.nixosSystem { }; }; imports = [ - ../../modules/home-manager/terminal + ../../roles/terminal.nix ../../modules/home-manager/nvim ../../modules/home-manager/common.nix ../../modules/home-manager/email.nix diff --git a/hosts/gabe-archlaptop.nix b/hosts/gabe-archlaptop.nix index 18312b7..b6d7bc4 100644 --- a/hosts/gabe-archlaptop.nix +++ b/hosts/gabe-archlaptop.nix @@ -34,7 +34,7 @@ inputs.home-manager.lib.homeManagerConfiguration { home.username = "gabe"; home.homeDirectory = /home/gabe; imports = [ - ../modules/home-manager/terminal + ../roles/terminal.nix ../modules/home-manager/nvim ../modules/home-manager/common.nix ../modules/home-manager/syncthing.nix diff --git a/hosts/gabe-gv-workstation.nix b/hosts/gabe-gv-workstation.nix index b5a7a27..1f8add8 100644 --- a/hosts/gabe-gv-workstation.nix +++ b/hosts/gabe-gv-workstation.nix @@ -37,7 +37,7 @@ inputs.home-manager.lib.homeManagerConfiguration { home.username = "gabe"; home.homeDirectory = /home/gabe; imports = [ - ../modules/home-manager/terminal + ../roles/terminal.nix ../modules/home-manager/nvim ../modules/home-manager/common.nix ../modules/home-manager/syncthing.nix diff --git a/hosts/workstation-vm/default.nix b/hosts/workstation-vm/default.nix index 8ec75f3..7bb7ae6 100644 --- a/hosts/workstation-vm/default.nix +++ b/hosts/workstation-vm/default.nix @@ -88,7 +88,7 @@ inputs.nixpkgs.lib.nixosSystem { }; }; imports = [ - ../../modules/home-manager/terminal + ../../roles/terminal.nix ../../modules/home-manager/nvim ../../modules/home-manager/common.nix inputs.nixvim.homeManagerModules.nixvim diff --git a/modules/home-manager/terminal/zsh.nix b/modules/home-manager/terminal/zsh.nix index 41bcdc6..66a9a24 100644 --- a/modules/home-manager/terminal/zsh.nix +++ b/modules/home-manager/terminal/zsh.nix @@ -30,7 +30,7 @@ #select first item when you press tab the first time. setopt MENU_COMPLETE '' - (lib.mkif (!config.programs.starship.enable) '' + (lib.mkIf (!config.programs.starship.enable) '' autoload -U promptinit promptinit autoload -U colors diff --git a/modules/home-manager/terminal/default.nix b/roles/minimal-terminal.nix similarity index 78% rename from modules/home-manager/terminal/default.nix rename to roles/minimal-terminal.nix index 41d974f..f64c863 100644 --- a/modules/home-manager/terminal/default.nix +++ b/roles/minimal-terminal.nix @@ -4,14 +4,18 @@ lib, ... }: { + 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 + ]; home.packages = with pkgs; [ sshfs just fd sd - tre-command - diskonaut - hyperfine curl ]; @@ -37,25 +41,11 @@ sshmnt = "sshfs -o idmap=user,compression=no,reconnect,follow_symlinks,dir_cache=yes,ServerAliveInterval=15"; }; - imports = [ - ./nushell - ./zsh.nix - ./git.nix - ./starship.nix - ./voice.nix - ./zellij - ./tiny-irc.nix - ./ssh-agent.nix - ./direnv - ]; - programs = { yazi.enable = true; - zoxide.enable = true; fzf.enable = true; ripgrep.enable = true; bat.enable = true; - tealdeer.enable = true; btop.enable = true; man.enable = true; }; diff --git a/roles/terminal.nix b/roles/terminal.nix new file mode 100644 index 0000000..0f0f345 --- /dev/null +++ b/roles/terminal.nix @@ -0,0 +1,38 @@ +{ + config, + pkgs, + lib, + ... +}: { + imports = [ + ./minimal-terminal.nix + ../modules/home-manager/terminal/nushell + ../modules/home-manager/terminal/starship.nix + ../modules/home-manager/terminal/voice.nix + ../modules/home-manager/terminal/tiny-irc.nix + ]; + home.packages = with pkgs; [ + tre-command + diskonaut + hyperfine + ]; + + # Home Manager is pretty good at managing dotfiles. The primary way to manage + # plain files is through 'home.file'. + home.file = { + }; + + home.sessionVariables = { + PIPENV_VENV_IN_PROJECT = 1; + POETRY_VIRTUALENVS_IN_PROJECT = 1; + }; + + home.shellAliases = { + # doc2pdf = "loffice --convert-to-pdf --headless *.docx"; + }; + + programs = { + zoxide.enable = true; + tealdeer.enable = true; + }; +}