|
14 | 14 | (system:
|
15 | 15 | let
|
16 | 16 | pkgs = nixpkgs.legacyPackages.${system};
|
17 |
| - pkgs-unstable = nixpkgs-unstable.legacyPackages.${system}; |
18 | 17 | versions = builtins.fromJSON (builtins.readFile ./versions.json);
|
19 |
| - buildTerraform = { version, hash, vendorHash }: |
20 |
| - # https://www.hashicorp.com/blog/hashicorp-adopts-business-source-license |
21 |
| - if builtins.compareVersions version "1.6.0" >= 0 |
22 |
| - then |
23 |
| - # https://github.com/NixOS/nixpkgs/blob/nixpkgs-unstable/pkgs/applications/networking/cluster/terraform/default.nix |
24 |
| - pkgs-unstable.mkTerraform |
25 |
| - { |
26 |
| - inherit version hash vendorHash; |
27 |
| - patches = [ "${nixpkgs-unstable}/pkgs/applications/networking/cluster/terraform/provider-path-0_15.patch" ]; |
28 |
| - } |
29 |
| - else |
30 |
| - # https://github.com/NixOS/nixpkgs/blob/nixos-23.05/pkgs/applications/networking/cluster/terraform/default.nix |
31 |
| - pkgs.mkTerraform { |
32 |
| - inherit version hash vendorHash; |
33 |
| - patches = [ "${nixpkgs}/pkgs/applications/networking/cluster/terraform/provider-path-0_15.patch" ]; |
34 |
| - }; |
35 | 18 | in
|
36 | 19 | {
|
37 | 20 | # https://github.com/NixOS/nix/issues/7165
|
|
40 | 23 | (builtins.map
|
41 | 24 | (version: {
|
42 | 25 | name = version;
|
43 |
| - value = buildTerraform { |
44 |
| - inherit version; |
| 26 | + value = self.lib.buildTerraform { |
| 27 | + inherit system version; |
45 | 28 | inherit (versions.${version}) hash vendorHash;
|
46 | 29 | };
|
47 | 30 | })
|
|
56 | 39 | ];
|
57 | 40 | };
|
58 | 41 | }) // {
|
59 |
| - lib.packageFromVersion = { system, version }: self.packages.${system}.${version}; |
| 42 | + lib = { |
| 43 | + buildTerraform = { system, version, hash, vendorHash }: |
| 44 | + let |
| 45 | + pkgs = nixpkgs.legacyPackages.${system}; |
| 46 | + pkgs-unstable = nixpkgs-unstable.legacyPackages.${system}; |
| 47 | + in |
| 48 | + # https://www.hashicorp.com/blog/hashicorp-adopts-business-source-license |
| 49 | + if builtins.compareVersions version "1.6.0" >= 0 |
| 50 | + then |
| 51 | + # https://github.com/NixOS/nixpkgs/blob/nixpkgs-unstable/pkgs/applications/networking/cluster/terraform/default.nix |
| 52 | + pkgs-unstable.mkTerraform |
| 53 | + { |
| 54 | + inherit version hash vendorHash; |
| 55 | + patches = [ "${nixpkgs-unstable}/pkgs/applications/networking/cluster/terraform/provider-path-0_15.patch" ]; |
| 56 | + } |
| 57 | + else |
| 58 | + # https://github.com/NixOS/nixpkgs/blob/nixos-23.05/pkgs/applications/networking/cluster/terraform/default.nix |
| 59 | + pkgs.mkTerraform { |
| 60 | + inherit version hash vendorHash; |
| 61 | + patches = [ "${nixpkgs}/pkgs/applications/networking/cluster/terraform/provider-path-0_15.patch" ]; |
| 62 | + }; |
| 63 | + packageFromVersion = { system, version }: self.packages.${system}.${version}; |
| 64 | + }; |
60 | 65 | };
|
61 | 66 | }
|
0 commit comments