From debbugs-submit-bounces@debbugs.gnu.org Mon Feb 11 22:23:03 2019 Received: (at submit) by debbugs.gnu.org; 12 Feb 2019 03:23:03 +0000 Received: from localhost ([127.0.0.1]:44302 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gtOf1-0000ZF-5u for submit@debbugs.gnu.org; Mon, 11 Feb 2019 22:23:03 -0500 Received: from eggs.gnu.org ([209.51.188.92]:44609) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gtOez-0000YZ-6x for submit@debbugs.gnu.org; Mon, 11 Feb 2019 22:23:01 -0500 Received: from lists.gnu.org ([209.51.188.17]:38763) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1gtOee-0006uS-EJ for submit@debbugs.gnu.org; Mon, 11 Feb 2019 22:22:45 -0500 Received: from eggs.gnu.org ([209.51.188.92]:58887) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gtOec-0006Yx-Q2 for guix-patches@gnu.org; Mon, 11 Feb 2019 22:22:40 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.1 required=5.0 tests=BAYES_50,RCVD_IN_DNSWL_LOW, URIBL_BLOCKED autolearn=disabled version=3.3.2 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gtOeZ-0006nC-Bv for guix-patches@gnu.org; Mon, 11 Feb 2019 22:22:37 -0500 Received: from dd26836.kasserver.com ([85.13.145.193]:43816) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1gtOeX-0006be-Fp for guix-patches@gnu.org; Mon, 11 Feb 2019 22:22:34 -0500 Received: from dayas.3.home (178.112.162.195.wireless.dyn.drei.com [178.112.162.195]) by dd26836.kasserver.com (Postfix) with ESMTPSA id B0451336038A; Tue, 12 Feb 2019 04:22:16 +0100 (CET) From: Danny Milosavljevic To: guix-patches@gnu.org Subject: [PATCH] gnu: Add genimage. Date: Tue, 12 Feb 2019 04:09:28 +0100 Message-Id: <20190212030928.7802-1-dannym@scratchpost.org> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Tags: patch Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 85.13.145.193 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: submit Cc: Danny Milosavljevic X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/packages/genimage.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. --- gnu/local.mk | 1 + gnu/packages/genimage.scm | 197 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 198 insertions(+) create mode 100644 gnu/packages/genimage.scm diff --git a/gnu/local.mk b/gnu/local.mk index 3bb60d3ad..9020b157f 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -191,6 +191,7 @@ GNU_SYSTEM_MODULES =3D \ %D%/packages/gcc.scm \ %D%/packages/gd.scm \ %D%/packages/gdb.scm \ + %D%/packages/genimage.scm \ %D%/packages/geo.scm \ %D%/packages/gettext.scm \ %D%/packages/ghostscript.scm \ diff --git a/gnu/packages/genimage.scm b/gnu/packages/genimage.scm new file mode 100644 index 000000000..6ffffc990 --- /dev/null +++ b/gnu/packages/genimage.scm @@ -0,0 +1,197 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright =C2=A9 2018 Danny Milosavljevic +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (a= t +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages embedded) + #: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) + #:use-module (gnu packages) + #:use-module (gnu packages base) + #:use-module (gnu packages bash) + #:use-module (gnu packages bootloaders) + #:use-module (gnu packages cdrom) + #:use-module (gnu packages compression) + #:use-module (gnu packages cpio) + #:use-module (gnu packages disk) + #:use-module (gnu packages linux) + #:use-module (gnu packages mtools) + #:use-module (gnu packages virtualization) + #:use-module (gnu packages wm)) + +(define-public genimage + (package + (name "genimage") + (version "10") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/pengutronix/genimage.git") + (commit (string-append "v" version)))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0had00p2why2l1fl14mq7nbhmmfbd3na4qnnpg36akdy05g67jbn"))= )) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'guixify + (lambda* (#:key inputs #:allow-other-keys) + ;; TODO: Make this unnecessary. + ;; This is working around some weird problem that only appe= ars + ;; in our build container: "cp -a" doesn't preserve the mod= e + ;; but rather removes "group" and "other" mode bits even + ;; though they are set in the original. + (substitute* "genimage.c" + (("cp -a") "cp -r --preserve=3Downership,timestamps,links"= )) + ;; Note to maintainers: Check ".def =3D" lines in source. + (substitute* "config.c" + (("\\.def =3D \"cpio\"") + (string-append ".def =3D \"" + (assoc-ref inputs "cpio") + "/bin/cpio\"")) + (("\\.def =3D \"dd\"") + (string-append ".def =3D \"" + (assoc-ref inputs "coreutils") + "/bin/dd\"")) + (("\\.def =3D \"debugfs\"") + (string-append ".def =3D \"" + (assoc-ref inputs "e2fsprogs") + "/sbin/debugfs\"")) + (("\\.def =3D \"e2fsck\"") + (string-append ".def =3D \"" + (assoc-ref inputs "e2fsprogs") + "/sbin/e2fsck\"")) + (("\\.def =3D \"genext2fs\"") + (string-append ".def =3D \"" + (assoc-ref inputs "genext2fs") + "/bin/genext2fs\"")) + (("\\.def =3D \"genisoimage\"") + (string-append ".def =3D \"" + (assoc-ref inputs "cdrkit-libre") + "/bin/genisoimage\"")) + (("\\.def =3D \"mcopy\"") + (string-append ".def =3D \"" + (assoc-ref inputs "mtools") + "/bin/mcopy\"")) + (("\\.def =3D \"mmd\"") + (string-append ".def =3D \"" + (assoc-ref inputs "mtools") + "/bin/mmd\"")) + ;;; Note: mkcramfs is obsolete. + (("\\.def =3D \"mkdosfs\"") + (string-append ".def =3D \"" + (assoc-ref inputs "dosfstools") + "/sbin/mkfs.fat\"")) + (("\\.def =3D \"mke2fs\"") + (string-append ".def =3D \"" + (assoc-ref inputs "e2fsprogs") + "/sbin/mke2fs\"")) + (("\\.def =3D \"mkfs\\.jffs2\"") + (string-append ".def =3D \"" + (assoc-ref inputs "mtd-utils") + "/sbin/mkfs.jffs2\"")) + (("\\.def =3D \"mkfs\\.ubifs\"") + (string-append ".def =3D \"" + (assoc-ref inputs "mtd-utils") + "/sbin/mkfs.ubifs\"")) + (("\\.def =3D \"mksquashfs\"") + (string-append ".def =3D \"" + (assoc-ref inputs "squashfs-tools") + "/bin/mksquashfs\"")) + (("\\.def =3D \"qemu-img\"") + (string-append ".def =3D \"" + (assoc-ref inputs "qemu") + "/bin/qemu-img\"")) + (("\\.def =3D \"tar\"") + (string-append ".def =3D \"" + (assoc-ref inputs "tar") + "/bin/tar\"")) + (("\\.def =3D \"tune2fs\"") + (string-append ".def =3D \"" + (assoc-ref inputs "e2fsprogs") + "/sbin/tune2fs\"")) + (("\\.def =3D \"ubinize\"") + (string-append ".def =3D \"" + (assoc-ref inputs "mtd-utils") + "/sbin/ubinize\"")) + (("\\.def =3D \"mkimage\"") + (string-append ".def =3D \"" + (assoc-ref inputs "u-boot-tools") + "/bin/mkimage\""))) + (substitute* "test/basic-images.test" + ;; Work around bug in sharness.sh. + (("mkdosfs") + "mkfs.fat") + ;; Work around bug in sharness.sh. + (("dd,mkfs\\.fat,mcopy") + "dd,mkfs_fat,mcopy") + ;; Should be in the next upstream release. + (("qemu_img") "qemu-img")) + (substitute* "util.c" + (("\"/bin/sh\"") + (string-append "\"" (assoc-ref inputs "bash") "/bin/sh\""= ))) + ;; We don't have /etc/passwd so uid 0 is not known as "root= ". + ;; Thus patch it out. + (substitute* '("test/ext2test.dump" + "test/ext3test.dump" + "test/ext4test.dump" + "test/mke2fs.dump") + (("root") "unknown")) + #t)) + (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") + #t))))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ;;; Note: cramfs is obsolete. + ("dtc" ,dtc) ; for the tests + ("fakeroot" ,fakeroot) ; for the tests + ("fdisk" ,fdisk) ; for the tests + ("pkg-config" ,pkg-config) + ("util-linux" ,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 +specification file.") + (home-page "https://github.com/pengutronix/genimage") + (license license:gpl2))) From debbugs-submit-bounces@debbugs.gnu.org Fri Feb 15 09:42:16 2019 Received: (at 34450) by debbugs.gnu.org; 15 Feb 2019 14:42:16 +0000 Received: from localhost ([127.0.0.1]:48703 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1guegx-0008BM-IR for submit@debbugs.gnu.org; Fri, 15 Feb 2019 09:42:16 -0500 Received: from dd26836.kasserver.com ([85.13.145.193]:58336) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1guegv-0008BB-9L for 34450@debbugs.gnu.org; Fri, 15 Feb 2019 09:42:14 -0500 Received: from dayas.3.home (77.117.254.175.wireless.dyn.drei.com [77.117.254.175]) by dd26836.kasserver.com (Postfix) with ESMTPSA id 22A54336031B; Fri, 15 Feb 2019 15:42:11 +0100 (CET) From: Danny Milosavljevic To: 34450@debbugs.gnu.org Subject: [PATCH v2] gnu: Add genimage. Date: Fri, 15 Feb 2019 15:42:05 +0100 Message-Id: <20190215144205.9299-1-dannym@scratchpost.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190212030928.7802-1-dannym@scratchpost.org> References: <20190212030928.7802-1-dannym@scratchpost.org> MIME-Version: 1.0 Tags: patch Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 34450 Cc: Danny Milosavljevic X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/genimage.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. --- gnu/local.mk | 1 + gnu/packages/genimage.scm | 200 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 201 insertions(+) create mode 100644 gnu/packages/genimage.scm diff --git a/gnu/local.mk b/gnu/local.mk index 0484b3e08..3d59e27e8 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -191,6 +191,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/gcc.scm \ %D%/packages/gd.scm \ %D%/packages/gdb.scm \ + %D%/packages/genimage.scm \ %D%/packages/geo.scm \ %D%/packages/gettext.scm \ %D%/packages/ghostscript.scm \ diff --git a/gnu/packages/genimage.scm b/gnu/packages/genimage.scm new file mode 100644 index 000000000..8f1efd4e7 --- /dev/null +++ b/gnu/packages/genimage.scm @@ -0,0 +1,200 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2018 Danny Milosavljevic +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages genimage) + #: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) + #:use-module (gnu packages) + #:use-module (gnu packages autotools) + #:use-module (gnu packages base) + #:use-module (gnu packages bash) + #:use-module (gnu packages bootloaders) + #:use-module (gnu packages cdrom) + #:use-module (gnu packages compression) + #:use-module (gnu packages cpio) + #:use-module (gnu packages disk) + #:use-module (gnu packages linux) + #:use-module (gnu packages mtools) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages virtualization) + #:use-module (gnu packages wm)) + +(define-public genimage + (package + (name "genimage") + (version "10") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/pengutronix/genimage.git") + (commit (string-append "v" version)))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0had00p2why2l1fl14mq7nbhmmfbd3na4qnnpg36akdy05g67jbn")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'guixify + (lambda* (#:key inputs #:allow-other-keys) + ;; TODO: Make this unnecessary. + ;; This is working around some weird problem that only appears + ;; in our build container: "cp -a" doesn't preserve the mode + ;; but rather removes "group" and "other" mode bits even + ;; though they are set in the original. + ;; Note to maintainers: Check ".def =" lines in source. + (substitute* "config.c" + (("\\.def = \"cpio\"") + (string-append ".def = \"" + (assoc-ref inputs "cpio") + "/bin/cpio\"")) + (("\\.def = \"dd\"") + (string-append ".def = \"" + (assoc-ref inputs "coreutils") + "/bin/dd\"")) + (("\\.def = \"debugfs\"") + (string-append ".def = \"" + (assoc-ref inputs "e2fsprogs") + "/sbin/debugfs\"")) + (("\\.def = \"e2fsck\"") + (string-append ".def = \"" + (assoc-ref inputs "e2fsprogs") + "/sbin/e2fsck\"")) + (("\\.def = \"genext2fs\"") + (string-append ".def = \"" + (assoc-ref inputs "genext2fs") + "/bin/genext2fs\"")) + (("\\.def = \"genisoimage\"") + (string-append ".def = \"" + (assoc-ref inputs "cdrkit-libre") + "/bin/genisoimage\"")) + (("\\.def = \"mcopy\"") + (string-append ".def = \"" + (assoc-ref inputs "mtools") + "/bin/mcopy\"")) + (("\\.def = \"mmd\"") + (string-append ".def = \"" + (assoc-ref inputs "mtools") + "/bin/mmd\"")) + ;;; Note: mkcramfs is obsolete. + (("\\.def = \"mkdosfs\"") + (string-append ".def = \"" + (assoc-ref inputs "dosfstools") + "/sbin/mkfs.fat\"")) + (("\\.def = \"mke2fs\"") + (string-append ".def = \"" + (assoc-ref inputs "e2fsprogs") + "/sbin/mke2fs\"")) + (("\\.def = \"mkfs\\.jffs2\"") + (string-append ".def = \"" + (assoc-ref inputs "mtd-utils") + "/sbin/mkfs.jffs2\"")) + (("\\.def = \"mkfs\\.ubifs\"") + (string-append ".def = \"" + (assoc-ref inputs "mtd-utils") + "/sbin/mkfs.ubifs\"")) + (("\\.def = \"mksquashfs\"") + (string-append ".def = \"" + (assoc-ref inputs "squashfs-tools") + "/bin/mksquashfs\"")) + (("\\.def = \"qemu-img\"") + (string-append ".def = \"" + (assoc-ref inputs "qemu") + "/bin/qemu-img\"")) + (("\\.def = \"tar\"") + (string-append ".def = \"" + (assoc-ref inputs "tar") + "/bin/tar\"")) + (("\\.def = \"tune2fs\"") + (string-append ".def = \"" + (assoc-ref inputs "e2fsprogs") + "/sbin/tune2fs\"")) + (("\\.def = \"ubinize\"") + (string-append ".def = \"" + (assoc-ref inputs "mtd-utils") + "/sbin/ubinize\"")) + (("\\.def = \"mkimage\"") + (string-append ".def = \"" + (assoc-ref inputs "u-boot-tools") + "/bin/mkimage\""))) + (substitute* "test/basic-images.test" + ;; Work around bug in sharness.sh. + (("mkdosfs") + "mkfs.fat") + ;; Work around bug in sharness.sh. + (("dd,mkfs\\.fat,mcopy") + "dd,mkfs_fat,mcopy") + ;; Should be in the next upstream release. + (("qemu_img") "qemu-img")) + (substitute* "util.c" + (("\"/bin/sh\"") + (string-append "\"" (assoc-ref inputs "bash") "/bin/sh\""))) + ;; We don't have /etc/passwd so uid 0 is not known as "root". + ;; Thus patch it out. + (substitute* '("test/ext2test.dump" + "test/ext3test.dump" + "test/ext4test.dump" + "test/mke2fs.dump") + (("root") "unknown")) + #t)) + (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") + #t)) + (replace 'check + (lambda _ + (invoke "make" "TEST_LOG_COMPILER=" "check")))))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ;;; Note: cramfs is obsolete. + ("dtc" ,dtc) ; for the tests + ("fakeroot" ,fakeroot) ; for the tests + ("fdisk" ,fdisk) ; for the tests + ("pkg-config" ,pkg-config) + ("util-linux" ,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 +specification file.") + (home-page "https://github.com/pengutronix/genimage") + (license license:gpl2))) From debbugs-submit-bounces@debbugs.gnu.org Fri Feb 15 09:45:37 2019 Received: (at 34450) by debbugs.gnu.org; 15 Feb 2019 14:45:37 +0000 Received: from localhost ([127.0.0.1]:48707 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1guekC-0008Hi-RH for submit@debbugs.gnu.org; Fri, 15 Feb 2019 09:45:37 -0500 Received: from dd26836.kasserver.com ([85.13.145.193]:58606) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1guekB-0008Hb-Ow for 34450@debbugs.gnu.org; Fri, 15 Feb 2019 09:45:36 -0500 Received: from dayas.3.home (77.117.254.175.wireless.dyn.drei.com [77.117.254.175]) by dd26836.kasserver.com (Postfix) with ESMTPSA id A0BB33360FF6; Fri, 15 Feb 2019 15:45:34 +0100 (CET) From: Danny Milosavljevic To: 34450@debbugs.gnu.org Subject: [PATCH v3] gnu: Add genimage. Date: Fri, 15 Feb 2019 15:45:27 +0100 Message-Id: <20190215144527.13837-1-dannym@scratchpost.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190215144205.9299-1-dannym@scratchpost.org> References: <20190215144205.9299-1-dannym@scratchpost.org> MIME-Version: 1.0 Tags: patch Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 34450 Cc: Danny Milosavljevic X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/genimage.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. --- gnu/local.mk | 1 + gnu/packages/genimage.scm | 194 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 195 insertions(+) create mode 100644 gnu/packages/genimage.scm diff --git a/gnu/local.mk b/gnu/local.mk index 0484b3e08..3d59e27e8 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -191,6 +191,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/gcc.scm \ %D%/packages/gd.scm \ %D%/packages/gdb.scm \ + %D%/packages/genimage.scm \ %D%/packages/geo.scm \ %D%/packages/gettext.scm \ %D%/packages/ghostscript.scm \ diff --git a/gnu/packages/genimage.scm b/gnu/packages/genimage.scm new file mode 100644 index 000000000..792bddf5a --- /dev/null +++ b/gnu/packages/genimage.scm @@ -0,0 +1,194 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2018 Danny Milosavljevic +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages genimage) + #: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) + #:use-module (gnu packages) + #:use-module (gnu packages autotools) + #:use-module (gnu packages base) + #:use-module (gnu packages bash) + #:use-module (gnu packages bootloaders) + #:use-module (gnu packages cdrom) + #:use-module (gnu packages compression) + #:use-module (gnu packages cpio) + #:use-module (gnu packages disk) + #:use-module (gnu packages linux) + #:use-module (gnu packages mtools) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages virtualization) + #:use-module (gnu packages wm)) + +(define-public genimage + (package + (name "genimage") + (version "10") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/pengutronix/genimage.git") + (commit (string-append "v" version)))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0had00p2why2l1fl14mq7nbhmmfbd3na4qnnpg36akdy05g67jbn")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'guixify + (lambda* (#:key inputs #:allow-other-keys) + ;; Note to maintainers: Check ".def =" lines in source. + (substitute* "config.c" + (("\\.def = \"cpio\"") + (string-append ".def = \"" + (assoc-ref inputs "cpio") + "/bin/cpio\"")) + (("\\.def = \"dd\"") + (string-append ".def = \"" + (assoc-ref inputs "coreutils") + "/bin/dd\"")) + (("\\.def = \"debugfs\"") + (string-append ".def = \"" + (assoc-ref inputs "e2fsprogs") + "/sbin/debugfs\"")) + (("\\.def = \"e2fsck\"") + (string-append ".def = \"" + (assoc-ref inputs "e2fsprogs") + "/sbin/e2fsck\"")) + (("\\.def = \"genext2fs\"") + (string-append ".def = \"" + (assoc-ref inputs "genext2fs") + "/bin/genext2fs\"")) + (("\\.def = \"genisoimage\"") + (string-append ".def = \"" + (assoc-ref inputs "cdrkit-libre") + "/bin/genisoimage\"")) + (("\\.def = \"mcopy\"") + (string-append ".def = \"" + (assoc-ref inputs "mtools") + "/bin/mcopy\"")) + (("\\.def = \"mmd\"") + (string-append ".def = \"" + (assoc-ref inputs "mtools") + "/bin/mmd\"")) + ;;; Note: mkcramfs is obsolete. + (("\\.def = \"mkdosfs\"") + (string-append ".def = \"" + (assoc-ref inputs "dosfstools") + "/sbin/mkfs.fat\"")) + (("\\.def = \"mke2fs\"") + (string-append ".def = \"" + (assoc-ref inputs "e2fsprogs") + "/sbin/mke2fs\"")) + (("\\.def = \"mkfs\\.jffs2\"") + (string-append ".def = \"" + (assoc-ref inputs "mtd-utils") + "/sbin/mkfs.jffs2\"")) + (("\\.def = \"mkfs\\.ubifs\"") + (string-append ".def = \"" + (assoc-ref inputs "mtd-utils") + "/sbin/mkfs.ubifs\"")) + (("\\.def = \"mksquashfs\"") + (string-append ".def = \"" + (assoc-ref inputs "squashfs-tools") + "/bin/mksquashfs\"")) + (("\\.def = \"qemu-img\"") + (string-append ".def = \"" + (assoc-ref inputs "qemu") + "/bin/qemu-img\"")) + (("\\.def = \"tar\"") + (string-append ".def = \"" + (assoc-ref inputs "tar") + "/bin/tar\"")) + (("\\.def = \"tune2fs\"") + (string-append ".def = \"" + (assoc-ref inputs "e2fsprogs") + "/sbin/tune2fs\"")) + (("\\.def = \"ubinize\"") + (string-append ".def = \"" + (assoc-ref inputs "mtd-utils") + "/sbin/ubinize\"")) + (("\\.def = \"mkimage\"") + (string-append ".def = \"" + (assoc-ref inputs "u-boot-tools") + "/bin/mkimage\""))) + (substitute* "test/basic-images.test" + ;; Work around bug in sharness.sh. + (("mkdosfs") + "mkfs.fat") + ;; Work around bug in sharness.sh. + (("dd,mkfs\\.fat,mcopy") + "dd,mkfs_fat,mcopy") + ;; Should be in the next upstream release. + (("qemu_img") "qemu-img")) + (substitute* "util.c" + (("\"/bin/sh\"") + (string-append "\"" (assoc-ref inputs "bash") "/bin/sh\""))) + ;; We don't have /etc/passwd so uid 0 is not known as "root". + ;; Thus patch it out. + (substitute* '("test/ext2test.dump" + "test/ext3test.dump" + "test/ext4test.dump" + "test/mke2fs.dump") + (("root") "unknown")) + #t)) + (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") + #t)) + (replace 'check + (lambda _ + (invoke "make" "TEST_LOG_COMPILER=" "check")))))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ;;; Note: cramfs is obsolete. + ("dtc" ,dtc) ; for the tests + ("fdisk" ,fdisk) ; for the tests + ("pkg-config" ,pkg-config) + ("util-linux" ,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 +specification file.") + (home-page "https://github.com/pengutronix/genimage") + (license license:gpl2))) From debbugs-submit-bounces@debbugs.gnu.org Fri Feb 15 10:58:16 2019 Received: (at 34450) by debbugs.gnu.org; 15 Feb 2019 15:58:16 +0000 Received: from localhost ([127.0.0.1]:49700 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gufsW-0003v5-9c for submit@debbugs.gnu.org; Fri, 15 Feb 2019 10:58:16 -0500 Received: from out2-smtp.messagingengine.com ([66.111.4.26]:49459) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gufsU-0003up-CB for 34450@debbugs.gnu.org; Fri, 15 Feb 2019 10:58:15 -0500 Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.nyi.internal (Postfix) with ESMTP id D72C02202A; Fri, 15 Feb 2019 10:58:08 -0500 (EST) Received: from mailfrontend2 ([10.202.2.163]) by compute4.internal (MEProxy); Fri, 15 Feb 2019 10:58:08 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=famulari.name; h=date:from:to:cc:subject:message-id:references:mime-version :content-type:in-reply-to; s=mesmtp; bh=xe5yChSc3GaHSAoMr0QOHtCQ 3sr31aQjiqvIl7EbXmY=; b=E6DPz/niLtUlcWBdhr01SzJzQWNRCzPb+THCniuw jnDuiUrYk7b0DnPHDDVGICNBz5E7CL/ZlOz9PyQDHKIbf8r3W8L87Kfa5SRwP7G5 7Q3Ao12THUX2WspQ9jGmgT5BYTXIGKNZ9xvp6R+SfH9c+LyQUwJ0ZhIFrfxxFgtZ zOE= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm2; bh=xe5yCh Sc3GaHSAoMr0QOHtCQ3sr31aQjiqvIl7EbXmY=; b=zyT6cSM2rabzZKn79AAoFI DyM4p1BWJBNCs3kbSR0TY80Qbs4hjwLXF8j7uJNx4EENbYb3WugfMTy5qLmcQu0a fI0Q9X4ERQ0IuajuM45aFMI8JqmFZghNMBU7RCf4XlP1SRIT7sNImNM2J8MsQPfD 2j4HWnXNo1dYb4JrmEtMWIaM144HTuLLhQfAUuEd0yfSGvhLGzPxupF+WvYgrdOH L9yzhEj19tsr9kpnLzh4A5h7s70gl7A0vQUlXXDExgFfU97IE2QkM0SJkpj5iVSj yZP7ngZOjbeKZdDqmTLP5oypoIIHCRYMYyxVislNktU8MdvRYARDSa2KoE1xnAFg == X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedtledruddtjedgkedvucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfquhhtnecuuegrihhlohhuthemucef tddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenucfjughrpeffhffvuffkfh ggtggujggfsehgtderredtredvnecuhfhrohhmpefnvghoucfhrghmuhhlrghrihcuoehl vghosehfrghmuhhlrghrihdrnhgrmhgvqeenucfkphepjeeirdduvdegrddvtddvrddufe ejnecurfgrrhgrmhepmhgrihhlfhhrohhmpehlvghosehfrghmuhhlrghrihdrnhgrmhgv necuvehluhhsthgvrhfuihiivgeptd X-ME-Proxy: Received: from localhost (c-76-124-202-137.hsd1.pa.comcast.net [76.124.202.137]) by mail.messagingengine.com (Postfix) with ESMTPA id C460A10315; Fri, 15 Feb 2019 10:58:07 -0500 (EST) Date: Fri, 15 Feb 2019 10:58:06 -0500 From: Leo Famulari To: Danny Milosavljevic Subject: Re: [bug#34450] [PATCH v3] gnu: Add genimage. Message-ID: <20190215155806.GB2788@jasmine.lan> References: <20190215144205.9299-1-dannym@scratchpost.org> <20190215144527.13837-1-dannym@scratchpost.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="f2QGlHpHGjS2mn6Y" Content-Disposition: inline In-Reply-To: <20190215144527.13837-1-dannym@scratchpost.org> User-Agent: Mutt/1.11.2 (2019-01-07) X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 34450 Cc: 34450@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) --f2QGlHpHGjS2mn6Y Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Fri, Feb 15, 2019 at 03:45:27PM +0100, Danny Milosavljevic wrote: > * gnu/packages/genimage.scm: New file. > * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. Thanks! LGTM if it's working for you. --f2QGlHpHGjS2mn6Y Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEsFFZSPHn08G5gDigJkb6MLrKfwgFAlxm4Y4ACgkQJkb6MLrK fwicTg/+PKuw2kJgMpgOu5zMN2wJ6H8WYny7k6r8M80aalGvOF7FtwlWmqmDHAuy /ipHcctqhMcBVwbq4WVGlIBbsJhm1Vg2W+/2+BDVDhkXn7UfoyU6fh7A4jqmyNGv jCJ1sggBvVYx6b0VLO7LdLE2jOxu5O75c6MtiMotMxdXsIKECzS13VEqLuv+3NHO iizZ/XVH8sRpokIwtR+Uh1bnF261SMOzZKzyLfk3Ee+44+4fekiOV4Hi9NeNDctE UsG2u8E6NZlizP+cUCo8mV6bzOiRgGjMli01HeMfnWHxUIOlbA0EY9pH1H7PaX7u wZI514qS0Sz/8WYzxfnIhJD09QM3jf7oUIV6mpyjZbacv+ARnKHQ6rwlsG92ny2b iaD/JUIPfmn520xHUCdZcKwrjxWVwDh23J39prHuiIr8pohsWe20OzaQ/lAfDnwO 4jrF+2Z31XWqGI6fIsdsaKdg38fDZCrEYOKpEqGFMbV+JsrXxHs++6ckd6DxUFGQ g8xOd8qKBd3e3l0GCcpHA9V8xkYcFEdugrbKAjXZmly7S8E8OFCq+IDl+gwJSS5e gCTvkaGHeJdkZFtCumewWGMXAyhtrnppk2b9GHzCwhtmuvqFsRf4W6p/LZGp8Zqi 9ikzXCTZUQTSnviW0qoFo5wYpH5GOloT56RpjDumb/nyxVGwkXE= =TPP2 -----END PGP SIGNATURE----- --f2QGlHpHGjS2mn6Y-- From debbugs-submit-bounces@debbugs.gnu.org Fri Feb 15 11:51:28 2019 Received: (at control) by debbugs.gnu.org; 15 Feb 2019 16:51:28 +0000 Received: from localhost ([127.0.0.1]:49737 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gughz-0005BJ-RU for submit@debbugs.gnu.org; Fri, 15 Feb 2019 11:51:28 -0500 Received: from dd26836.kasserver.com ([85.13.145.193]:40674) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gughx-0005B9-EN for control@debbugs.gnu.org; Fri, 15 Feb 2019 11:51:25 -0500 Received: from localhost (unknown [193.170.94.190]) by dd26836.kasserver.com (Postfix) with ESMTPSA id 7B210336031B for ; Fri, 15 Feb 2019 17:51:23 +0100 (CET) Date: Fri, 15 Feb 2019 17:51:14 +0100 From: Danny Milosavljevic To: Message-ID: <20190215175114.72605c00@scratchpost.org> X-Mailer: Claws Mail 3.17.3 (GTK+ 2.24.32; x86_64-unknown-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; boundary="Sig_/1dtYeLtu2P/qPZvA6P5fHLj"; protocol="application/pgp-signature" X-Spam-Score: 1.3 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: close 34450 Content analysis details: (1.3 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/, low trust [85.13.145.193 listed in list.dnswl.org] 1.8 MISSING_SUBJECT Missing Subject: header 0.2 NO_SUBJECT Extra score for no subject 0.0 TVD_SPACE_RATIO No description available. X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.3 (/) --Sig_/1dtYeLtu2P/qPZvA6P5fHLj Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable close 34450 --Sig_/1dtYeLtu2P/qPZvA6P5fHLj Content-Type: application/pgp-signature Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEds7GsXJ0tGXALbPZ5xo1VCwwuqUFAlxm7gIACgkQ5xo1VCww uqUdrwgAiWe3Ir9WpaSR2cycw4O/7Nzm/Fmww9ywGsRTlyq/SuyMpuX+4MKKBGLz o4Sfu/D2DerVHqFhUyefGQbIYL7WJdRPqwmav1M/QnlgtYzqSr35qS3OQig1rhp8 wfE/NhTHpkdjD0wHLtSkDC2YUvSNaYikbQATL5fTvL3emAXaCHY6To/iSTJvLB1o jnEuSPD5GWJZLdsUGtA8dywN7VEHva+4fc3erjwkd+g6/LwEuczufAMZrKKracld bqA8esjq7Ird/QCyVJh1zwkWS7MH47xvoghv2JRGhNccLVigx1StaCtgUr1+7X6M Msp2zHMo6/BOdxU3U4Q2xI9IF28ujA== =lYrc -----END PGP SIGNATURE----- --Sig_/1dtYeLtu2P/qPZvA6P5fHLj-- From unknown Tue Aug 19 23:12:01 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Sat, 16 Mar 2019 11:24:04 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator