Support local files too
Add support for local files in addition to http / https.
This commit is contained in:
parent
5932243fcc
commit
6e1fbe397a
15
default.nix
15
default.nix
|
@ -83,10 +83,12 @@ let
|
||||||
}
|
}
|
||||||
else if info.type == "tarball" then
|
else if info.type == "tarball" then
|
||||||
{ outPath =
|
{ outPath =
|
||||||
|
if builtins.substring 0 7 info.url == "http://" || builtins.substring 0 8 info.url == "https://" then
|
||||||
fetchTarball
|
fetchTarball
|
||||||
({ inherit (info) url; }
|
({ inherit (info) url; }
|
||||||
// (if info ? narHash then { sha256 = info.narHash; } else {})
|
// (if info ? narHash then { sha256 = info.narHash; } else {})
|
||||||
);
|
)
|
||||||
|
else throw "can't support url scheme of flake input with url '${info.url}'";
|
||||||
narHash = info.narHash;
|
narHash = info.narHash;
|
||||||
}
|
}
|
||||||
else if info.type == "gitlab" then
|
else if info.type == "gitlab" then
|
||||||
|
@ -99,13 +101,18 @@ let
|
||||||
shortRev = builtins.substring 0 7 info.rev;
|
shortRev = builtins.substring 0 7 info.rev;
|
||||||
}
|
}
|
||||||
else if info.type == "file" then
|
else if info.type == "file" then
|
||||||
{ outPath = fetchurl
|
{ outPath =
|
||||||
|
if builtins.substring 0 7 info.url == "http://" || builtins.substring 0 8 info.url == "https://" then
|
||||||
|
fetchurl
|
||||||
({ inherit (info) url; }
|
({ inherit (info) url; }
|
||||||
// (if info ? narHash then { sha256 = info.narHash; } else {}));
|
// (if info ? narHash then { sha256 = info.narHash; } else {}))
|
||||||
|
else if builtins.substring 0 7 info.url == "file://" then
|
||||||
|
builtins.path { path = builtins.substring 7 (-1) info.url; }
|
||||||
|
else throw "can't support url scheme of flake input with url '${info.url}'";
|
||||||
narHash = info.narHash;
|
narHash = info.narHash;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
# FIXME: add Mercurial, tarball inputs.
|
# FIXME: add Mercurial input
|
||||||
throw "flake input has unsupported input type '${info.type}'";
|
throw "flake input has unsupported input type '${info.type}'";
|
||||||
|
|
||||||
callFlake4 = flakeSrc: locks:
|
callFlake4 = flakeSrc: locks:
|
||||||
|
|
Loading…
Reference in a new issue