about summary refs log tree commit diff
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 5e6ccf23fd47..eba957dff4e7 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 7c244a6a8552..0b7d89bc4630 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