diff --git a/windows/base/Profile.ps1 b/windows/base/Profile.ps1
index 1bdef093dbe96210f36327702e8242f76d9024de..ed9d87135e223e5d502163cd7b59f0fcc1d117ff 100644
--- a/windows/base/Profile.ps1
+++ b/windows/base/Profile.ps1
@@ -36,7 +36,7 @@ function GitLab-Fetch-Artifacts {
 }
 
 #
-# Sets up a CMake package for find_package from a tarball
+# Sets up a CMake package for find_package from a tarball without copying
 #
 function CMake-Integrate-Package {
     $name = $args[0]
@@ -44,3 +44,14 @@ function CMake-Integrate-Package {
     7z x $name-*.tar; Remove-Item -Force $name-*.tar
     [Environment]::SetEnvironmentVariable("${name}_ROOT", "$(resolve-path $name-*)")
 }
+
+#
+# Sets up a CMake package for find_package from a tarball
+#
+function CMake-Install-Package {
+    $name = $args[0]
+    7z e $name-*.tar.xz; Remove-Item -Force $name-*.tar.xz
+    7z x $name-*.tar; Remove-Item -Force $name-*.tar
+    Copy-Item -Recurse $name-* "C:/Program Files/"
+    Remove-Item -Recurse -Force $name-*
+}