From 12cdda2dbba228da41a5e3d8e47c01d17cf0248c Mon Sep 17 00:00:00 2001 From: ed209 Date: Mon, 26 Jan 2026 06:37:19 -0500 Subject: [PATCH] feat: seperate home.nix per host --- hosts/sachiel/configuration.nix | 2 +- hosts/sachiel/home.nix | 95 +++++++++++++++++++++++++++++++++ 2 files changed, 96 insertions(+), 1 deletion(-) create mode 100644 hosts/sachiel/home.nix diff --git a/hosts/sachiel/configuration.nix b/hosts/sachiel/configuration.nix index 99bb381..1babc2b 100644 --- a/hosts/sachiel/configuration.nix +++ b/hosts/sachiel/configuration.nix @@ -27,7 +27,7 @@ agenix.nixosModules.default home-manager.nixosModules.home-manager { - home-manager.users."${inputs.nix-secrets.username}" = import ../../home-manager/home.nix; + home-manager.users."${inputs.nix-secrets.username}" = import ./home.nix; home-manager.extraSpecialArgs = {inherit inputs outputs;}; } lanzaboote.nixosModules.lanzaboote diff --git a/hosts/sachiel/home.nix b/hosts/sachiel/home.nix new file mode 100644 index 0000000..25ab020 --- /dev/null +++ b/hosts/sachiel/home.nix @@ -0,0 +1,95 @@ +# Home-manager configuration file +{ + inputs, + outputs, + pkgs, + ... +}: { + # You can import other home-manager modules here + imports = let + hm = outputs.homeModules; + in [ + # If you want to use modules your own flake exports (from modules/home-manager): + # outputs.homeManagerModules.example + + # Or modules exported from other flakes (such as nix-colors): + # inputs.nix-colors.homeManagerModules.default + + hm.git + hm.jujutsu + hm.re + hm.shell + hm.utils + hm.nvim + hm.nixgl + hm.terminal + hm.wluma + inputs.agenix.homeManagerModules.default + ]; + + nixpkgs = { + # You can add overlays here + overlays = [ + # Add overlays your own flake exports (from overlays and pkgs dir): + outputs.overlays.additions + outputs.overlays.modifications + # overlays.unstable-packages + # overlays.textobject-fix + # overlays.ltrace-fix + # overlays.fish-fix + + # Neovim nightly overlay (disabled as broken with unstable) + # neovim-nightly-overlay.overlays.default + + # Rust overlay + inputs.rust-overlay.overlays.default + + # Or define it inline, for example: + # (final: prev: { + # hi = final.hello.overrideAttrs (oldAttrs: { + # patches = [ ./change-hello-to-hi.patch ]; + # }); + # }) + ]; + # Configure your nixpkgs instance + config = { + # Disable if you don't want unfree packages + allowUnfree = true; + }; + }; + + home = { + inherit (inputs.nix-secrets) username; + inherit (inputs.nix-secrets) homeDirectory; + }; + + home.packages = with pkgs; [ + age + age-plugin-tpm + age-plugin-yubikey + inputs.agenix.packages.x86_64-linux.default + atproto-goat + inputs.bacon-ls.defaultPackage.x86_64-linux + dua + inputs.ekphos.packages.x86_64-linux.default + hexyl + lazyjj + ouch + (rust-bin.stable.latest.default.override { + extensions = ["rust-analyzer" "rustfmt" "rust-src"]; + }) + trashy + yubikey-manager + xcp + zoxide + ]; + + # Enable home-manager + programs.home-manager.enable = true; + + # Nicely reload system units when changing configs + systemd.user.startServices = "sd-switch"; + + # https://wiki.nixos.org/wiki/FAQ/When_do_I_update_stateVersion + home.stateVersion = "25.05"; +} -- 2.51.2