[PATCH] gnu: genimage: Update to version 18.

  • Done
  • quality assurance status badge
Details
2 participants
  • Herman Rimm
  • Ludovic Courtès
Owner
unassigned
Submitted by
Herman Rimm
Severity
normal
H
H
Herman Rimm wrote on 2 Sep 19:56 +0200
(address . guix-patches@gnu.org)
20240902175649.3422-1-herman@rimm.ee
* 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(-)

Toggle diff (225 lines)
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
H
H
Herman Rimm wrote on 10 Sep 20:04 +0200
[PATCH v2] gnu: genimage: Update to version 18.
(address . 72982@debbugs.gnu.org)
20240910180414.32509-1-herman@rimm.ee
* gnu/packages/genimage.scm (genimage): Update from 15 to 18.
[arguments]: Disable some tests.
---
gnu/packages/genimage.scm | 62 +++++++++++++++++++++++----------------
1 file changed, 36 insertions(+), 26 deletions(-)

Toggle diff (113 lines)
diff --git a/gnu/packages/genimage.scm b/gnu/packages/genimage.scm
index 13f3dd67b0..b90adffb67 100644
--- a/gnu/packages/genimage.scm
+++ b/gnu/packages/genimage.scm
@@ -41,27 +41,26 @@ (define-module (gnu packages genimage)
#:use-module (gnu packages virtualization))
(define-public genimage
- (let ((commit "ec44ae086c705e6f0439e742c5a2e9b8f3d6ca82")
- (revision "1"))
+ (let ((commit "00009af6e29cfd46909bc8b4180147dda9f82ba8")
+ (revision "0"))
(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"))))
+ (version (git-version "18" 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
+ "1mijyq79cb0yj4jm9ln9smpddq1f6r8cnsa568qca0krcv0p3zag"))))
(build-system gnu-build-system)
(arguments
`(#:modules
((ice-9 match)
- ,@%default-gnu-modules)
+ ,@%gnu-build-system-modules)
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'guixify
@@ -70,8 +69,8 @@ (define-public genimage
((input directory regexp)
(substitute* "config.c"
(((format #f "\\.def = \"(~a)\"" regexp) _ command)
- (format #f ".def = \"~a/~a/~a\""
- (assoc-ref inputs input) directory command)))))
+ (string-append ".def = \"" (assoc-ref inputs input)
+ "/" directory "/" command "\"")))))
'(("cpio" "bin" "cpio")
("coreutils" "bin" "dd")
("e2fsprogs" "sbin" "debugfs|e2fsck|mke2fs|tune2fs")
@@ -81,26 +80,36 @@ (define-public genimage
;; 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.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")
+ (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 _
@@ -127,6 +136,7 @@ (define-public genimage
("coreutils" ,coreutils) ; chmod, dd
("dosfstools" ,dosfstools)
("e2fsprogs" ,e2fsprogs)
+ ("f2fs-tools" ,f2fs-tools)
("genext2fs" ,genext2fs)
("libconfuse" ,libconfuse)
("mtd-utils" ,mtd-utils)
--
2.45.2
L
L
Ludovic Courtès wrote on 27 Sep 23:31 +0200
(name . Herman Rimm)(address . herman@rimm.ee)(address . 72982-done@debbugs.gnu.org)
87a5fslr6y.fsf@gnu.org
Hi,

Herman Rimm <herman@rimm.ee> skribis:

Toggle quote (3 lines)
> * gnu/packages/genimage.scm (genimage): Update from 15 to 18.
> [arguments]: Disable some tests.

Applied.

To make sure genimage was compatible with its use in the image
machinery, I tested an image built with:

./pre-inst-env guix system image -t hurd-qcow2 \
gnu/system/examples/bare-hurd.tmpl

All good, thanks!

Ludo’.
Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 72982@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 72982
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch