diff options
| author | seth <[email protected]> | 2023-08-30 13:13:21 -0400 |
|---|---|---|
| committer | seth <[email protected]> | 2023-08-30 13:17:40 -0400 |
| commit | 584fab5b00d5d6016ba11a30c8e31a6314a5ce65 (patch) | |
| tree | 1e7abb71f4715dca2b916a5ab4df098d31104bd6 /templates/basic | |
| parent | 99e97b17e9b4e4f3d655aab9822402cb8545331e (diff) | |
refactor: don't instantiate nixpkgs
https://zimbatm.com/notes/1000-instances-of-nixpkgs
Diffstat (limited to 'templates/basic')
| -rw-r--r-- | templates/basic/default.nix | 25 | ||||
| -rw-r--r-- | templates/basic/flake.nix | 35 |
2 files changed, 33 insertions, 27 deletions
diff --git a/templates/basic/default.nix b/templates/basic/default.nix new file mode 100644 index 0000000..5d0e6a1 --- /dev/null +++ b/templates/basic/default.nix @@ -0,0 +1,25 @@ +{ + lib, + stdenv, + self, + version, + ... +}: +stdenv.mkDerivation { + pname = "hello"; + inherit version; + + src = self; + + installPhase = '' + echo "hi" > $out + ''; + + meta = with lib; { + description = ""; + homepage = ""; + license = licenses.mit; + maintainers = [maintainers.getchoo]; + platforms = platforms.linux; + }; +} diff --git a/templates/basic/flake.nix b/templates/basic/flake.nix index 32fd25b..17943a8 100644 --- a/templates/basic/flake.nix +++ b/templates/basic/flake.nix @@ -10,6 +10,7 @@ nixpkgs, ... }: let + inherit (nixpkgs) lib; version = builtins.substring 0 8 self.lastModifiedDate or "dirty"; systems = [ @@ -19,14 +20,13 @@ "aarch64-darwin" ]; - genSystems = nixpkgs.lib.genAttrs systems; - nixpkgsFor = genSystems (system: - import nixpkgs { - inherit system; - overlays = [self.overlays.default]; - }); - + genSystems = lib.genAttrs systems; + nixpkgsFor = genSystems (sys: nixpkgs.legacyPackages.${sys}); forAllSystems = fn: genSystems (sys: fn nixpkgsFor.${sys}); + + packageFn = pkgs: { + hello = pkgs.callPackage ./default.nix {inherit self version;}; + }; in { devShells = forAllSystems (pkgs: { default = pkgs.mkShell { @@ -43,25 +43,6 @@ default = pkgs.hello; }); - overlays.default = _: prev: { - hello = prev.stdenv.mkDerivation { - pname = "hello"; - inherit version; - - src = self; - - installPhase = '' - echo "hi" > $out - ''; - - meta = with prev.lib; { - description = ""; - homepage = ""; - license = licenses.mit; - maintainers = [maintainers.getchoo]; - platforms = platforms.linux; - }; - }; - }; + overlays.default = _: prev: (packageFn prev); }; } |
