diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 147aa758340da1289adafb89b7dc3f1f0f133ff5..6d50bcc59527cf729a2b694f2c5d4fb27d2bb5f6 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,9 +1,23 @@
-Tests:
-  variables:
+stages:
+ - git-update
+ - tests
+
+variables:
     CURRENT: $CI_COMMIT_REF_NAME
     DEFAULT: "master"
-    OCAML: "4_05"
+    OCAML: "4_08"
     FRAMA_CI_OPT: "--override frama-clang:$CI_COMMIT_REF_NAME,$CI_COMMIT_SHA"
+
+#avoid a nix error https://github.com/NixOS/nix/issues/2087
+git-update:
+  stage: git-update
+  script:
+   - nix/frama-ci.sh instantiate --eval -A frama-clang.src.outPath
+  tags:
+   - nix
+
+Tests:
+  stage: tests
   script:
    - nix/frama-ci.sh build -A frama-clang.tests
   tags:
diff --git a/nix/default.nix b/nix/default.nix
index 24d4be50a0ed05a6ef8aa435d38180a3c9e8dc6a..9eb64bdc638594e521ead8402343828b22832c25 100644
--- a/nix/default.nix
+++ b/nix/default.nix
@@ -5,7 +5,7 @@
 plugins.helpers.simple_plugin
    { inherit pkgs stdenv src opam2nix ocaml_version plugins;
      name = "frama-clang";
-     deps = [ pkgs.llvmPackages_7.clang-unwrapped pkgs.llvm_7 pkgs.gnused ];
-     opamPackages = [ "camlp4" ];
-     configure_options = "-with-clang-includedir=${pkgs.llvmPackages_7.clang-unwrapped}";
+     deps = [ pkgs.llvmPackages_9.clang-unwrapped pkgs.llvm_9 pkgs.gnused ];
+     opamPackages = [ "camlp5" ];
+     configure_options = "-with-clang-includedir=${pkgs.llvmPackages_9.clang-unwrapped}";
    }