diff --git a/cook.sh b/cook.sh
index 2432e9aff981e55cebaf54d3ef5a271e583c11d6..7495999aa3a8f48f1b0d4b16d11e6867dc9941bf 100755
--- a/cook.sh
+++ b/cook.sh
@@ -195,20 +195,12 @@ function op {
             rm -rfv stage
             ;;
         tar)
-            # Compile pkgutils if needed
-            if [ ! -f "$ROOT/pkgutils/target/release/pkg" ]
-            then
-                pushd "$ROOT/pkgutils/" > /dev/null
-                TARGET=x86_64-unknown-redox cargo build --release
-                popd > /dev/null
-            fi
-
             echo "name = \"$1\"" > "stage.toml"
             echo "version = \"$(op $1 version)\"" >> "stage.toml"
             echo "target = \"$TARGET\"" >> "stage.toml"
             mkdir -p stage/pkg
             cp -v stage.toml "stage/pkg/$1.toml"
-            "$ROOT/pkgutils/target/release/pkg" create stage
+            TARGET=x86_64-unknown-redox cargo run --release --manifest-path "$ROOT/pkgutils/Cargo.toml" --bin pkg -- create stage
             ;;
         untar)
             rm -rfv stage.tar stage.sig stage.toml