diff --git a/recipes/sdl2_mixer/recipe.sh b/recipes/sdl2_mixer/recipe.sh
deleted file mode 100644
index 41f101c5aa4c181e7cb110d0c4bfef705a2aa655..0000000000000000000000000000000000000000
--- a/recipes/sdl2_mixer/recipe.sh
+++ /dev/null
@@ -1,52 +0,0 @@
-VERSION=2.0.4
-TAR=https://www.libsdl.org/projects/SDL_mixer/release/SDL2_mixer-$VERSION.tar.gz
-BUILD_DEPENDS=(sdl2 liborbital llvm mesa zlib libogg libvorbis)
-
-function recipe_version {
-    echo "$VERSION"
-    skip=1
-}
-
-function recipe_update {
-    echo "skipping update"
-    skip=1
-}
-
-function recipe_build {
-    sysroot="$(realpath ../sysroot)"
-    export CFLAGS="-I$sysroot/include"
-    export LDFLAGS="-L$sysroot/lib"
-    export SDL_LIBS="-lSDL2 -lorbital $("${TARGET}-pkg-config" --libs osmesa) -lvorbis -logg -lz -lm -lpthread -lstdc++"
-    ./autogen.sh
-    ./configure \
-        --prefix=/ \
-        --build=${BUILD} \
-        --host=${HOST} \
-        --disable-shared \
-        --disable-sdltest \
-        --enable-music-ogg \
-        --disable-music-cmd \
-        --disable-music-mp3 \
-        --disable-smpegtest \
-        --disable-music-midi \
-        --disable-music-mod
-    "$REDOX_MAKE" -j"$($NPROC)"
-    skip=1
-}
-
-function recipe_test {
-    echo "skipping test"
-    skip=1
-}
-
-function recipe_clean {
-    "$REDOX_MAKE" clean
-    skip=1
-}
-
-function recipe_stage {
-    dest="$(realpath $1)"
-    "$REDOX_MAKE" DESTDIR="$dest" install
-    rm -f "$dest/lib/"*.la
-    skip=1
-}
diff --git a/recipes/sdl2_mixer/recipe.toml b/recipes/sdl2_mixer/recipe.toml
new file mode 100644
index 0000000000000000000000000000000000000000..a78e19a3c0e240dec3e08794fcd59a6ab64b519c
--- /dev/null
+++ b/recipes/sdl2_mixer/recipe.toml
@@ -0,0 +1,31 @@
+[source]
+tar = "https://www.libsdl.org/projects/SDL_mixer/release/SDL2_mixer-2.0.4.tar.gz"
+
+[build]
+template = "custom"
+dependencies = [
+    "sdl2",
+    "liborbital",
+    "llvm",
+    "mesa",
+    "zlib",
+    "libogg",
+    "libvorbis",
+]
+script = """
+export SDL_LIBS="-lSDL2 -lorbital $("${TARGET}-pkg-config" --libs osmesa) -lvorbis -logg -lz -lm -lpthread -lstdc++"
+COOKBOOK_CONFIGURE_FLAGS=(
+    --prefix=/
+    --host="${TARGET}"
+    --disable-shared
+    --disable-sdltest
+    --enable-music-ogg
+    --disable-music-cmd
+    --disable-music-mp3
+    --disable-smpegtest
+    --disable-music-midi
+    --disable-music-mod
+)
+set -x
+cookbook_configure
+"""
diff --git a/recipes/spacecadetpinball/recipe.toml b/recipes/spacecadetpinball/recipe.toml
new file mode 100644
index 0000000000000000000000000000000000000000..1f098976bb59c671ac825dd992ca85e0e34bef53
--- /dev/null
+++ b/recipes/spacecadetpinball/recipe.toml
@@ -0,0 +1,36 @@
+[source]
+git = "https://gitlab.redox-os.org/xTibor/SpaceCadetPinball.git"
+upstream = "https://github.com/k4zmu2a/SpaceCadetPinball.git"
+branch = "redox"
+
+[build]
+template = "custom"
+dependencies = [
+    "libogg",
+    "liborbital",
+    "libvorbis",
+    "llvm",
+    "mesa",
+    "sdl2",
+    "sdl2_mixer",
+    "zlib",
+]
+script = """
+COOKBOOK_CONFIGURE="cmake"
+COOKBOOK_CONFIGURE_FLAGS=(
+    -DCMAKE_VERBOSE_MAKEFILE=On
+    -DCMAKE_CROSSCOMPILING=True
+    -DCMAKE_BUILD_TYPE=Release
+    -DCMAKE_INSTALL_PREFIX="/"
+    -DSDL2_INCLUDE_DIR="${COOKBOOK_SYSROOT}/include/SDL2"
+    -DSDL2_LIBRARY="-lSDL2_mixer -lvorbisfile -lvorbis -logg -lSDL2 -lorbital $("${TARGET}-pkg-config" --libs osmesa)"
+    -DSDL2_MIXER_INCLUDE_DIR="${COOKBOOK_SYSROOT}/include/SDL2"
+    -DSDL2_MIXER_LIBRARY="SDL2_mixer"
+    "${COOKBOOK_SOURCE}"
+)
+set -x
+cookbook_configure
+mv -vT "${COOKBOOK_STAGE}"/usr/bin "${COOKBOOK_STAGE}/bin"
+rmdir -v "${COOKBOOK_STAGE}"/usr
+set +x
+"""