diff options
author | Jan Tojnar <jtojnar@gmail.com> | 2022-05-24 18:03:46 +0200 |
---|---|---|
committer | Jan Tojnar <jtojnar@gmail.com> | 2022-05-24 19:12:12 +0200 |
commit | 7aae279ad9aacbf09293912939c2ba5795033f60 (patch) | |
tree | 6e36846fa2c8b10ef908468faa8f3d56288697b5 /pkgs/build-support/fetchgithub/default.nix | |
parent | 1daa1ede66c69d146407dc9379f6d40de4e51d0d (diff) | |
download | nixpkgs-7aae279ad9aacbf09293912939c2ba5795033f60.tar nixpkgs-7aae279ad9aacbf09293912939c2ba5795033f60.tar.gz nixpkgs-7aae279ad9aacbf09293912939c2ba5795033f60.tar.bz2 nixpkgs-7aae279ad9aacbf09293912939c2ba5795033f60.tar.lz nixpkgs-7aae279ad9aacbf09293912939c2ba5795033f60.tar.xz nixpkgs-7aae279ad9aacbf09293912939c2ba5795033f60.tar.zst nixpkgs-7aae279ad9aacbf09293912939c2ba5795033f60.zip |
unstableGitUpdater: fix updating fetchzip-based sources
a67950f20b97a293b2fefeecc349c6b785321e4b added `url` attribute from `fetchurl` and therefore also from `fetchzip`. We previously relied on `url` from fetchgit-based fetchers to find the repo URL but now it will just return tarballs in the case of `fetchFrom{GitHub,GitLab}`. Let’s add an attribute to `fetch{git,FromGitHub,FromGitLab}` to expose a repo URL consistently.
Diffstat (limited to 'pkgs/build-support/fetchgithub/default.nix')
-rw-r--r-- | pkgs/build-support/fetchgithub/default.nix | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/pkgs/build-support/fetchgithub/default.nix b/pkgs/build-support/fetchgithub/default.nix index 27cb8312ea0..cfb6a6ca7cd 100644 --- a/pkgs/build-support/fetchgithub/default.nix +++ b/pkgs/build-support/fetchgithub/default.nix @@ -42,11 +42,20 @@ let ''; netrcImpureEnvVars = [ "${varBase}USERNAME" "${varBase}PASSWORD" ]; }; + + gitRepoUrl = "${baseUrl}.git"; + fetcherArgs = (if useFetchGit then { - inherit rev deepClone fetchSubmodules sparseCheckout; url = "${baseUrl}.git"; + inherit rev deepClone fetchSubmodules sparseCheckout; url = gitRepoUrl; } // lib.optionalAttrs (leaveDotGit != null) { inherit leaveDotGit; } - else { url = "${baseUrl}/archive/${rev}.tar.gz"; } + else { + url = "${baseUrl}/archive/${rev}.tar.gz"; + + passthru = { + inherit gitRepoUrl; + }; + } ) // privateAttrs // passthruAttrs // { inherit name; }; in |