diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index f576de97f3ab0f2c0eda7340f7071d7f61fc99d1..006bb6af596aff4ec5806ec456a63f02dd5ec04e 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -31,7 +31,7 @@ variables:
   NIGHTLY: 0
 
   ## Force a rebuild without using cache
-  FORCE_NOCACHE: 0
+  FORCE_NOCACHE: 1
 
 stages:
   - config
diff --git a/spack.yaml b/spack.yaml
index fcb7ed8f2a99541f616a134d190f73111c0ebe8f..0999a0fd5f9a10029ac7e978ec554600aa40e11b 100644
--- a/spack.yaml
+++ b/spack.yaml
@@ -13,7 +13,7 @@ spack:
     - py-pip@20.2
     - pkg-config@0.29.2
     - xrootd@5.1.0 cxxstd=17 +python
-    - root@6.22.08 cxxstd=17 
+    - root@6.24.06 cxxstd=17 
           +fftw +fortran +gdml +http +mlp +pythia8 
           +root7 +tmva +vc +xrootd +ssl 
           ^mesa swr=none +opengl -llvm -osmesa
diff --git a/spack/packages/root/package.py b/spack/packages/root/package.py
index 7cd544509e61588df8693d70e21173b786a8f231..c9dd0f813f18c2593e7204fc7b3c673fb68bb347 100644
--- a/spack/packages/root/package.py
+++ b/spack/packages/root/package.py
@@ -28,6 +28,9 @@ class Root(CMakePackage):
     # Development version (when more recent than production).
 
     # Production version
+    version('6.24.06', sha256='907f69f4baca1e4f30eeb4979598ca7599b6aa803ca046e80e25b6bbaa0ef522')
+    version('6.24.02', sha256='0507e1095e279ccc7240f651d25966024325179fa85a1259b694b56723ad7c1c')
+    version('6.24.00', sha256='9da30548a289211c3122d47dacb07e85d35e61067fac2be6c5a5ff7bda979989')
     version('6.22.08', sha256='6f061ff6ef8f5ec218a12c4c9ea92665eea116b16e1cd4df4f96f00c078a2f6f')
     version('6.22.06', sha256='c4688784a7e946cd10b311040b6cf0b2f75125a7520e04d1af0b746505911b57')
     version('6.22.02', sha256='89784afa9c9047e9da25afa72a724f32fa8aa646df267b7731e4527cc8a0c340')
@@ -196,6 +199,7 @@ class Root(CMakePackage):
     depends_on('libpng')
     depends_on('lz4', when='@6.13.02:')  # See cmake_args, below.
     depends_on('ncurses')
+    depends_on('nlohmann-json', when='@6.24:')
     depends_on('pcre')
     depends_on('xxhash', when='@6.13.02:')  # See cmake_args, below.
     depends_on('xz')
@@ -326,7 +330,7 @@ class Root(CMakePackage):
         # Options related to ROOT's ability to download and build its own
         # dependencies. Per Spack convention, this should generally be avoided.
         options += [
-            define('builtin_afterimage', True),
+            define_from_variant('builtin_afterimage', 'x'),
             define('builtin_cfitsio', False),
             define('builtin_davix', False),
             define('builtin_fftw3', False),
@@ -338,6 +342,7 @@ class Root(CMakePackage):
             define('builtin_llvm', True),
             define('builtin_lz4', self.spec.satisfies('@6.12.02:6.12.99')),
             define('builtin_lzma', False),
+            define('builtin_nlohmannjson', False),
             define('builtin_openssl', False),
             define('builtin_pcre', False),
             define('builtin_tbb', False),