diff options
author | Ludovic Courtès <ludo@gnu.org> | 2020-05-11 12:52:43 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2020-05-11 13:03:23 +0200 |
commit | cef0e08c235d1eb9943571648ef57a59041bb292 (patch) | |
tree | b5b04cd92f3cfd69354f906de9d57cf012d82015 | |
parent | f69cf40741f6ba4e79a5e8f6dae407d96f4433ec (diff) | |
download | patches-cef0e08c235d1eb9943571648ef57a59041bb292.tar patches-cef0e08c235d1eb9943571648ef57a59041bb292.tar.gz |
gnu: proot: Fix test failures.base-for-series-3914
The upgrade to Make 4.3 and Coreutils 8.30 introduced test failures that
this commit addresses.
* gnu/packages/base.scm (coreutils-8.30): New variable.
* gnu/packages/linux.scm (proot)[native-inputs]: Add COREUTILS-8.30 and
GNU-MAKE-4.2.
-rw-r--r-- | gnu/packages/base.scm | 28 | ||||
-rw-r--r-- | gnu/packages/linux.scm | 11 |
2 files changed, 38 insertions, 1 deletions
diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index 5ea129a9ae..279fe9e3d8 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -384,6 +384,34 @@ standard.") (outputs '("out")) (inputs '()))) +(define-public coreutils-8.30 + ;; XXX: This version is kept just so we can run PRoot tests. + (hidden-package + (package + (inherit coreutils-minimal) + (version "8.30") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnu/coreutils/coreutils-" + version ".tar.xz")) + (sha256 + (base32 + "0mxhw43d4wpqmvg0l4znk1vm10fy92biyh90lzdnqjcic2lb6cg8")))) + (arguments + (substitute-keyword-arguments (package-arguments coreutils-minimal) + ((#:phases phases '%standard-phases) + `(modify-phases ,phases + (add-before 'check 'disable-broken-test + (lambda _ + ;; This test hits the 127 character shebang limit in the build + ;; environment due to the way "env -S" splits arguments into + ;; shebangs. Note that "env-S-script.sh" works around this + ;; specific issue, but "env-S.pl" is not adjusted for build + ;; environments with long prefixes (/tmp/guix-build-...). + (substitute* "Makefile" + (("^.*tests/misc/env-S.pl.*$") "")) + #t))))))))) + (define-public gnu-make (package (name "make") diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index c429b05cff..7cf7521e24 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -6099,7 +6099,16 @@ userspace queueing component and the logging subsystem.") (native-inputs `(("which" ,which) ;; For 'mcookie', used by some of the tests. - ("util-linux" ,util-linux))) + ("util-linux" ,util-linux) + + ;; XXX: Choose the old coreutils because its 'stat' + ;; program does not use statx(2) when running 'stat -c + ;; %a' or similar, which PRoot doesn't properly support. + ("coreutils-old" ,coreutils-8.30) + + ;; XXX: 'test-c6b77b77.sh' runs 'make' and that leads + ;; make 4.3 to segfault. + ("make-old" ,gnu-make-4.2))) (inputs `(("talloc" ,talloc))) (home-page "https://github.com/proot-me/PRoot") (synopsis "Unprivileged chroot, bind mount, and binfmt_misc") |