diff --git a/scripts/Common/OS/setup.fish b/scripts/Common/OS/setup.fish
index f7a1719b..3f014288 100755
--- a/scripts/Common/OS/setup.fish
+++ b/scripts/Common/OS/setup.fish
@@ -60,8 +60,13 @@ function runSetup
 
         and echo "Cloning project..."
         and source "$dir/../../lib/copy-repo.fish" "$mountDir$PROJECT_CLONE_ROOT"
-        and mkdir -p "$mountDir/$nixPkgsDir"
-        and cp -r "$nixPkgsDir"/* "$mountDir/$nixPkgsDir"
+
+        and begin
+            set -l path "$mountDir/$nixPkgsDir"
+            and mkdir -p (dirname "$path")
+            and cp -r "$nixPkgsDir" "$path"
+        end
+
         and runHook initOS "Please set up a function `initOS` for initializing the mounted OS and installing valhalla dependencies"
         and runChroot "$mountDir" git config --system --add safe.directory "$PROJECT_CLONE_ROOT"
         and runHook --force bootstrapSetup "Please set up a function `bootstrapSetup` for installing `fish` into the "