diff --git a/.gitmodules b/.gitmodules
index 67348b8d70db0e8875d17cf82705149247679151..28e9b8cb9efd055194605e200ef5ee07a9e044a0 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -33,7 +33,7 @@
 	url = https://github.com/g-truc/glm
 [submodule "extern/typed-geometry"]
 	path = extern/typed-geometry
-	url = https://www.graphics.rwth-aachen.de:9000/ptrettner/typed-geometry.git
+	url = https://github.com/project-arcana/typed-geometry.git
 	branch = develop
 [submodule "extern/clean-core"]
 	path = extern/clean-core
diff --git a/CMakeLists.txt b/CMakeLists.txt
index f4d3470d08a4e01030d46d43472ee5dd1e93ecb2..fa53913227a95bfc4cbb526348e6368d271e5552 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -49,6 +49,9 @@ if (GCC)
     endif()
 endif()
 
+# Add clean-core lib
+add_subdirectory(extern/clean-core)
+
 # Add typed geometry math lib
 add_subdirectory(extern/typed-geometry)
 
@@ -119,6 +122,7 @@ if (GLOW_SAMPLES_TESTS)
     add_executable(glow-tests ${SOURCES})
 
     target_link_libraries(glow-tests PUBLIC
+        clean-core
         typed-geometry
         glm
         polymesh
diff --git a/extern/eigen b/extern/eigen
index 64fdd839aa0dc18483fdf23f4d7c5c3c414948b1..01f91925c0cf2aca052b592f75fa088d7ac45da7 160000
--- a/extern/eigen
+++ b/extern/eigen
@@ -1 +1 @@
-Subproject commit 64fdd839aa0dc18483fdf23f4d7c5c3c414948b1
+Subproject commit 01f91925c0cf2aca052b592f75fa088d7ac45da7
diff --git a/extern/glfw b/extern/glfw
index 1d95acdf565f65894f38b8742afde8dbbb80baef..dd8a678a66f1967372e5a5e3deac41ebf65ee127 160000
--- a/extern/glfw
+++ b/extern/glfw
@@ -1 +1 @@
-Subproject commit 1d95acdf565f65894f38b8742afde8dbbb80baef
+Subproject commit dd8a678a66f1967372e5a5e3deac41ebf65ee127
diff --git a/extern/glow b/extern/glow
index 8f61a37a14c2bf66b5cdd894fa82017752322f79..6454151bd41eb2c7e1dfc079b90f27fc62be77d6 160000
--- a/extern/glow
+++ b/extern/glow
@@ -1 +1 @@
-Subproject commit 8f61a37a14c2bf66b5cdd894fa82017752322f79
+Subproject commit 6454151bd41eb2c7e1dfc079b90f27fc62be77d6
diff --git a/extern/glow-extras b/extern/glow-extras
index 48afcb1fdbcaf874f7d58d86545525bca554696c..3ad42b0f2b1744bfab95500d86b1e93ae5ceb959 160000
--- a/extern/glow-extras
+++ b/extern/glow-extras
@@ -1 +1 @@
-Subproject commit 48afcb1fdbcaf874f7d58d86545525bca554696c
+Subproject commit 3ad42b0f2b1744bfab95500d86b1e93ae5ceb959
diff --git a/extern/imgui b/extern/imgui
index 8ca0ab36f8a5072b8dfaf569646233166f507c84..440ba209b1794c54699fd6c62be984c4f5fd6a5f 160000
--- a/extern/imgui
+++ b/extern/imgui
@@ -1 +1 @@
-Subproject commit 8ca0ab36f8a5072b8dfaf569646233166f507c84
+Subproject commit 440ba209b1794c54699fd6c62be984c4f5fd6a5f
diff --git a/extern/polymesh b/extern/polymesh
index 76e20b6b8aa4b80cca568922dc5907a49c2136b0..77b5ad3b1454a0184fd91215982d88a150b65d98 160000
--- a/extern/polymesh
+++ b/extern/polymesh
@@ -1 +1 @@
-Subproject commit 76e20b6b8aa4b80cca568922dc5907a49c2136b0
+Subproject commit 77b5ad3b1454a0184fd91215982d88a150b65d98
diff --git a/extern/typed-geometry b/extern/typed-geometry
index 36314b73b45aba62252fabfc142bd18b21d21acf..abaaa145c9d0902397d5226235a64f321fa0b364 160000
--- a/extern/typed-geometry
+++ b/extern/typed-geometry
@@ -1 +1 @@
-Subproject commit 36314b73b45aba62252fabfc142bd18b21d21acf
+Subproject commit abaaa145c9d0902397d5226235a64f321fa0b364