diff --git a/gnu/ci.scm b/gnu/ci.scm
index 943fbb6af6ff541da79c017926b8d944a8af15c3..2c04b7189d1cd371bac8e92124133daa32329f20 100644
--- a/gnu/ci.scm
+++ b/gnu/ci.scm
@@ -250,7 +250,11 @@ (define (->job test)
                                 "." system))))
       (cons name (test->thunk test))))
 
-  (if (member system %guixsd-supported-systems)
+  (if (and (member system %guixsd-supported-systems)
+
+           ;; XXX: Our build farm has too few ARMv7 machines and they are very
+           ;; slow, so skip system tests there.
+           (not (string=? system "armhf-linux")))
       ;; Override the value of 'current-guix' used by system tests.  Using a
       ;; channel instance makes tests that rely on 'current-guix' less
       ;; expensive.  It also makes sure we get a valid Guix package when this