diff --git a/recipes/bootloader/recipe.toml b/recipes/bootloader/recipe.toml
index 0e7079f9944f07a4dcad037a7fe5c31b1fe8a6a3..1f4e6eab02ad7a6801f1ccf3f48893243f356a5c 100644
--- a/recipes/bootloader/recipe.toml
+++ b/recipes/bootloader/recipe.toml
@@ -6,12 +6,14 @@ template = "custom"
 script = """
 rsync -av --delete "${COOKBOOK_SOURCE}/" ./
 
+mkdir -v "${COOKBOOK_STAGE}/boot"
+
 function bootloader {
     export TARGET="$1"
     src="$2"
     dst="$3"
     "${COOKBOOK_MAKE}" -j "${COOKBOOK_MAKE_JOBS}" "build/${TARGET}/${src}"
-    cp -v "build/${TARGET}/${src}" "${COOKBOOK_STAGE}/${dst}"
+    cp -v "build/${TARGET}/${src}" "${COOKBOOK_STAGE}/boot/${dst}"
 }
 
 ARCH="$(echo "${TARGET}" | cut -d - -f1)"
diff --git a/recipes/bootstrap/recipe.toml b/recipes/bootstrap/recipe.toml
index 9efa810c6203cd31609cb020dea85ec2b8f673e4..824e691be1db0b8b04083f1d6d239b51704edf37 100644
--- a/recipes/bootstrap/recipe.toml
+++ b/recipes/bootstrap/recipe.toml
@@ -26,8 +26,9 @@ cargo \
     --target-dir "${COOKBOOK_BUILD}" \
     -- \
     --emit link="${COOKBOOK_BUILD}/${TARGET}/release/libbootstrap.a"
+mkdir -v "${COOKBOOK_STAGE}/boot"
 "${TARGET}-ld" \
-    -o "${COOKBOOK_STAGE}/bootstrap" \
+    -o "${COOKBOOK_STAGE}/boot/bootstrap" \
     --gc-sections \
     -T "${COOKBOOK_SOURCE}/src/${ARCH}.ld" \
     "${COOKBOOK_BUILD}/asm.o" \
diff --git a/recipes/initfs/recipe.toml b/recipes/initfs/recipe.toml
index 689a0c967e35b6cc98ae39e81b142fce70091922..4f721c8ef822484a14981503b86a770909dcd61a 100644
--- a/recipes/initfs/recipe.toml
+++ b/recipes/initfs/recipe.toml
@@ -29,5 +29,6 @@ done
 
 env -u CARGO cargo run --manifest-path "${COOKBOOK_SOURCE}/tools/Cargo.toml" --bin redox-initfs-ar -- "${COOKBOOK_BUILD}/initfs" -o "${COOKBOOK_BUILD}/initfs.img"
 
-cp "${COOKBOOK_BUILD}/initfs.img" "${COOKBOOK_STAGE}/initfs"
+mkdir -v "${COOKBOOK_STAGE}/boot"
+cp "${COOKBOOK_BUILD}/initfs.img" "${COOKBOOK_STAGE}/boot/initfs"
 """
diff --git a/recipes/kernel/recipe.toml b/recipes/kernel/recipe.toml
index 330cd1154b1a091ab38518002f57641c71b8aed9..03d037bd334b9a805ffbe75bb7a5f0600bc55b81 100644
--- a/recipes/kernel/recipe.toml
+++ b/recipes/kernel/recipe.toml
@@ -31,5 +31,6 @@ cargo rustc \
 	--strip-debug \
 	kernel.all \
 	kernel
-cp -v kernel "${COOKBOOK_STAGE}"
+mkdir -v "${COOKBOOK_STAGE}/boot"
+cp -v kernel "${COOKBOOK_STAGE}/boot"
 """