fetchFromSourcehut: init
This commit is contained in:
25
pkgs/build-support/fetchsourcehut/default.nix
Normal file
25
pkgs/build-support/fetchsourcehut/default.nix
Normal file
@@ -0,0 +1,25 @@
|
||||
{ fetchzip, lib }:
|
||||
|
||||
{ owner
|
||||
, repo, rev
|
||||
, domain ? "sr.ht"
|
||||
, vc ? "git"
|
||||
, name ? "source"
|
||||
, ... # For hash agility
|
||||
} @ args:
|
||||
|
||||
with lib;
|
||||
|
||||
assert (lib.assertOneOf "vc" vc [ "hg" "git" ]);
|
||||
|
||||
let
|
||||
baseUrl = "https://${vc}.${domain}/${owner}/${repo}";
|
||||
|
||||
in fetchzip (recursiveUpdate {
|
||||
inherit name;
|
||||
url = "${baseUrl}/archive/${rev}.tar.gz";
|
||||
meta.homepage = "${baseUrl}/";
|
||||
extraPostFetch = optionalString (vc == "hg") ''
|
||||
rm -f "$out/.hg_archival.txt"
|
||||
''; # impure file; see #12002
|
||||
} (removeAttrs args [ "owner" "repo" "rev" "domain" "vc" ])) // { inherit rev; }
|
||||
Reference in New Issue
Block a user