diff --git a/corepkgs/fetchurl.nix b/corepkgs/fetchurl.nix
index 758212015aeeb053ec04f714a9ab196fab0fbf4e..72107294c72a5f87cccae9fdf7bcf932cedb3562 100644
--- a/corepkgs/fetchurl.nix
+++ b/corepkgs/fetchurl.nix
@@ -10,7 +10,8 @@ assert (outputHash != "" && outputHashAlgo != "")
 
 derivation {
   name = baseNameOf (toString url);
-  builder = ./fetchurl.sh;
+  builder = shell;
+  args = [ "-e" ./fetchurl.sh ];
 
   # Compatibility with Nix <= 0.7.
   id = md5;
diff --git a/corepkgs/fetchurl.sh b/corepkgs/fetchurl.sh
index 608a946ab8d82c224f4938144c601ffb3aa117f5..6d35794cafbee0a5d8f1af9d09c3aaec0e7151b8 100644
--- a/corepkgs/fetchurl.sh
+++ b/corepkgs/fetchurl.sh
@@ -1,5 +1,3 @@
-#! @shell@ -e
-
 echo "downloading $url into $out"
 
 $curl --fail --location --max-redirs 20 "$url" > "$out"