gnu: xvfb-run: Update to 1.20.11-1.

* gnu/packages/xorg.scm (xvfb-run): Update to 1.20.11-1.
[phases]: Use gexps.
{build}: Use search-input-file.
This commit is contained in:
Maxim Cournoyer 2022-08-22 21:26:49 -04:00
parent 8ec901a885
commit 8784bbd510
No known key found for this signature in database
GPG key ID: 1260E46482E63562

View file

@ -24,7 +24,7 @@
;;; Copyright © 2020 Liliana Marie Prikler <liliana.prikler@gmail.com> ;;; Copyright © 2020 Liliana Marie Prikler <liliana.prikler@gmail.com>
;;; Copyright © 2020 Florian Pelz <pelzflorian@pelzflorian.de> ;;; Copyright © 2020 Florian Pelz <pelzflorian@pelzflorian.de>
;;; Copyright © 2020, 2021 Michael Rohleder <mike@rohleder.de> ;;; Copyright © 2020, 2021 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2020, 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2020, 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2020 Jean-Baptiste Note <jean-baptiste.note@m4x.org> ;;; Copyright © 2020 Jean-Baptiste Note <jean-baptiste.note@m4x.org>
;;; Copyright © 2021 Matthew James Kraai <kraai@ftbfs.org> ;;; Copyright © 2021 Matthew James Kraai <kraai@ftbfs.org>
;;; Copyright © 2021 Nicolò Balzarotti <nicolo@nixo.xyz> ;;; Copyright © 2021 Nicolò Balzarotti <nicolo@nixo.xyz>
@ -6715,66 +6715,68 @@ (define-public xdialog
(define-public xvfb-run (define-public xvfb-run
(package (package
(name "xvfb-run") (name "xvfb-run")
(version "1.20.10-3") (version "1.20.11-1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://debian/pool/main/x/xorg-server/" (uri (string-append "mirror://debian/pool/main/x/xorg-server/"
"xorg-server_" version ".diff.gz")) "xorg-server_" version ".diff.gz"))
(sha256 (sha256
(base32 "08gs9ni8ss8rw4n9cql1s8q05mj517vk1vm1varj1dsx75k4j25v")))) (base32 "0hq8a2rw2ginxsifrpj3rsf2shxl69ylkc1650ij5vwjhxdr82hh"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases (list
(modify-phases %standard-phases #:phases
(replace 'unpack #~(modify-phases %standard-phases
;; Apply the source patch to an empty directory. (replace 'unpack
(lambda* (#:key inputs #:allow-other-keys) ;; Apply the source patch to an empty directory.
(let* ((source (assoc-ref inputs "source")) (lambda* (#:key inputs #:allow-other-keys)
(diff.gz (basename source)) (let* ((diff.gz (basename #$source))
(diff (substring diff.gz 0 (string-rindex diff.gz #\.)))) (diff (substring diff.gz 0 (string-rindex diff.gz #\.))))
(mkdir "source") (mkdir "source")
(chdir "source") (chdir "source")
(copy-file source diff.gz) (copy-file #$source diff.gz)
(invoke "gunzip" diff.gz) (invoke "gunzip" diff.gz)
(invoke "patch" "-Np1" "-i" diff) (invoke "patch" "-Np1" "-i" diff)
(chdir "debian/local")))) (chdir "debian/local"))))
(delete 'configure) ; nothing to configure (delete 'configure) ; nothing to configure
(replace 'build (replace 'build
(lambda _ (lambda* (#:key inputs #:allow-other-keys)
(chmod "xvfb-run" #o755) (chmod "xvfb-run" #o755)
(substitute* "xvfb-run" (substitute* "xvfb-run"
(("(\\(| )(fmt|stty|awk|cat|kill|getopt|mktemp|touch|rm|mcookie)" (("(\\(| )(fmt|stty|awk|cat|kill|getopt|mktemp|touch|rm|mcookie)"
_ prefix command) _ prefix command)
(string-append prefix (which command))) (string-append prefix (which command)))
;; These also feature in UI messages, so be more strict. ;; These also feature in UI messages, so be more strict.
(("(AUTHFILE |command -v |exec )(Xvfb|xauth)" (("(AUTHFILE |command -v |exec )(Xvfb|xauth)"
_ prefix command) _ prefix command)
(string-append prefix (which command)))))) (string-append prefix
(replace 'check (search-input-file
;; There are no tests included. Here we test whether we can run inputs (string-append "bin/" command)))))))
;; a simple client and whether xvfb-run --help succeeds (replace 'check
;; without xvfb-run itself relying on $PATH. ;; There are no tests included. Here we test whether we can run
(lambda* (#:key tests? #:allow-other-keys) ;; a simple client and whether xvfb-run --help succeeds
(when tests? ;; without xvfb-run itself relying on $PATH.
(let ((old-PATH (getenv "PATH")) (lambda* (#:key tests? #:allow-other-keys)
(xterm (which "xterm"))) (when tests?
(unsetenv "PATH") (let ((old-PATH (getenv "PATH"))
(invoke "./xvfb-run" xterm "-e" "true") (xterm (which "xterm")))
(invoke "./xvfb-run" "--help") (unsetenv "PATH")
(setenv "PATH" old-PATH))))) (invoke "./xvfb-run" xterm "-e" "true")
(replace 'install (invoke "./xvfb-run" "--help")
(lambda* (#:key outputs #:allow-other-keys) (setenv "PATH" old-PATH)))))
(let* ((out (assoc-ref outputs "out")) (replace 'install
(bin (string-append out "/bin")) (lambda _
(man (string-append out "/share/man/man1"))) (let ((bin (string-append #$output "/bin"))
(install-file "xvfb-run" bin) (man (string-append #$output "/share/man/man1")))
(install-file "xvfb-run.1" man))))))) (install-file "xvfb-run" bin)
(install-file "xvfb-run.1" man)))))))
(inputs (inputs
(list util-linux ; for getopt (list util-linux ; for getopt
xauth xorg-server)) xauth
xorg-server))
(native-inputs (native-inputs
(list xterm)) ; for the test (list xterm)) ; for the test
;; This script is not part of the upstream xorg-server. It is provided only ;; This script is not part of the upstream xorg-server. It is provided only
;; as a patch added to Debian's package. ;; as a patch added to Debian's package.
(home-page "https://packages.debian.org/sid/xorg-server-source") (home-page "https://packages.debian.org/sid/xorg-server-source")
@ -6785,7 +6787,7 @@ (define-public xvfb-run
an existing user-specified one, writes a cookie to it, and then starts the an existing user-specified one, writes a cookie to it, and then starts the
@command{Xvfb} X server as a background process. It also takes care of killing @command{Xvfb} X server as a background process. It also takes care of killing
the server and cleaning up before returning the exit status of the command.") the server and cleaning up before returning the exit status of the command.")
(license (list license:x11 ; the script (license (list license:x11 ; the script
license:gpl2+)))) ; the man page license:gpl2+)))) ; the man page
(define-public setroot (define-public setroot