diff --git a/.vscode/extensions.json b/.vscode/extensions.json index 741afdd..1eb4248 100644 --- a/.vscode/extensions.json +++ b/.vscode/extensions.json @@ -1,5 +1,5 @@ { - "recommendations": [ - "davidanson.vscode-markdownlint" - ] -} \ No newline at end of file + "recommendations": [ + "davidanson.vscode-markdownlint" + ] +} diff --git a/.vscode/mcp.json b/.vscode/mcp.json index 9e26dfe..0967ef4 100644 --- a/.vscode/mcp.json +++ b/.vscode/mcp.json @@ -1 +1 @@ -{} \ No newline at end of file +{} diff --git a/flake.nix b/flake.nix index 0e81d31..ef00814 100644 --- a/flake.nix +++ b/flake.nix @@ -164,19 +164,23 @@ lib = self; } ); + packageSetup = import ./pkgs/default.nix { inherit nixpkgs; }; + inherit (packageSetup) localPackagesOverlay; inherit (lib.adev.systems) genSystems getImages; inherit (self) outputs; # for hydra in rec { inherit lib; # for allowing use of custom functions in nix repl + overlays.default = localPackagesOverlay; + hydraJobs = import ./hydra/jobs.nix { inherit inputs outputs systems; }; formatter = forEachSystem (system: nixpkgs.legacyPackages.${system}.nixfmt); nixosConfigurations = genSystems inputs outputs src (src + "/systems"); homeConfigurations = { "alice" = inputs.home-manager.lib.homeManagerConfiguration { - pkgs = import nixpkgs { system = "x86_64-linux"; }; + pkgs = packageSetup.mkPkgs "x86_64-linux"; modules = [ inputs.stylix.homeModules.stylix inputs.sops-nix.homeManagerModules.sops @@ -203,13 +207,7 @@ qcow = getImages nixosConfigurations "qcow"; }; - packages.x86_64-linux.lego-latest = - nixpkgs.legacyPackages.x86_64-linux.callPackage ./pkgs/lego-latest/default.nix - { }; - - packages.x86_64-linux.claurst = - nixpkgs.legacyPackages.x86_64-linux.callPackage ./pkgs/claurst/default.nix - { }; + packages = forEachSystem packageSetup.mkPackages; checks = import ./checks.nix { inherit inputs forEachSystem formatter; }; devShells = import ./shell.nix { inherit inputs forEachSystem checks; }; diff --git a/pkgs/default.nix b/pkgs/default.nix new file mode 100644 index 0000000..b320264 --- /dev/null +++ b/pkgs/default.nix @@ -0,0 +1,33 @@ +{ nixpkgs }: +let + localPackagesOverlay = final: _prev: { + lego-latest = final.callPackage ./lego-latest/default.nix { }; + claurst = final.callPackage ./claurst/default.nix { }; + }; + + mkPkgs = + system: + import nixpkgs { + inherit system; + overlays = [ localPackagesOverlay ]; + }; + + mkPackages = + system: + let + pkgs = mkPkgs system; + in + { + inherit (pkgs) + lego-latest + claurst + ; + }; +in +{ + inherit + localPackagesOverlay + mkPkgs + mkPackages + ; +} diff --git a/users/alice/home.nix b/users/alice/home.nix index 1bad4b5..a07b8cf 100644 --- a/users/alice/home.nix +++ b/users/alice/home.nix @@ -2,7 +2,6 @@ config, pkgs, lib, - outputs, machineConfig, ... }: @@ -91,7 +90,7 @@ gocryptfs awscli2 - outputs.packages.${pkgs.system}.claurst + claurst ]; };