diff --git a/recipes/wip/novops/recipe.toml b/recipes/wip/novops/recipe.toml
index 259af7563654a01e97d762ed6d3e50cdfbe5e604..d79cfa2488e2aab6821bc23a45565080ce2624d9 100644
--- a/recipes/wip/novops/recipe.toml
+++ b/recipes/wip/novops/recipe.toml
@@ -1,5 +1,6 @@
 #TODO missing script for "make", see https://pierrebeucher.github.io/novops/install.html#from-source
 [source]
-tar = "https://github.com/PierreBeucher/novops/archive/refs/tags/v0.9.0.tar.gz"
+git = "https://github.com/PierreBeucher/novops"
+rev = "e0891144108a889f18448b39aebe9d5a5ac2689d"
 [build]
 template = "custom"
diff --git a/recipes/wip/nsh/recipe.toml b/recipes/wip/nsh/recipe.toml
index 81df864084f0e84576a2e4b2277a63e13e9780b1..b834d0709c1e682e24796530dd91185eb480d0e1 100644
--- a/recipes/wip/nsh/recipe.toml
+++ b/recipes/wip/nsh/recipe.toml
@@ -1,5 +1,6 @@
 #TODO Not compiled or tested
 [source]
-tar = "https://github.com/nuta/nsh/archive/refs/tags/v0.4.2.tar.gz"
+git = "https://github.com/nuta/nsh"
+rev = "93fa01cd5b5bba6f1c6aaabc218f3979d0ca2360"
 [build]
 template = "cargo"
diff --git a/recipes/wip/ntpd-rs/recipe.toml b/recipes/wip/ntpd-rs/recipe.toml
index b73fd1f9555c1aa8e4628c7d02ec46356eb32a06..94e7adde4b510ae21dddbea2d7b2c94fa2f5ad6d 100644
--- a/recipes/wip/ntpd-rs/recipe.toml
+++ b/recipes/wip/ntpd-rs/recipe.toml
@@ -1,5 +1,6 @@
 #TODO configure the service
 [source]
-tar = "https://github.com/pendulum-project/ntpd-rs/archive/refs/tags/v1.0.0.tar.gz"
+git = "https://github.com/pendulum-project/ntpd-rs"
+rev = "913700dc79420f6db5fe1f2110d3146d7f9addfe"
 [build]
 template = "cargo"
diff --git a/recipes/wip/numbat/recipe.toml b/recipes/wip/numbat/recipe.toml
index fad888cfeb21937d338660294d4372949f7df649..a6d400148dfcc3b937e06c692159203e713379ae 100644
--- a/recipes/wip/numbat/recipe.toml
+++ b/recipes/wip/numbat/recipe.toml
@@ -1,6 +1,7 @@
 #TODO Not compiled or tested
 [source]
-tar = "https://github.com/sharkdp/numbat/archive/refs/tags/v1.8.0.tar.gz"
+git = "https://github.com/sharkdp/numbat"
+rev = "c04afb354608ef22e475d8d6fec955ca6e823d97"
 [build]
 template = "custom"
 script = """
diff --git a/recipes/wip/obs-studio/recipe.toml b/recipes/wip/obs-studio/recipe.toml
index a5ebbae3b1ce6d2959196d340c1093a6a7110530..fa6c036276fa761cfadf373a39ec4d7a1262702e 100644
--- a/recipes/wip/obs-studio/recipe.toml
+++ b/recipes/wip/obs-studio/recipe.toml
@@ -1,7 +1,8 @@
 #TODO missing script for CMake, see https://github.com/obsproject/obs-studio/wiki/Building-OBS-Studio
 #TODO maybe missing dependencies
 [source]
-tar = "https://github.com/obsproject/obs-studio/archive/refs/tags/30.0.1.tar.gz"
+git = "https://github.com/obsproject/obs-studio"
+rev = "b45a73296f4f898e2ed455023020058075c30bab"
 [build]
 template = "custom"
 dependencies = [
diff --git a/recipes/wip/okteta/recipe.toml b/recipes/wip/okteta/recipe.toml
index ef41eab239d9ab7c7ed27924be4ce0e2fbed6c45..f8a23a8592db383a64946244bc83eec6601eb23a 100644
--- a/recipes/wip/okteta/recipe.toml
+++ b/recipes/wip/okteta/recipe.toml
@@ -1,5 +1,7 @@
 #TODO missing script for CMake, lacking build instructions
+#TODO missing dependencies
 [source]
-tar = "https://invent.kde.org/utilities/okteta/-/archive/v0.26.13/okteta-v0.26.13.tar.bz2"
+git = "https://invent.kde.org/utilities/okteta"
+rev = "fb6150f2dce791c96b95a12ee0c74942c1774c05"
 [build]
 template = "custom"
diff --git a/recipes/wip/onednn/recipe.toml b/recipes/wip/onednn/recipe.toml
index 49bcaef271764ac794f56420c154ba2ae13c5dd4..e543b6f7664c6933986badee10ed21decee47cc2 100644
--- a/recipes/wip/onednn/recipe.toml
+++ b/recipes/wip/onednn/recipe.toml
@@ -1,6 +1,7 @@
 #TODO missing script for CMake, see https://oneapi-src.github.io/oneDNN/dev_guide_build.html#linux-macos
 [source]
-tar = "https://github.com/oneapi-src/oneDNN/archive/refs/tags/v3.3.1.tar.gz"
+git = "https://github.com/oneapi-src/oneDNN"
+rev = "16720eaaab9557158ff77ebf3bc610e9682928d6"
 [build]
 template = "custom"
 dependencies = [
diff --git a/recipes/wip/onefetch/recipe.toml b/recipes/wip/onefetch/recipe.toml
index c5d2ef722f24afb5e1a0d9f05c965af94e55a723..20c6ef1cecb0c1758a59ee14dcddc7de4a9fb7c4 100644
--- a/recipes/wip/onefetch/recipe.toml
+++ b/recipes/wip/onefetch/recipe.toml
@@ -1,5 +1,6 @@
 #TODO compiled (after a cargo update) but hangs during execution
 [source]
-tar = "https://github.com/o2sh/onefetch/archive/refs/tags/2.18.1.tar.gz"
+git = "https://github.com/o2sh/onefetch"
+rev = "13376155f2f8197aa9d95830298ceee007413895"
 [build]
 template = "cargo"
diff --git a/recipes/wip/onetbb/recipe.toml b/recipes/wip/onetbb/recipe.toml
index ba2275aed98972350f5f9a785fe4692a5e4855ee..09b6be63b3783f2a13666bea4d6decc4c838b030 100644
--- a/recipes/wip/onetbb/recipe.toml
+++ b/recipes/wip/onetbb/recipe.toml
@@ -1,5 +1,6 @@
 #TODO missing script for CMake, see https://github.com/oneapi-src/oneTBB/blob/master/INSTALL.md
 [source]
-tar = "https://github.com/oneapi-src/oneTBB/archive/refs/tags/v2021.11.0.tar.gz"
+git = "https://github.com/oneapi-src/oneTBB"
+rev = "8b829acc65569019edb896c5150d427f288e8aba"
 [build]
 template = "custom"
diff --git a/recipes/wip/opencolorio/recipe.toml b/recipes/wip/opencolorio/recipe.toml
index b79bb0f0b37daebb3d6fa9f3e272a8269d88237b..cd8155c25f3140e4dc6028a85ba0257150b9b651 100644
--- a/recipes/wip/opencolorio/recipe.toml
+++ b/recipes/wip/opencolorio/recipe.toml
@@ -1,7 +1,8 @@
 #TODO missing dependencies, see https://opencolorio.readthedocs.io/en/latest/quick_start/installation.html#dependencies
 #TODO missing script for CMake, see https://opencolorio.readthedocs.io/en/latest/quick_start/installation.html
 [source]
-tar = "https://github.com/AcademySoftwareFoundation/OpenColorIO/archive/refs/tags/v2.3.1.tar.gz"
+git = "https://github.com/AcademySoftwareFoundation/OpenColorIO"
+rev = "92db29b9e7e298c4c2cc67c8a74944c2e7e716e5"
 [build]
 template = "custom"
 dependencies = [
diff --git a/recipes/wip/openexr/recipe.toml b/recipes/wip/openexr/recipe.toml
index 43ea9ae727703e29218d91cc59f26ff361aeabe0..edd4304c790c4320ff05ef7cd13e8c20c654680a 100644
--- a/recipes/wip/openexr/recipe.toml
+++ b/recipes/wip/openexr/recipe.toml
@@ -1,6 +1,7 @@
 #TODO missing script for CMake, see https://openexr.com/en/latest/install.html#linux-macos
 [source]
-tar = "https://github.com/AcademySoftwareFoundation/openexr/archive/refs/tags/v3.2.1.tar.gz"
+git = "https://github.com/AcademySoftwareFoundation/openexr"
+rev = "737b2707a001e67f3812d86a639c3d037efe2ea8"
 [build]
 template = "custom"
 dependencies = [
diff --git a/recipes/wip/openimageio/recipe.toml b/recipes/wip/openimageio/recipe.toml
index 22f7041d7c2aaf52fd35f06dc139e3eeaca5f033..b36b96f1f45d8109dd38d91b7df57bea1c89d48e 100644
--- a/recipes/wip/openimageio/recipe.toml
+++ b/recipes/wip/openimageio/recipe.toml
@@ -1,6 +1,7 @@
 #TODO missing script for building, see https://github.com/AcademySoftwareFoundation/OpenImageIO/blob/master/INSTALL.md#building-openimageio-on-linux-or-os-x
 [source]
-tar = "https://github.com/AcademySoftwareFoundation/OpenImageIO/archive/refs/tags/v2.5.5.0.tar.gz"
+git = "https://github.com/AcademySoftwareFoundation/OpenImageIO"
+rev = "5c29caab40a3913d415ac5d37cd84983e824c75b"
 [build]
 template = "custom"
 dependencies = [
diff --git a/recipes/wip/openjdk11-headless/recipe.toml b/recipes/wip/openjdk11-headless/recipe.toml
index 1c6649c416828b938373197c5701fd4b4b82e829..bcf47eed53c1ea81922e5565d7aaef8a522fc87e 100644
--- a/recipes/wip/openjdk11-headless/recipe.toml
+++ b/recipes/wip/openjdk11-headless/recipe.toml
@@ -1,7 +1,8 @@
 #TODO build instructions - https://github.com/openjdk/jdk11u/blob/master/doc/building.md
 #TODO not compiled or tested
 [source]
-tar = "https://github.com/openjdk/jdk11u/archive/jdk-11.0.21+9.tar.gz"
+git = "https://github.com/openjdk/jdk11u"
+rev = "09b402a6bcecce976ee17ce358b0a90ea127ab69"
 [build]
 template = "custom"
 dependencies = [
diff --git a/recipes/wip/openjdk17-headless/recipe.toml b/recipes/wip/openjdk17-headless/recipe.toml
index 32ab37710761057c20a37fd0a947c02e3b99b160..0b9cd06650d7675f6b4841574b369b77b658e3c6 100644
--- a/recipes/wip/openjdk17-headless/recipe.toml
+++ b/recipes/wip/openjdk17-headless/recipe.toml
@@ -1,7 +1,8 @@
 #TODO build instructions - https://github.com/openjdk/jdk17u/blob/master/doc/building.md
 #TODO not compiled or tested
 [source]
-tar = "https://github.com/openjdk/jdk17u/archive/jdk-17.0.9+8.tar.gz"
+git = "https://github.com/openjdk/jdk17u"
+rev = "b78a848cc7ae5787d9ec9ea0ce843cd63b06efec"
 [build]
 template = "custom"
 dependencies = [
diff --git a/recipes/wip/openjdk21-headless/recipe.toml b/recipes/wip/openjdk21-headless/recipe.toml
index 7038d3383c9dde2706e64d4baff53c1fbf31458b..b8ca03b222c5de23c36501b4a17e38ad8dee396c 100644
--- a/recipes/wip/openjdk21-headless/recipe.toml
+++ b/recipes/wip/openjdk21-headless/recipe.toml
@@ -1,7 +1,8 @@
 #TODO build instructions - https://github.com/openjdk/jdk21u/blob/master/doc/building.md
 #TODO not compiled or tested
 [source]
-tar = "https://github.com/openjdk/jdk21u/archive/jdk-21+35.tar.gz"
+git = "https://github.com/openjdk/jdk21u"
+rev = "060c4f7589e7f13febd402f4dac3320f4c032b08"
 [build]
 template = "custom"
 dependencies = [
diff --git a/recipes/wip/openjdk8-headless/recipe.toml b/recipes/wip/openjdk8-headless/recipe.toml
index 9b8d91803e719ad8befe1b47cad219e8984dcbc0..9a8fb93a1f613e40dc1d6aa0900d5a2c0db70ed2 100644
--- a/recipes/wip/openjdk8-headless/recipe.toml
+++ b/recipes/wip/openjdk8-headless/recipe.toml
@@ -2,7 +2,8 @@
 #TODO not compiled or tested
 #TODO build it in headless mode
 [source]
-tar = "https://github.com/openjdk/jdk8u/archive/refs/tags/jdk8u392-b08.tar.gz"
+git = "https://github.com/openjdk/jdk8u"
+rev = "9c9d6b267c41e4c713cacc41befb66007cdb2601"
 [build]
 template = "custom"
 dependencies = [
diff --git a/recipes/wip/openjpeg/recipe.toml b/recipes/wip/openjpeg/recipe.toml
index e1fe26242d708679029925c4ce79188000dc45bd..de04008a2c3dc701efb4da2e61961858b0d7a3de 100644
--- a/recipes/wip/openjpeg/recipe.toml
+++ b/recipes/wip/openjpeg/recipe.toml
@@ -1,5 +1,6 @@
 #TODO missing script for CMake, see https://github.com/uclouvain/openjpeg/blob/master/INSTALL.md
 [source]
-tar = "https://github.com/uclouvain/openjpeg/archive/refs/tags/v2.5.0.tar.gz"
+git = "https://github.com/uclouvain/openjpeg"
+rev = "a5891555eb49ed7cc26b2901ea680acda136d811"
 [build]
 template = "custom"
diff --git a/recipes/wip/opentoonz/recipe.toml b/recipes/wip/opentoonz/recipe.toml
index 5fa0ed3e1091cb23f55b9e92e3b670d73fc82515..029a3153dfa82705026319d8ee557f1ffa5b190e 100644
--- a/recipes/wip/opentoonz/recipe.toml
+++ b/recipes/wip/opentoonz/recipe.toml
@@ -1,7 +1,8 @@
 #TODO probably wrong script, see https://github.com/opentoonz/opentoonz/blob/master/doc/how_to_build_linux.md
 #TODO missing dependencies
 [source]
-tar = "https://github.com/opentoonz/opentoonz/archive/refs/tags/v1.7.1.tar.gz"
+git = "https://github.com/opentoonz/opentoonz"
+rev = "dd4cb36142ebf65a2aa74ff8575002863d3e17fc"
 [build]
 template = "custom"
 dependencies = [
diff --git a/recipes/wip/openvkl/recipe.toml b/recipes/wip/openvkl/recipe.toml
index 553089ced42f204b4c83f5273ff3ae5c7d809049..ddad67795176a5a6756d84b00f80b55de918ba9b 100644
--- a/recipes/wip/openvkl/recipe.toml
+++ b/recipes/wip/openvkl/recipe.toml
@@ -1,6 +1,7 @@
 #TODO missing script for CMake, see https://github.com/openvkl/openvkl#building-open-vkl-from-source
 [source]
-tar = "https://github.com/openvkl/openvkl/archive/refs/tags/v2.0.0.tar.gz"
+git = "https://github.com/openvkl/openvkl"
+rev = "712bdb8035487606096d7af90a4c9bde5503515d"
 [build]
 template = "custom"
 dependencies = [
diff --git a/recipes/wip/oranda/recipe.toml b/recipes/wip/oranda/recipe.toml
index 4962d59f68c33d4b044a7a4b43d7486b120746ff..5ccb101b268c5ba15d79ac89757cbd71b0e63a01 100644
--- a/recipes/wip/oranda/recipe.toml
+++ b/recipes/wip/oranda/recipe.toml
@@ -1,5 +1,6 @@
 #TODO camino crate error (after a patch on the ring crate)
 [source]
-tar = "https://github.com/axodotdev/oranda/archive/refs/tags/v0.3.1.tar.gz"
+git = "https://github.com/axodotdev/oranda"
+rev = "11790dd3fd16029b2095c5ea97efc9f6a41e68ef"
 [build]
 template = "cargo"
diff --git a/recipes/wip/ospray-studio/recipe.toml b/recipes/wip/ospray-studio/recipe.toml
index 301dafc69aa66b47a9f1fa947452e8b7d4a964d3..b3c8121580c257c37e839a196fd1b8eec35b4b55 100644
--- a/recipes/wip/ospray-studio/recipe.toml
+++ b/recipes/wip/ospray-studio/recipe.toml
@@ -1,6 +1,7 @@
 #TODO missing script for CMake, see https://github.com/ospray/ospray_studio#standard-cmake-build
 [source]
-tar = "https://github.com/ospray/ospray_studio/archive/refs/tags/v0.13.0.tar.gz"
+git = "https://github.com/ospray/ospray_studio"
+rev = "d2c83a67c841f1329f47cf9648a56b3dacbcdcaa"
 [build]
 template = "custom"
 dependencies = [
diff --git a/recipes/wip/ospray/recipe.toml b/recipes/wip/ospray/recipe.toml
index 96014313f11cb4e75565de463e940e67eb82c31a..0003178a73fdf99d0ab125e06981320250a3a247 100644
--- a/recipes/wip/ospray/recipe.toml
+++ b/recipes/wip/ospray/recipe.toml
@@ -1,6 +1,7 @@
 #TODO missing script for CMake, see https://github.com/ospray/OSPRay#building-and-finding-ospray
 [source]
-tar = "https://github.com/ospray/OSPRay/archive/v3.0.0.tar.gz"
+git = "https://github.com/ospray/OSPRay"
+rev = "66fa8108485a8a92ff31ad2e06081bbaf391bc26"
 [build]
 template = "custom"
 dependencies = [