Hello!
I would like to propose an environment variable that can be used to skip
tests, e.g. export GUIX_SKIP_TESTS=1
This could be implemented by changing line 297 of
guix/guix/build/gnu-build-system.scm:
(define* (check #:key target (make-flags '()) (tests? (not target))
(test-target "check") (parallel-tests? #t)
#:allow-other-keys)
(if (and tests? (not (getenv "GUIX_SKIP_TESTS"))) ;;;;;; HERE
(zero? (apply system* "make" test-target
`(,@(if parallel-tests?
`("-j" ,(number->string
(parallel-job-count)))
'())
,@make-flags)))
(begin
(format #t "test suite not run~%")
#t)))
The reason I suggest this is because installing GuixSD with --fallback
is sometimes necessary (I was getting a lot of 504's errors, so had to
use fallback) but in that case the subversion and git test suites take
many hours and perform excessive grinding on hard disk. Allowing users
the choice to skip tests in a situation like this means we can get
guixsd installed quickly.