diff --git a/recipes/relibc-tests/recipe.sh b/recipes/relibc-tests/recipe.sh
deleted file mode 100644
index dc39853b3d7c0b4a44d5fa952bc67d713392d134..0000000000000000000000000000000000000000
--- a/recipes/relibc-tests/recipe.sh
+++ /dev/null
@@ -1,13 +0,0 @@
-GIT=https://gitlab.redox-os.org/redox-os/relibc.git
-
-function recipe_build {
-    "$REDOX_MAKE" NATIVE_RELIBC=1 -C tests -j"$($NPROC)"
-    skip=1
-}
-
-function recipe_stage {
-    dest="$(realpath $1)"
-    mkdir -pv "$dest/share/relibc"
-    cp -rv "tests" "$dest/share/relibc/tests"
-    skip=1
-}
diff --git a/recipes/relibc-tests/recipe.toml b/recipes/relibc-tests/recipe.toml
new file mode 100644
index 0000000000000000000000000000000000000000..023ac741e7a21f0f97c59779dcab72a5927d998c
--- /dev/null
+++ b/recipes/relibc-tests/recipe.toml
@@ -0,0 +1,16 @@
+[source]
+git = "https://gitlab.redox-os.org/redox-os/relibc.git"
+branch = "master"
+
+[build]
+template = "custom"
+script = """
+rsync -av --delete "${COOKBOOK_SOURCE}/" ./
+pushd tests
+export CARGO_TEST="${COOKBOOK_CARGO}"
+export NATIVE_RELIBC=1
+"${COOKBOOK_MAKE}" -j "${COOKBOOK_MAKE_JOBS}" all bins_verify/relibc-tests
+popd
+mkdir -pv "${COOKBOOK_STAGE}/share/relibc"
+cp -rv "tests" "${COOKBOOK_STAGE}/share/relibc/tests"
+"""