backport-16.03-fetchbower.nix
26 lines
| 841 B
| text/x-nix
|
NixLexer
/ pkgs / backport-16.03-fetchbower.nix
r725 | { stdenv, lib, bower2nix }: | |||
let | ||||
bowerVersion = version: | ||||
let | ||||
components = lib.splitString "#" version; | ||||
hash = lib.last components; | ||||
ver = if builtins.length components == 1 then version else hash; | ||||
in ver; | ||||
fetchbower = name: version: target: outputHash: stdenv.mkDerivation { | ||||
name = "${name}-${bowerVersion version}"; | ||||
buildCommand = '' | ||||
fetch-bower --quiet --out=$PWD/out "${name}" "${target}" "${version}" | ||||
# In some cases, the result of fetchBower is different depending | ||||
# on the output directory (e.g. if the bower package contains | ||||
# symlinks). So use a local output directory before copying to | ||||
# $out. | ||||
cp -R out $out | ||||
''; | ||||
outputHashMode = "recursive"; | ||||
outputHashAlgo = "sha256"; | ||||
inherit outputHash; | ||||
buildInputs = [ bower2nix ]; | ||||
}; | ||||
in fetchbower | ||||