diff --git a/corepkgs/Makefile.am b/corepkgs/Makefile.am index 4b0b8860be..111b667d0b 100644 --- a/corepkgs/Makefile.am +++ b/corepkgs/Makefile.am @@ -1,6 +1,6 @@ all-local: config.nix -files = nar.nix buildenv.nix buildenv.pl unpack-channel.nix unpack-channel.sh derivation.nix fetchurl.nix \ +files = nar.nix buildenv.nix buildenv.pl unpack-channel.nix derivation.nix fetchurl.nix \ imported-drv-to-derivation.nix install-exec-local: diff --git a/corepkgs/unpack-channel.nix b/corepkgs/unpack-channel.nix index 245430ab0f..b26bece30e 100644 --- a/corepkgs/unpack-channel.nix +++ b/corepkgs/unpack-channel.nix @@ -1,14 +1,27 @@ with import ; +let + + builder = builtins.toFile "unpack-channel.sh" + '' + mkdir $out + cd $out + ${bzip2} -d < $src | ${tar} xf - + mv * $out/$channelName + ''; + +in + { name, channelName, src }: derivation { system = builtins.currentSystem; builder = shell; - args = [ "-e" ./unpack-channel.sh ]; - inherit name channelName src bzip2 tar tr; + args = [ "-e" builder ]; + inherit name channelName src; + PATH = "${nixBinDir}:${coreutils}"; - + # No point in doing this remotely. preferLocalBuild = true; diff --git a/corepkgs/unpack-channel.sh b/corepkgs/unpack-channel.sh deleted file mode 100644 index f42b0870ae..0000000000 --- a/corepkgs/unpack-channel.sh +++ /dev/null @@ -1,4 +0,0 @@ -mkdir $out -cd $out -$bzip2 -d < $src | $tar xf - -mv * $out/$channelName