diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 8f35937d85054b06dc1b75ede14ce9d5282a6d1e..073afc854e4ffa8f7082dcc23ba721925e05120e 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -78,8 +78,8 @@ variables:
          --bind ${CI_DATA}/spack-mirror:${MOUNT_POINT}/spack-mirror
          --bind ${CI_DATA}/squashfs-cache/:/squashfs-cache
          --bind ${CI_DATA}/overlayfs:/overlayfs
-         --fusemount "host:/usr/libexec/apptainer/bin/squashfuse_ll ${CI_DATA}/squashfs-cache/${stack}-${environment}-${SQUASHFS_ID}.sqfs /overlayfs/lower-${SQUASHFS_ID}-${CI_JOB_ID}"
-         --fusemount "host:${CI_PROJECT_DIR}/ci/fuse-overlayfs.sh ${CI_DATA} ${SQUASHFS_ID}-${CI_JOB_ID} ${MOUNT_POINT}/${stack}/${environment}/${STACK_VERSION}"
+         --fusemount "host:${CI_PROJECT_DIR}/ci/squashfuse_ll.sh ${CI_DATA} ${SQUASHFS_ID}-${CI_JOB_ID} ${CI_DATA}/squashfs-cache/${stack}-${environment}-${SQUASHFS_ID}.sqfs /overlayfs/lower-${SQUASHFS_ID}-${CI_JOB_ID}"
+         --fusemount "container:${CI_PROJECT_DIR}/ci/fuse-overlayfs.sh ${SQUASHFS_ID}-${CI_JOB_ID} ${MOUNT_POINT}/${stack}/${environment}/${STACK_VERSION}"
   after_script:
     - if [ $CI_JOB_STATUS != "success" ]; then exit 0; fi
     - ${CI_PROJECT_DIR}/ci/update_squashfs.sh
diff --git a/ci/apptainer_by_hand.sh b/ci/apptainer_by_hand.sh
index e716e27bbc520b388133e86318a75e3b1933a91c..7b7d41dc48ab3332a32114ff7a23030af22b1381 100755
--- a/ci/apptainer_by_hand.sh
+++ b/ci/apptainer_by_hand.sh
@@ -19,7 +19,7 @@ export STACK_VERSION=$(jq -Mrc .stack.version ${CI_PROJECT_DIR}/stacks/${stack}/
 
 APPTAINER_IMAGE=~/rhel9-kuma.sif
 
-./ci/prepare_squashfs.sh
+#./ci/prepare_squashfs.sh
 
 echo "host:/usr/libexec/apptainer/bin/squashfuse_ll ${CI_DATA}/squashfs-cache/${stack}-${environment}-${SQUASHFS_ID}.sqfs /overlayfs/lower-${SQUASHFS_ID}-${CI_JOB_ID}"
 echo "host:${CI_PROJECT_DIR}/ci/fuse-overlayfs.sh ${CI_DATA} ${SQUASHFS_ID}-${CI_JOB_ID} ${MOUNT_POINT}/${stack}/${environment}/${STACK_VERSION}"
@@ -39,7 +39,7 @@ srun ${srun_options} --pty apptainer run \
     --env CI_PROJECT_DIR=${CI_PROJECT_DIR} \
     --env CI_JOB_ID=${CI_JOB_ID} \
     --env SQUASHFS_ID=${SQUASHFS_ID} \
-    --fusemount "host:/usr/libexec/apptainer/bin/squashfuse_ll ${CI_DATA}/squashfs-cache/${stack}-${environment}-${SQUASHFS_ID}.sqfs /overlayfs/lower-${SQUASHFS_ID}-${CI_JOB_ID}" \
-    --fusemount "host:${CI_PROJECT_DIR}/ci/fuse-overlayfs.sh ${CI_DATA} ${SQUASHFS_ID}-${CI_JOB_ID} ${MOUNT_POINT}/${stack}/${environment}/${STACK_VERSION}" \
+    --fusemount "host:${CI_PROJECT_DIR}/ci/squashfuse_ll.sh ${CI_DATA} ${SQUASHFS_ID}-${CI_JOB_ID} ${CI_DATA}/squashfs-cache/${stack}-${environment}-${SQUASHFS_ID}.sqfs /overlayfs/lower-${SQUASHFS_ID}-${CI_JOB_ID}" \
+    --fusemount "container:${CI_PROJECT_DIR}/ci/fuse-overlayfs.sh ${SQUASHFS_ID}-${CI_JOB_ID} ${MOUNT_POINT}/${stack}/${environment}/${STACK_VERSION}" \
     ${APPTAINER_IMAGE} \
     bash
diff --git a/ci/fuse-overlayfs.sh b/ci/fuse-overlayfs.sh
index f9723f0241b537862e55e1d1809b045e69190bc5..6bc9af3115615de2f3d92381aab6cd23225d134e 100755
--- a/ci/fuse-overlayfs.sh
+++ b/ci/fuse-overlayfs.sh
@@ -1,22 +1,14 @@
 #!/usr/bin/env sh
 
-CI_DATA=$1
-suffix=$2
-mount_point=$3
+suffix=$1
+mount_point=$2
 
-for i in upper wd
-do
-    if [ -d ${CI_DATA}/overlayfs/$i-${suffix} ]
-    then
-        rm -rf ${CI_DATA}/overlayfs/$i-${suffix}
-    fi
-    mkdir -p ${CI_DATA}/overlayfs/$i-${suffix}
-done
 
-/usr/libexec/apptainer/bin/fuse-overlayfs \
+#/usr/libexec/apptainer/bin/fuse-overlayfs \
+fuse-overlayfs \
     -o squash_to_uid=$(id -u) \
     -o squash_to_gid=$(id -g) \
-    -o lowerdir=${CI_DATA}/overlayfs/lower-${suffix} \
-    -o upperdir=${CI_DATA}/overlayfs/upper-${suffix} \
-    -o workdir=${CI_DATA}/overlayfs/wd-${suffix} \
+    -o lowerdir=/overlayfs/lower-${suffix} \
+    -o upperdir=/overlayfs/upper-${suffix} \
+    -o workdir=/overlayfs/wd-${suffix} \
     $mount_point
diff --git a/ci/prepare_squashfs.sh b/ci/prepare_squashfs.sh
index 178c2a889e7f64a62a98fe0c91dad1232657dcd7..e25e4595398cac634695b9d2cdb2eed7452df1a4 100755
--- a/ci/prepare_squashfs.sh
+++ b/ci/prepare_squashfs.sh
@@ -13,7 +13,6 @@ do
     fi
 done
 
-
 # Check if MR as squashfs
 sqfs_image=$(ls -t1 ${CI_DATA}/squashfs-cache/${stack}-${environment}-${squash_id}*.sqfs 2> /dev/null | head -1)
 if [ $? -ne 0 ]
@@ -49,4 +48,3 @@ else
     fi
     echo "Found ${sqfs_image}"
 fi
-
diff --git a/ci/squashfuse_ll.sh b/ci/squashfuse_ll.sh
new file mode 100755
index 0000000000000000000000000000000000000000..60c7b204b09b31f3ec628f79974b2c7bc3b0fc4c
--- /dev/null
+++ b/ci/squashfuse_ll.sh
@@ -0,0 +1,18 @@
+#!/usr/bin/env sh
+
+CI_DATA=$1
+suffix=$2
+image=$3
+mount_point=$4
+
+for i in upper wd
+do
+    if [ -d ${CI_DATA}/overlayfs/$i-${suffix} ]
+    then
+        rm -rf ${CI_DATA}/overlayfs/$i-${suffix}
+    fi
+    mkdir -p ${CI_DATA}/overlayfs/$i-${suffix}
+done
+
+
+/usr/libexec/apptainer/bin/squashfuse_ll $image $mount_point