* gnu/packages/base.scm (patch/fixed): New variable. (patch) [replacement]: Graft with the above.
Fixes: https://issues.guix.gnu.org/47144 Reported-by: Mark H Weaver <m...@netris.org> Change-Id: I54ae41b735f5ba0ebad30ebdfaabe0ccdc3f9873 --- gnu/packages/base.scm | 44 ++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 43 insertions(+), 1 deletion(-) diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index bbe5b8cf57..8dcbf4b087 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -19,7 +19,7 @@ ;;; Copyright © 2021 Leo Le Bouter <lle-b...@zaclys.net> ;;; Copyright © 2021 Maxime Devos <maximede...@telenet.be> ;;; Copyright © 2021 Guillaume Le Vaillant <g...@posteo.net> -;;; Copyright © 2021 Maxim Cournoyer <maxim.courno...@gmail.com> +;;; Copyright © 2021, 2024 Maxim Cournoyer <maxim.courno...@gmail.com> ;;; Copyright © 2022 zamfofex <zamfo...@twdb.moe> ;;; Copyright © 2022 John Kehayias <john.kehay...@protonmail.com> ;;; Copyright © 2023 Josselin Poiret <d...@jpoiret.xyz> @@ -46,8 +46,10 @@ (define-module (gnu packages base) #:use-module (gnu packages acl) #:use-module (gnu packages algebra) #:use-module (gnu packages attr) + #:use-module (gnu packages autotools) #:use-module (gnu packages bash) #:use-module (gnu packages bison) + #:use-module (gnu packages build-tools) #:use-module (gnu packages gcc) #:use-module (gnu packages guile) #:use-module (gnu packages multiprecision) @@ -263,6 +265,7 @@ (define-public tar (define-public patch (package + (replacement patch/fixed) (name "patch") (version "2.7.6") (source (origin @@ -291,6 +294,45 @@ (define-public patch (license gpl3+) (home-page "https://savannah.gnu.org/projects/patch/"))) +(define patch/fixed + ;; The latest release is from 2018, and lacks multiple security related + ;; patches. Since Fedora carries 23 patches, simply use the latest commit + ;; until a proper release is made. + (let ((revision "0") + (commit "f144b35425d9d7732ea5485034c1a6b7a106ab92")) + (package + (inherit patch) + (name "patch") + (version (git-version "2.7.6" revision commit)) + (source (origin + (inherit (package-source patch)) + (method git-fetch) + (uri (git-reference + (url "https://git.savannah.gnu.org/git/patch.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1bk38169c0xh01b0q0zmnrjqz8k9byz3arp4q7q66sn6xwf94nvz")))) + (arguments + (substitute-keyword-arguments (package-arguments patch) + ((#:phases phases '%standard-phases) + #~(modify-phases #$phases + (add-after 'unpack 'update-bootstrap-script + (lambda* (#:key native-inputs inputs #:allow-other-keys) + (copy-file (search-input-file + (or native-inputs inputs) + "src/gnulib/build-aux/bootstrap") + "bootstrap"))) + (add-after 'unpack 'patch-configure.ac + (lambda _ + (substitute* "configure.ac" + ;; The gnulib-provided git-version-gen script has a plain + ;; shebang of #!/bin/sh; avoid using it. + (("build-aux/git-version-gen" all) + (string-append "sh " all))))))))) + (native-inputs (list autoconf automake bison ed gnulib))))) + (define-public diffutils (package (name "diffutils") -- 2.41.0