diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index c440333..da5493a 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -4,7 +4,9 @@ archlinux:
   before_script:
     - pacman -Sy cmake git wxwidgets-gtk3 --noconfirm --needed
   script:
-    - git submodule init && git submodule update --recursive && mkdir build && cd build && cmake ../ && make
+    - git submodule init && git submodule update --recursive
+    - git submodule foreach --recursive git submodule update --init
+    - mkdir build && cd build && cmake ../ && make
   artifacts:
     when: on_failure
     paths:
@@ -16,7 +18,9 @@ debian:
   before_script:
     - apt update && apt -y install cmake git build-essential libwxgtk3.0-gtk3-dev
   script:
-    - git submodule init && git submodule update --recursive && mkdir build && cd build && cmake ../ && make
+    - git submodule init && git submodule update --recursive
+    - git submodule foreach --recursive git submodule update --init
+    - mkdir build && cd build && cmake ../ && make
   artifacts:
     when: on_failure
     paths: