aboutsummaryrefslogtreecommitdiff
path: root/corepkgs
diff options
context:
space:
mode:
Diffstat (limited to 'corepkgs')
-rw-r--r--corepkgs/unpack-channel.nix6
-rw-r--r--corepkgs/unpack-channel.sh32
2 files changed, 6 insertions, 32 deletions
diff --git a/corepkgs/unpack-channel.nix b/corepkgs/unpack-channel.nix
index 5e6ccf23f..eba957dff 100644
--- a/corepkgs/unpack-channel.nix
+++ b/corepkgs/unpack-channel.nix
@@ -1,11 +1,11 @@
with import <nix/config.nix>;
-{ system, inputs }:
+{ name, src }:
derivation {
- name = "channels";
+ system = builtins.currentSystem;
builder = shell;
args = [ "-e" ./unpack-channel.sh ];
- inherit system inputs bzip2 tar tr;
+ inherit name src bzip2 tar tr;
PATH = "${nixBinDir}:${coreutils}";
}
diff --git a/corepkgs/unpack-channel.sh b/corepkgs/unpack-channel.sh
index 7c244a6a8..0b7d89bc4 100644
--- a/corepkgs/unpack-channel.sh
+++ b/corepkgs/unpack-channel.sh
@@ -1,30 +1,4 @@
mkdir $out
-mkdir $out/tmp
-cd $out/tmp
-
-inputs=($inputs)
-for ((n = 0; n < ${#inputs[*]}; n += 2)); do
- channelName=${inputs[n]}
- channelTarball=${inputs[n+1]}
-
- echo "unpacking channel $channelName"
-
- $bzip2 -d < $channelTarball | $tar xf -
-
- if test -e */channel-name; then
- channelName="$(cat */channel-name)"
- fi
-
- nr=1
- attrName=$(echo $channelName | $tr -- '- ' '__')
- dirName=$attrName
- while test -e ../$dirName; do
- nr=$((nr+1))
- dirName=$attrName-$nr
- done
-
- mv * ../$dirName # !!! hacky
-done
-
-cd ..
-rmdir tmp
+cd $out
+$bzip2 -d < $src | $tar xf -
+mv * $out/$name