Package: guix-patches;
Reported by: Herman Rimm <herman <at> rimm.ee>
Date: Mon, 2 Sep 2024 17:59:02 UTC
Severity: normal
Tags: patch
Done: Ludovic Courtès <ludo <at> gnu.org>
Bug is archived. No further changes may be made.
View this message in rfc822 format
From: Herman Rimm <herman <at> rimm.ee> To: 72982 <at> debbugs.gnu.org Subject: [bug#72982] [PATCH] gnu: genimage: Update to version 18. Date: Mon, 2 Sep 2024 19:56:49 +0200
* gnu/packages/genimage.scm (genimage): Update from 15 to 18. [source]: Fetch tarball instead of git commit. [arguments]: Disable some tests. --- gnu/packages/genimage.scm | 205 ++++++++++++++++++++------------------ 1 file changed, 106 insertions(+), 99 deletions(-) diff --git a/gnu/packages/genimage.scm b/gnu/packages/genimage.scm index 13f3dd67b0..7df61724ec 100644 --- a/gnu/packages/genimage.scm +++ b/gnu/packages/genimage.scm @@ -19,9 +19,9 @@ ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. (define-module (gnu packages genimage) + #:use-module (guix download) #:use-module (guix utils) #:use-module (guix packages) - #:use-module (guix git-download) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix build-system gnu) #:use-module (guix build utils) @@ -41,102 +41,109 @@ (define-module (gnu packages genimage) #:use-module (gnu packages virtualization)) (define-public genimage - (let ((commit "ec44ae086c705e6f0439e742c5a2e9b8f3d6ca82") - (revision "1")) - (package - (name "genimage") - (version (git-version "15" revision commit)) - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/pengutronix/genimage") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "0amj2vjff58yna6kq959i2gqmbjywqr8j5kr5pjqsvbqam3vgg0r")) - (patches - (search-patches "genimage-mke2fs-test.patch")))) - (build-system gnu-build-system) - (arguments - `(#:modules - ((ice-9 match) - ,@%default-gnu-modules) - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'guixify - (lambda* (#:key inputs #:allow-other-keys) - (map (match-lambda - ((input directory regexp) - (substitute* "config.c" - (((format #f "\\.def = \"(~a)\"" regexp) _ command) - (format #f ".def = \"~a/~a/~a\"" - (assoc-ref inputs input) directory command))))) - '(("cpio" "bin" "cpio") - ("coreutils" "bin" "dd") - ("e2fsprogs" "sbin" "debugfs|e2fsck|mke2fs|tune2fs") - ("genext2fs" "bin" "genext2fs") - ("cdrkit-libre" "bin" "genisoimage") - ("mtools" "bin" "mcopy|mmd") - ;; mkcramfs is obsolete. - ("dosfstools" "sbin" "mkdosfs") - ("mtd-utils" "sbin" "mkfs.(jffs2|ubifs)|ubinize") - ("squashfs-tools" "bin" "mksquashfs") - ("qemu" "bin" "qemu-img") - ("tar" "bin" "tar") - ("u-boot-tools" "bin" "mkimage"))) - (substitute* "util.c" - (("\"/bin/sh\"") - (string-append "\"" (assoc-ref inputs "bash") "/bin/sh\""))))) - (add-before 'check 'fix-failing-tests - (lambda _ - ;; We don't have /etc/passwd so uid 0 is not known as "root". - ;; Thus patch it out. - (substitute* '("test/ext2test.0.dump" - "test/ext2test.1.dump" - "test/ext3test.0.dump" - "test/ext3test.1.dump" - "test/ext4test.0.dump" - "test/ext4test.1.dump" - "test/ext2test-percent.0.dump" - "test/ext2test-percent.1.dump" - "test/mke2fs.0.dump") - (("root") "unknown")))) - (add-before 'check 'setenv-check - (lambda _ - ;; Our container doesn't provide access to /etc/mtab - (setenv "EXT2FS_NO_MTAB_OK" "1") - ;; Make test reproducible - (setenv "GENIMAGE_MKFJFFS2" "mkfs.jffs2 -U") - (setenv "GENIMAGE_MKE2FS" "mke2fs -E no_copy_xattrs"))) - (replace 'check - (lambda _ - (invoke "make" "TEST_LOG_COMPILER=" "check")))))) - (native-inputs - (list autoconf - automake - ;;; Note: cramfs is obsolete. - dtc ; for the tests - pkg-config - util-linux)) ; for the tests - (inputs - `(("bash" ,bash) - ("cdrkit-libre" ,cdrkit-libre) - ("cpio" ,cpio) - ;; Note: invoked by final executable. - ("coreutils" ,coreutils) ; chmod, dd - ("dosfstools" ,dosfstools) - ("e2fsprogs" ,e2fsprogs) - ("genext2fs" ,genext2fs) - ("libconfuse" ,libconfuse) - ("mtd-utils" ,mtd-utils) - ("mtools" ,mtools) - ("qemu" ,qemu-minimal) - ("squashfs-tools" ,squashfs-tools) - ("tar" ,tar) - ("u-boot-tools" ,u-boot-tools))) - (synopsis "Create Flash images according to specification") - (description "@command{genimage} creates Flash images according to a + (package + (name "genimage") + (version "18") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/pengutronix/genimage/" + "releases/download/v" version "/genimage-" + version ".tar.xz")) + (sha256 + (base32 + "1pgy2cp8mnlsz3i8q434h83p19p5k0p3qpkddkfn806qqj3gihzb")))) + (build-system gnu-build-system) + (arguments + `(#:modules + ((ice-9 match) + ,@%default-gnu-modules) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'guixify + (lambda* (#:key inputs #:allow-other-keys) + (map (match-lambda + ((input directory regexp) + (substitute* "config.c" + (((format #f "\\.def = \"(~a)\"" regexp) _ command) + (format #f ".def = \"~a/~a/~a\"" + (assoc-ref inputs input) directory command))))) + '(("cpio" "bin" "cpio") + ("coreutils" "bin" "dd") + ("e2fsprogs" "sbin" "debugfs|e2fsck|mke2fs|tune2fs") + ("genext2fs" "bin" "genext2fs") + ("cdrkit-libre" "bin" "genisoimage") + ("mtools" "bin" "mcopy|mmd") + ;; mkcramfs is obsolete. + ("dosfstools" "sbin" "mkdosfs") + ("mtd-utils" "sbin" "mkfs.(jffs2|ubifs)|ubinize") + ("f2fs-tools" "sbin" "(mkfs|sload).f2fs") + ("squashfs-tools" "bin" "mksquashfs") + ("qemu" "bin" "qemu-img") + ;; rauc and fiptool are unsupported. + ("tar" "bin" "tar") + ("u-boot-tools" "bin" "mkimage"))) + (substitute* "util.c" + (("\"/bin/sh\"") + (string-append "\"" (assoc-ref inputs "bash") "/bin/sh\""))))) + (add-before 'check 'disable-failing-tests + (lambda _ + ;; We don't have /etc/passwd so uid 0 is not known as "root". + ;; Thus patch it out. + (substitute* '("test/flash.test") + (("test_expect_success \"flash\"") + "test_expect_fail \"flash\"")) + (substitute* '("test/hdimage.test") + (("test_expect_success fdisk,sfdisk \"hdimage\"") + "test_expect_fail fdisk,sfdisk \"hdimage\"") + (("test_expect_success hexdump \"hdimage no-partition\"") + "test_expect_fail hexdump \"hdimage no-partition\"")))) + (add-before 'check 'fix-failing-tests + (lambda _ + ;; We don't have /etc/passwd so uid 0 is not known as "root". + ;; Thus patch it out. + (substitute* '("test/ext2test.2.dump" + "test/ext3test.2.dump" + "test/ext4test.2.dump" + "test/ext2test-percent.2.dump" + "test/mke2fs.2.dump") + (("root") "unknown")))) + (add-before 'check 'setenv-check + (lambda _ + ;; Our container doesn't provide access to /etc/mtab + (setenv "EXT2FS_NO_MTAB_OK" "1") + ;; Make test reproducible + (setenv "GENIMAGE_MKFJFFS2" "mkfs.jffs2 -U") + (setenv "GENIMAGE_MKE2FS" "mke2fs -E no_copy_xattrs"))) + (replace 'check + (lambda _ + (invoke "make" "TEST_LOG_COMPILER=" "check")))))) + (native-inputs + (list autoconf + automake + ;;; Note: cramfs is obsolete. + dtc ; for the tests + pkg-config + util-linux)) ; for the tests + (inputs + `(("bash" ,bash) + ("cdrkit-libre" ,cdrkit-libre) + ("cpio" ,cpio) + ;; Note: invoked by final executable. + ("coreutils" ,coreutils) ; chmod, dd + ("dosfstools" ,dosfstools) + ("e2fsprogs" ,e2fsprogs) + ("f2fs-tools" ,f2fs-tools) + ("genext2fs" ,genext2fs) + ("libconfuse" ,libconfuse) + ("mtd-utils" ,mtd-utils) + ("mtools" ,mtools) + ("qemu" ,qemu-minimal) + ("squashfs-tools" ,squashfs-tools) + ("tar" ,tar) + ("u-boot-tools" ,u-boot-tools))) + (synopsis "Create Flash images according to specification") + (description "@command{genimage} creates Flash images according to a specification file.") - (home-page "https://github.com/pengutronix/genimage") - (license license:gpl2)))) + (home-page "https://github.com/pengutronix/genimage") + (license license:gpl2))) -- 2.45.2
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.