fetch-yarn-deps: format with nixfmt (RFC166)
This commit is contained in:
parent
e691f848a2
commit
1151b39c24
@ -1,4 +1,16 @@
|
||||
{ stdenv, lib, makeWrapper, coreutils, nix-prefetch-git, fetchurl, nodejs-slim, prefetch-yarn-deps, cacert, callPackage, nix }:
|
||||
{
|
||||
stdenv,
|
||||
lib,
|
||||
makeWrapper,
|
||||
coreutils,
|
||||
nix-prefetch-git,
|
||||
fetchurl,
|
||||
nodejs-slim,
|
||||
prefetch-yarn-deps,
|
||||
cacert,
|
||||
callPackage,
|
||||
nix,
|
||||
}:
|
||||
|
||||
let
|
||||
yarnpkg-lockfile-tar = fetchurl {
|
||||
@ -6,9 +18,9 @@ let
|
||||
hash = "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==";
|
||||
};
|
||||
|
||||
tests = callPackage ./tests {};
|
||||
|
||||
in {
|
||||
tests = callPackage ./tests { };
|
||||
in
|
||||
{
|
||||
prefetch-yarn-deps = stdenv.mkDerivation {
|
||||
name = "prefetch-yarn-deps";
|
||||
|
||||
@ -30,12 +42,20 @@ in {
|
||||
|
||||
patchShebangs $out/libexec
|
||||
makeWrapper $out/libexec/index.js $out/bin/prefetch-yarn-deps \
|
||||
--prefix PATH : ${lib.makeBinPath [ coreutils nix-prefetch-git nix ]}
|
||||
--prefix PATH : ${
|
||||
lib.makeBinPath [
|
||||
coreutils
|
||||
nix-prefetch-git
|
||||
nix
|
||||
]
|
||||
}
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
passthru = { inherit tests; };
|
||||
passthru = {
|
||||
inherit tests;
|
||||
};
|
||||
};
|
||||
|
||||
fixup-yarn-lock = stdenv.mkDerivation {
|
||||
@ -63,45 +83,75 @@ in {
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
passthru = { inherit tests; };
|
||||
passthru = {
|
||||
inherit tests;
|
||||
};
|
||||
};
|
||||
|
||||
fetchYarnDeps = let
|
||||
f = {
|
||||
name ? "offline",
|
||||
src ? null,
|
||||
hash ? "",
|
||||
sha256 ? "",
|
||||
...
|
||||
}@args: let
|
||||
hash_ =
|
||||
if hash != "" then { outputHashAlgo = null; outputHash = hash; }
|
||||
else if sha256 != "" then { outputHashAlgo = "sha256"; outputHash = sha256; }
|
||||
else { outputHashAlgo = "sha256"; outputHash = lib.fakeSha256; };
|
||||
in stdenv.mkDerivation ({
|
||||
inherit name;
|
||||
fetchYarnDeps =
|
||||
let
|
||||
f =
|
||||
{
|
||||
name ? "offline",
|
||||
src ? null,
|
||||
hash ? "",
|
||||
sha256 ? "",
|
||||
...
|
||||
}@args:
|
||||
let
|
||||
hash_ =
|
||||
if hash != "" then
|
||||
{
|
||||
outputHashAlgo = null;
|
||||
outputHash = hash;
|
||||
}
|
||||
else if sha256 != "" then
|
||||
{
|
||||
outputHashAlgo = "sha256";
|
||||
outputHash = sha256;
|
||||
}
|
||||
else
|
||||
{
|
||||
outputHashAlgo = "sha256";
|
||||
outputHash = lib.fakeSha256;
|
||||
};
|
||||
in
|
||||
stdenv.mkDerivation (
|
||||
{
|
||||
inherit name;
|
||||
|
||||
dontUnpack = src == null;
|
||||
dontInstall = true;
|
||||
dontUnpack = src == null;
|
||||
dontInstall = true;
|
||||
|
||||
nativeBuildInputs = [ prefetch-yarn-deps cacert ];
|
||||
GIT_SSL_CAINFO = "${cacert}/etc/ssl/certs/ca-bundle.crt";
|
||||
NODE_EXTRA_CA_CERTS = "${cacert}/etc/ssl/certs/ca-bundle.crt";
|
||||
nativeBuildInputs = [
|
||||
prefetch-yarn-deps
|
||||
cacert
|
||||
];
|
||||
GIT_SSL_CAINFO = "${cacert}/etc/ssl/certs/ca-bundle.crt";
|
||||
NODE_EXTRA_CA_CERTS = "${cacert}/etc/ssl/certs/ca-bundle.crt";
|
||||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
|
||||
yarnLock=''${yarnLock:=$PWD/yarn.lock}
|
||||
mkdir -p $out
|
||||
(cd $out; prefetch-yarn-deps --verbose --builder $yarnLock)
|
||||
yarnLock=''${yarnLock:=$PWD/yarn.lock}
|
||||
mkdir -p $out
|
||||
(cd $out; prefetch-yarn-deps --verbose --builder $yarnLock)
|
||||
|
||||
runHook postBuild
|
||||
'';
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
outputHashMode = "recursive";
|
||||
} // hash_ // (removeAttrs args (["name" "hash" "sha256"] ++ (lib.optional (src == null) "src"))));
|
||||
|
||||
in lib.setFunctionArgs f (lib.functionArgs f) // {
|
||||
inherit tests;
|
||||
};
|
||||
outputHashMode = "recursive";
|
||||
}
|
||||
// hash_
|
||||
// (removeAttrs args (
|
||||
[
|
||||
"name"
|
||||
"hash"
|
||||
"sha256"
|
||||
]
|
||||
++ (lib.optional (src == null) "src")
|
||||
))
|
||||
);
|
||||
in
|
||||
lib.setFunctionArgs f (lib.functionArgs f) // { inherit tests; };
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user