treewide: Make some fetchers overridable

piegames a205795c 60d3ce94

+29 -5
+3 -1
pkgs/build-support/fetchbitbucket/default.nix
··· 1 - { fetchzip }: 1 + { fetchzip, lib }: 2 2 3 + lib.makeOverridable ( 3 4 { owner, repo, rev, name ? "source" 4 5 , ... # For hash agility 5 6 }@args: fetchzip ({ ··· 7 8 url = "https://bitbucket.org/${owner}/${repo}/get/${rev}.tar.gz"; 8 9 meta.homepage = "https://bitbucket.org/${owner}/${repo}/"; 9 10 } // removeAttrs args [ "owner" "repo" "rev" ]) // { inherit rev; } 11 + )
+3 -1
pkgs/build-support/fetchcvs/default.nix
··· 3 3 # tag="<tagname>" (get version by tag name) 4 4 # If you don't specify neither one date="NOW" will be used (get latest) 5 5 6 - {stdenvNoCC, cvs, openssh}: 6 + {stdenvNoCC, cvs, openssh, lib}: 7 7 8 + lib.makeOverridable ( 8 9 {cvsRoot, module, tag ? null, date ? null, sha256}: 9 10 10 11 stdenvNoCC.mkDerivation { ··· 18 19 19 20 inherit cvsRoot module sha256 tag date; 20 21 } 22 + )
+3 -1
pkgs/build-support/fetchdarcs/default.nix
··· 1 - {stdenvNoCC, darcs, cacert}: 1 + {stdenvNoCC, darcs, cacert, lib}: 2 2 3 + lib.makeOverridable ( 3 4 { url 4 5 , rev ? null 5 6 , context ? null ··· 21 22 22 23 inherit url rev context name; 23 24 } 25 + )
+2
pkgs/build-support/fetchgit/default.nix
··· 10 10 appendShort = lib.optionalString ((builtins.match "[a-f0-9]*" rev) != null) "-${short}"; 11 11 in "${if matched == null then base else builtins.head matched}${appendShort}"; 12 12 in 13 + lib.makeOverridable ( 13 14 { url, rev ? "HEAD", md5 ? "", sha256 ? "", hash ? "", leaveDotGit ? deepClone 14 15 , fetchSubmodules ? true, deepClone ? false 15 16 , branchName ? null ··· 107 108 gitRepoUrl = url; 108 109 }; 109 110 } 111 + )
+2
pkgs/build-support/fetchgitea/default.nix
··· 2 2 3 3 { lib, fetchFromGitHub }: 4 4 5 + lib.makeOverridable ( 5 6 { domain, ... }@args: 6 7 7 8 fetchFromGitHub ((removeAttrs args [ "domain" ]) // { githubBase = domain; }) 9 + )
+2
pkgs/build-support/fetchgithub/default.nix
··· 1 1 { lib, fetchgit, fetchzip }: 2 2 3 + lib.makeOverridable ( 3 4 { owner, repo, rev, name ? "source" 4 5 , fetchSubmodules ? false, leaveDotGit ? null 5 6 , deepClone ? false, private ? false, forceFetchGit ? false ··· 60 61 in 61 62 62 63 fetcher fetcherArgs // { meta = newMeta; inherit rev owner repo; } 64 + )
+2
pkgs/build-support/fetchgitiles/default.nix
··· 1 1 { fetchzip, lib }: 2 2 3 + lib.makeOverridable ( 3 4 { url, rev, name ? "source", ... } @ args: 4 5 5 6 fetchzip ({ ··· 8 9 stripRoot = false; 9 10 meta.homepage = url; 10 11 } // removeAttrs args [ "url" "rev" ]) // { inherit rev; } 12 + )
+2
pkgs/build-support/fetchgitlab/default.nix
··· 1 1 { fetchgit, fetchzip, lib }: 2 2 3 + lib.makeOverridable ( 3 4 # gitlab example 4 5 { owner, repo, rev, protocol ? "https", domain ? "gitlab.com", name ? "source", group ? null 5 6 , fetchSubmodules ? false, leaveDotGit ? false, deepClone ? false ··· 30 31 in 31 32 32 33 fetcher fetcherArgs // { meta.homepage = "${protocol}://${domain}/${slug}/"; inherit rev; } 34 + )
+5 -1
pkgs/build-support/fetchgitlocal/default.nix
··· 1 - { runCommand, git }: src: 1 + { runCommand, git, lib }: 2 + 3 + lib.makeOverridable ( 4 + src: 2 5 3 6 let 4 7 srcStr = toString src; ··· 38 41 ''; 39 42 40 43 in nixPath 44 + )
+3 -1
pkgs/build-support/fetchsavannah/default.nix
··· 1 - { fetchzip }: 1 + { fetchzip, lib }: 2 2 3 + lib.makeOverridable ( 3 4 # cgit example, snapshot support is optional in cgit 4 5 { repo, rev, name ? "source" 5 6 , ... # For hash agility ··· 8 9 url = "https://git.savannah.gnu.org/cgit/${repo}.git/snapshot/${repo}-${rev}.tar.gz"; 9 10 meta.homepage = "https://git.savannah.gnu.org/cgit/${repo}.git/"; 10 11 } // removeAttrs args [ "repo" "rev" ]) // { inherit rev; } 12 + )
+2
pkgs/build-support/fetchsourcehut/default.nix
··· 1 1 { fetchgit, fetchhg, fetchzip, lib }: 2 2 3 + lib.makeOverridable ( 3 4 { owner 4 5 , repo, rev 5 6 , domain ? "sr.ht" ··· 48 49 inherit rev; 49 50 meta.homepage = "${baseUrl}"; 50 51 } 52 + )