diff --git a/.gitignore b/.gitignore
index 94e928d681b452d3d24e1cd325da9ff0d4482468..20998dbb42ef1ffde2e5221a82e6de65d809ba66 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,4 +3,6 @@ repo
 source
 source.tar
 stage
+stage.sig
 stage.tar
+stage.toml
diff --git a/cook.sh b/cook.sh
index b5df2c45b64592e8224878b2b42b207e783191fa..bc1d74eb4feffcb32dfc33378c1759d55b6d71dd 100755
--- a/cook.sh
+++ b/cook.sh
@@ -195,21 +195,24 @@ function op {
             rm -rfv stage
             ;;
         tar)
-            mkdir -p stage/etc/pkg.d
-            echo "name = \"$1\"" > "stage/etc/pkg.d/$1.toml"
-            echo "version = \"$(op $1 version)\"" >> "stage/etc/pkg.d/$1.toml"
-            echo "target = \"$TARGET\"" >> "stage/etc/pkg.d/$1.toml"
+            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
             ;;
         untar)
-            rm -rfv stage.tar stage.sig
+            rm -rfv stage.tar stage.sig stage.toml
             ;;
         publish)
             mkdir -p "$REPO"
             cp -v stage.tar "$REPO/$1.tar"
+            cp -v stage.sig "$REPO/$1.sig"
+            cp -v stage.toml "$REPO/$1.toml"
             ;;
         unpublish)
-            rm -rfv "$REPO/$1.tar"
+            rm -rfv "$REPO/$1.tar" "$REPO/$1.sig" "$REPO/$1.toml"
             ;;
         *)
             usage $1