diff --git a/recipes/games/prboom/recipe.sh b/recipes/games/prboom/recipe.sh
deleted file mode 100644
index 1b24a2fac4a6826c92ee4523ead1901064e6cc72..0000000000000000000000000000000000000000
--- a/recipes/games/prboom/recipe.sh
+++ /dev/null
@@ -1,42 +0,0 @@
-#TODO: remove --without-mixer when it no longer crashes on x86_64
-VERSION=2.5.0
-TAR=https://downloads.sourceforge.net/project/prboom/prboom%20stable/$VERSION/prboom-$VERSION.tar.gz
-BUILD_DEPENDS=(sdl1 liborbital sdl1-mixer libogg libvorbis)
-
-function recipe_version {
-    echo "$VERSION"
-    skip=1
-}
-
-function recipe_build {
-    export CFLAGS="-static"
-    export MIXER_LIBS="-lSDL_mixer -lvorbisfile -lvorbis -logg"
-    sysroot="$(realpath ../sysroot)"
-    autoreconf -if
-    wget -O autotools/config.sub "https://gitlab.redox-os.org/redox-os/gnu-config/-/raw/master/config.sub?inline=false"
-    ./configure \
-        --prefix=/ \
-        --build=${BUILD} \
-        --host=${HOST} \
-        --disable-cpu-opt \
-        --disable-i386-asm \
-        --disable-gl \
-        --disable-sdltest \
-        --without-mixer \
-        --without-net \
-        --with-sdl-prefix="$sysroot" \
-        ac_cv_lib_SDL_mixer_Mix_OpenAudio=yes
-    "$REDOX_MAKE" -j"$($NPROC)"
-    skip=1
-}
-
-function recipe_clean {
-    "$REDOX_MAKE" clean
-    skip=1
-}
-
-function recipe_stage {
-    dest="$(realpath $1)"
-    "$REDOX_MAKE" DESTDIR="$dest/usr" install
-    skip=1
-}
diff --git a/recipes/games/prboom/recipe.toml b/recipes/games/prboom/recipe.toml
new file mode 100644
index 0000000000000000000000000000000000000000..7fb41452e14e066b72241c2b72216addecfa4ea2
--- /dev/null
+++ b/recipes/games/prboom/recipe.toml
@@ -0,0 +1,35 @@
+#TODO: remove --without-mixer when it no longer crashes on x86_64
+[source]
+tar = "https://downloads.sourceforge.net/project/prboom/prboom%20stable/2.5.0/prboom-2.5.0.tar.gz"
+blake3 = "24c1b9b5aa15fd73e59162055f2c6d8faa82759b76ddfca9828cd2a5c8dc6b2a"
+script = """
+DYNAMIC_INIT
+autotools_recursive_regenerate
+wget -O autotools/config.sub "https://gitlab.redox-os.org/redox-os/gnu-config/-/raw/master/config.sub?inline=false"
+"""
+
+[build]
+template = "custom"
+dependencies = [
+  "sdl1",
+  "liborbital", 
+  "sdl1-mixer",
+  "libogg",
+  "libvorbis"
+]
+script = """
+export CFLAGS="-static"
+export MIXER_LIBS="-lSDL_mixer -lvorbisfile -lvorbis -logg"
+COOKBOOK_CONFIGURE_FLAGS+=(
+  --disable-cpu-opt
+  --disable-i386-asm
+  --disable-gl
+  --disable-sdltest
+  --without-mixer
+  --without-net
+  --with-sdl-prefix="${COOKBOOK_SYSROOT}"
+  ac_cv_lib_SDL_mixer_Mix_OpenAudio=yes
+)
+cookbook_configure
+"""
+
diff --git a/recipes/other/terminfo/recipe.sh b/recipes/other/terminfo/recipe.sh
deleted file mode 100644
index 8fdee2fcfd19e4820f1105b0964a34e53a8d06d6..0000000000000000000000000000000000000000
--- a/recipes/other/terminfo/recipe.sh
+++ /dev/null
@@ -1,22 +0,0 @@
-GIT=https://github.com/sajattack/terminfo
-
-function recipe_version {
-    printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
-    skip=1
-}
-
-function recipe_build {
-    echo "skipping build"
-    skip=1
-}
-
-function recipe_clean {
-    echo "skipping clean"
-    skip=1
-}
-
-function recipe_stage {
-    mkdir -p ../stage/share
-    cp -r  * ../stage/share/
-    skip=1
-}
diff --git a/recipes/other/terminfo/recipe.toml b/recipes/other/terminfo/recipe.toml
new file mode 100644
index 0000000000000000000000000000000000000000..856ea87359fa01327511be30473f05e96d976e28
--- /dev/null
+++ b/recipes/other/terminfo/recipe.toml
@@ -0,0 +1,11 @@
+[source]
+git = "https://github.com/sajattack/terminfo"
+branch = "master"
+
+[build]
+template = "custom"
+script = """
+mkdir -p ${COOKBOOK_STAGE}/share
+cp -r ${COOKBOOK_SOURCE}/. ${COOKBOOK_STAGE}/share/
+"""
+