From unknown Sun Jun 22 00:45:21 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#32116] Allow bytevector as content of plain-file for binary data. Resent-From: Jan Nieuwenhuizen Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Tue, 10 Jul 2018 17:42:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 32116 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: To: 32116@debbugs.gnu.org X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.153124450411267 (code B ref -1); Tue, 10 Jul 2018 17:42:02 +0000 Received: (at submit) by debbugs.gnu.org; 10 Jul 2018 17:41:44 +0000 Received: from localhost ([127.0.0.1]:54304 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fcwe0-0002vf-I2 for submit@debbugs.gnu.org; Tue, 10 Jul 2018 13:41:44 -0400 Received: from eggs.gnu.org ([208.118.235.92]:56644) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fcwdy-0002vH-Q1 for submit@debbugs.gnu.org; Tue, 10 Jul 2018 13:41:43 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fcwds-0006oh-RI for submit@debbugs.gnu.org; Tue, 10 Jul 2018 13:41:37 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:50090) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1fcwds-0006oM-OS for submit@debbugs.gnu.org; Tue, 10 Jul 2018 13:41:36 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:47592) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fcwdr-0000eO-DM for guix-patches@gnu.org; Tue, 10 Jul 2018 13:41:36 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fcwdq-0006nE-GW for guix-patches@gnu.org; Tue, 10 Jul 2018 13:41:35 -0400 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:35383) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fcwdq-0006n3-CI; Tue, 10 Jul 2018 13:41:34 -0400 Received: from [2001:980:1b4f:1:42d2:832d:bb59:862] (port=47140 helo=dundal.fritz.box) by fencepost.gnu.org with esmtpa (Exim 4.82) (envelope-from ) id 1fcwdp-0005Bz-Si; Tue, 10 Jul 2018 13:41:34 -0400 From: Jan Nieuwenhuizen Date: Tue, 10 Jul 2018 19:41:26 +0200 Message-Id: <20180710174128.6360-1-janneke@gnu.org> X-Mailer: git-send-email 2.18.0 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -5.0 (-----) 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: -6.0 (------) Currently, plain-file does not handle binary content correctly. As discussed on IRC[0] I added bytevector support to plain-file. This allows for using a package source directly from git, doing something like --8<---------------cut here---------------start------------->8--- (define (command->bytevector command) (let ((port (apply open-pipe* OPEN_READ command))) (let ((output (get-bytevector-all port))) (close-port port) output))) (define-public hello-git (package (name "hello") (version "git") (source (let* ((commit "stable-2.0") (content (command->bytevector `("git" "archive" "--format" "tar" "--prefix" ,(string-append commit "/") ,commit))) (file-name (string-append "hello-" commit))) (plain-file file-name content))) ... )) --8<---------------cut here---------------end--------------->8--- Greetings, janneke [0] https://gnunet.org/bot/log/guix/2018-07-10#T1763807 From debbugs-submit-bounces@debbugs.gnu.org Tue Jul 10 14:03:06 2018 Received: (at control) by debbugs.gnu.org; 10 Jul 2018 18:03:06 +0000 Received: from localhost ([127.0.0.1]:54322 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fcwyg-0005TC-Cw for submit@debbugs.gnu.org; Tue, 10 Jul 2018 14:03:06 -0400 Received: from eggs.gnu.org ([208.118.235.92]:34044) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fcwyc-0005Se-I7 for control@debbugs.gnu.org; Tue, 10 Jul 2018 14:03:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fcwyW-0000yp-LL for control@debbugs.gnu.org; Tue, 10 Jul 2018 14:02:57 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:35827) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fcwyW-0000yk-Gz for control@debbugs.gnu.org; Tue, 10 Jul 2018 14:02:56 -0400 Received: from [2001:980:1b4f:1:42d2:832d:bb59:862] (port=47206 helo=dundal.peder.onsbrabantnet.nl) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1fcwyV-0005gr-Tl for control@debbugs.gnu.org; Tue, 10 Jul 2018 14:02:56 -0400 Date: Tue, 10 Jul 2018 20:02:51 +0200 Message-Id: <87in5nm0j8.fsf@gnu.org> To: control@debbugs.gnu.org From: Jan Nieuwenhuizen Subject: control message for bug #32116 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) 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: -6.0 (------) merge 32116 32117 From debbugs-submit-bounces@debbugs.gnu.org Tue Jul 10 14:03:21 2018 Received: (at control) by debbugs.gnu.org; 10 Jul 2018 18:03:21 +0000 Received: from localhost ([127.0.0.1]:54325 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fcwyt-0005Te-Mu for submit@debbugs.gnu.org; Tue, 10 Jul 2018 14:03:21 -0400 Received: from eggs.gnu.org ([208.118.235.92]:34104) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fcwys-0005TP-1F for control@debbugs.gnu.org; Tue, 10 Jul 2018 14:03:18 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fcwym-00012R-D5 for control@debbugs.gnu.org; Tue, 10 Jul 2018 14:03:13 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:35832) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fcwym-00012N-AB for control@debbugs.gnu.org; Tue, 10 Jul 2018 14:03:12 -0400 Received: from [2001:980:1b4f:1:42d2:832d:bb59:862] (port=47210 helo=dundal.peder.onsbrabantnet.nl) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1fcwyl-000684-Qr for control@debbugs.gnu.org; Tue, 10 Jul 2018 14:03:12 -0400 Date: Tue, 10 Jul 2018 20:03:08 +0200 Message-Id: <87h8l7m0ir.fsf@gnu.org> To: control@debbugs.gnu.org From: Jan Nieuwenhuizen Subject: control message for bug #32116 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) 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: -6.0 (------) merge 32116 32118 From unknown Sun Jun 22 00:45:21 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#32116] [bug#32117] [PATCH 1/2] store: Add `binary-file'. Resent-From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Wed, 11 Jul 2018 22:10:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 32116 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Jan Nieuwenhuizen Cc: 32116@debbugs.gnu.org, 32117@debbugs.gnu.org Received: via spool by 32116-submit@debbugs.gnu.org id=B32116.153134699228875 (code B ref 32116); Wed, 11 Jul 2018 22:10:01 +0000 Received: (at 32116) by debbugs.gnu.org; 11 Jul 2018 22:09:52 +0000 Received: from localhost ([127.0.0.1]:56025 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fdNJ1-0007Vf-Mj for submit@debbugs.gnu.org; Wed, 11 Jul 2018 18:09:51 -0400 Received: from eggs.gnu.org ([208.118.235.92]:60773) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fdNIx-0007VP-Bs for 32116@debbugs.gnu.org; Wed, 11 Jul 2018 18:09:47 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fdNIr-0002pr-AG for 32116@debbugs.gnu.org; Wed, 11 Jul 2018 18:09:42 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:59478) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fdNIl-0002M5-74; Wed, 11 Jul 2018 18:09:35 -0400 Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=59940 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1fdNIk-0000IL-NP; Wed, 11 Jul 2018 18:09:35 -0400 From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) References: <20180710174128.6360-1-janneke@gnu.org> <20180710174128.6360-2-janneke@gnu.org> Date: Thu, 12 Jul 2018 00:09:33 +0200 In-Reply-To: <20180710174128.6360-2-janneke@gnu.org> (Jan Nieuwenhuizen's message of "Tue, 10 Jul 2018 19:41:27 +0200") Message-ID: <87y3ehh1b6.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) MIME-Version: 1.0 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: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) 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: -6.0 (------) Hello, Jan Nieuwenhuizen skribis: > * guix/store.scm (binary-file): New function. > * doc/guix.texi (G-Expressions): Describe binary-file*. [...] > +@deffn {Monadic Procedure} binary-file* @var{name} @var{data} @dots{} There=E2=80=99s no =E2=80=98*=E2=80=99 in the actual procedure name. Also, could you move this @deffn to =E2=80=9CThe Store Monad=E2=80=9D, righ= t after =E2=80=98text-file=E2=80=99? Apart from that it LGTM, thanks! Ludo=E2=80=99. From unknown Sun Jun 22 00:45:21 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#32116] [bug#32117] [PATCH 1/2] store: Add `binary-file'. Resent-From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Wed, 11 Jul 2018 22:11:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 32116 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Jan Nieuwenhuizen Cc: 32116@debbugs.gnu.org, 32117@debbugs.gnu.org Received: via spool by 32116-submit@debbugs.gnu.org id=B32116.153134700728958 (code B ref 32116); Wed, 11 Jul 2018 22:11:02 +0000 Received: (at 32116) by debbugs.gnu.org; 11 Jul 2018 22:10:07 +0000 Received: from localhost ([127.0.0.1]:56034 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fdNJH-0007Wy-AL for submit@debbugs.gnu.org; Wed, 11 Jul 2018 18:10:07 -0400 Received: from eggs.gnu.org ([208.118.235.92]:32846) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fdNJG-0007W9-Aa for 32116@debbugs.gnu.org; Wed, 11 Jul 2018 18:10:06 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fdNJA-000465-9g for 32116@debbugs.gnu.org; Wed, 11 Jul 2018 18:10:01 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:59492) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fdNJ6-0003qp-6s; Wed, 11 Jul 2018 18:09:56 -0400 Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=59942 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1fdNJ5-0000JJ-R3; Wed, 11 Jul 2018 18:09:56 -0400 From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) In-Reply-To: <20180710174128.6360-2-janneke@gnu.org> (Jan Nieuwenhuizen's message of "Tue, 10 Jul 2018 19:41:27 +0200") References: <20180710174128.6360-1-janneke@gnu.org> <20180710174128.6360-2-janneke@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) Date: Thu, 12 Jul 2018 00:09:54 +0200 Message-ID: <87wou1h1al.fsf@gnu.org> MIME-Version: 1.0 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: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) 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: -6.0 (------) Hello, Jan Nieuwenhuizen skribis: > * guix/store.scm (binary-file): New function. > * doc/guix.texi (G-Expressions): Describe binary-file*. [...] > +@deffn {Monadic Procedure} binary-file* @var{name} @var{data} @dots{} There=E2=80=99s no =E2=80=98*=E2=80=99 in the actual procedure name. Also, could you move this @deffn to =E2=80=9CThe Store Monad=E2=80=9D, righ= t after =E2=80=98text-file=E2=80=99? Apart from that it LGTM, thanks! Ludo=E2=80=99. From unknown Sun Jun 22 00:45:21 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#32116] [bug#32118] [PATCH 2/2] gexp: Allow bytevector as content of `plain-file'. Resent-From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Wed, 11 Jul 2018 22:12:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 32116 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Jan Nieuwenhuizen Cc: 32116@debbugs.gnu.org, 32118@debbugs.gnu.org Received: via spool by 32116-submit@debbugs.gnu.org id=B32116.153134710829128 (code B ref 32116); Wed, 11 Jul 2018 22:12:02 +0000 Received: (at 32116) by debbugs.gnu.org; 11 Jul 2018 22:11:48 +0000 Received: from localhost ([127.0.0.1]:56042 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fdNKt-0007Zd-Ty for submit@debbugs.gnu.org; Wed, 11 Jul 2018 18:11:48 -0400 Received: from eggs.gnu.org ([208.118.235.92]:33783) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fdNKs-0007ZS-LK for 32116@debbugs.gnu.org; Wed, 11 Jul 2018 18:11:46 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fdNKm-0005Wu-LM for 32116@debbugs.gnu.org; Wed, 11 Jul 2018 18:11:41 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:59521) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fdNKf-0005U4-Ex; Wed, 11 Jul 2018 18:11:33 -0400 Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=59944 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1fdNKf-0000RH-1X; Wed, 11 Jul 2018 18:11:33 -0400 From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) References: <20180710174128.6360-1-janneke@gnu.org> <20180710174128.6360-3-janneke@gnu.org> Date: Thu, 12 Jul 2018 00:11:31 +0200 In-Reply-To: <20180710174128.6360-3-janneke@gnu.org> (Jan Nieuwenhuizen's message of "Tue, 10 Jul 2018 19:41:28 +0200") Message-ID: <87sh4ph17w.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) 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: -6.0 (------) Jan Nieuwenhuizen skribis: > This allows for using a package source directly from git, doing something like > > (define (command->bytevector command) > (let ((port (apply open-pipe* OPEN_READ command))) > (let ((output (get-bytevector-all port))) > (close-port port) > output))) > > (define-public hello-git > (package > (name "hello") > (version "git") > (source (let* ((commit "stable-2.0") > (content (command->bytevector > `("git" "archive" "--format" "tar" "--prefix" > ,(string-append commit "/") ,commit))) > (file-name (string-append "hello-" commit))) > (plain-file file-name content))) > ... > )) > > * guix/gexp.scm (): Also allow bytevector content. > (plain-file-compiler): Handle bytevector content. > * doc/guix.texi (G-Expressions): Describe plain-file now also taking > bytevectors. LGTM, thanks! Ludo'. From unknown Sun Jun 22 00:45:21 2025 MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) X-Loop: help-debbugs@gnu.org From: help-debbugs@gnu.org (GNU bug Tracking System) To: Jan Nieuwenhuizen Subject: bug#32116: closed (Re: [bug#32117] [PATCH 1/2] store: Add `binary-file'.) Message-ID: References: <87tvp5jct4.fsf@gnu.org> <20180710174128.6360-1-janneke@gnu.org> X-Gnu-PR-Message: they-closed 32116 X-Gnu-PR-Package: guix-patches X-Gnu-PR-Keywords: patch Reply-To: 32116@debbugs.gnu.org Date: Thu, 12 Jul 2018 04:31:02 +0000 Content-Type: multipart/mixed; boundary="----------=_1531369862-5809-1" This is a multi-part message in MIME format... ------------=_1531369862-5809-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Your bug report #32116: Allow bytevector as content of plain-file for binary data. which was filed against the guix-patches package, has been closed. The explanation is attached below, along with your original report. If you require more details, please reply to 32116@debbugs.gnu.org. --=20 32116: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D32116 GNU Bug Tracking System Contact help-debbugs@gnu.org with problems ------------=_1531369862-5809-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at 32116-done) by debbugs.gnu.org; 12 Jul 2018 04:30:56 +0000 Received: from localhost ([127.0.0.1]:56196 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fdTFm-0001VB-5z for submit@debbugs.gnu.org; Thu, 12 Jul 2018 00:30:55 -0400 Received: from eggs.gnu.org ([208.118.235.92]:44540) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fdTFk-0001Ux-6l for 32116-done@debbugs.gnu.org; Thu, 12 Jul 2018 00:30:52 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fdTFe-0001V3-3k for 32116-done@debbugs.gnu.org; Thu, 12 Jul 2018 00:30:47 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:36023) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fdTFW-0001Lx-Rd; Thu, 12 Jul 2018 00:30:38 -0400 Received: from [2001:980:1b4f:1:42d2:832d:bb59:862] (port=50448 helo=dundal.peder.onsbrabantnet.nl) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1fdTFW-0001ny-AT; Thu, 12 Jul 2018 00:30:38 -0400 From: Jan Nieuwenhuizen To: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: [bug#32117] [PATCH 1/2] store: Add `binary-file'. Organization: AvatarAcademy.nl References: <20180710174128.6360-1-janneke@gnu.org> <20180710174128.6360-2-janneke@gnu.org> <87y3ehh1b6.fsf@gnu.org> X-Url: http://AvatarAcademy.nl Date: Thu, 12 Jul 2018 06:30:31 +0200 In-Reply-To: <87y3ehh1b6.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Thu, 12 Jul 2018 00:09:33 +0200") Message-ID: <87tvp5jct4.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) MIME-Version: 1.0 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: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: 32116-done Cc: 32116-done@debbugs.gnu.org, 32117-done@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: -6.0 (------) Ludovic Court=C3=A8s writes: >> +@deffn {Monadic Procedure} binary-file* @var{name} @var{data} @dots{} > > There=E2=80=99s no =E2=80=98*=E2=80=99 in the actual procedure name. > > Also, could you move this @deffn to =E2=80=9CThe Store Monad=E2=80=9D, ri= ght after > =E2=80=98text-file=E2=80=99? Ah, I based this on the `text-file*' description! Moved, and rewritten as @deffn {Monadic Procedure} binary-file @var{name} @var{data} [@var{referenc= es}] Return as a monadic value the absolute file name in the store of the file containing @var{data}, a bytevector. @var{references} is a list of store items that the resulting binary file refers to; it defaults to the empty li= st. @end deffn > Apart from that it LGTM, thanks! Pushed to master as f3a422511f793fb6c6cfeec2bb8735965a03294a janneke --=20 Jan Nieuwenhuizen | GNU LilyPond http://lilypond.org Freelance IT http://JoyofSource.com | Avatar=C2=AE http://AvatarAcademy.com ------------=_1531369862-5809-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at submit) by debbugs.gnu.org; 10 Jul 2018 17:41:44 +0000 Received: from localhost ([127.0.0.1]:54304 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fcwe0-0002vf-I2 for submit@debbugs.gnu.org; Tue, 10 Jul 2018 13:41:44 -0400 Received: from eggs.gnu.org ([208.118.235.92]:56644) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fcwdy-0002vH-Q1 for submit@debbugs.gnu.org; Tue, 10 Jul 2018 13:41:43 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fcwds-0006oh-RI for submit@debbugs.gnu.org; Tue, 10 Jul 2018 13:41:37 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:50090) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1fcwds-0006oM-OS for submit@debbugs.gnu.org; Tue, 10 Jul 2018 13:41:36 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:47592) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fcwdr-0000eO-DM for guix-patches@gnu.org; Tue, 10 Jul 2018 13:41:36 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fcwdq-0006nE-GW for guix-patches@gnu.org; Tue, 10 Jul 2018 13:41:35 -0400 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:35383) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fcwdq-0006n3-CI; Tue, 10 Jul 2018 13:41:34 -0400 Received: from [2001:980:1b4f:1:42d2:832d:bb59:862] (port=47140 helo=dundal.fritz.box) by fencepost.gnu.org with esmtpa (Exim 4.82) (envelope-from ) id 1fcwdp-0005Bz-Si; Tue, 10 Jul 2018 13:41:34 -0400 From: Jan Nieuwenhuizen To: guix-patches@gnu.org Subject: Allow bytevector as content of plain-file for binary data. Date: Tue, 10 Jul 2018 19:41:26 +0200 Message-Id: <20180710174128.6360-1-janneke@gnu.org> X-Mailer: git-send-email 2.18.0 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: submit 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: -6.0 (------) Currently, plain-file does not handle binary content correctly. As discussed on IRC[0] I added bytevector support to plain-file. This allows for using a package source directly from git, doing something like --8<---------------cut here---------------start------------->8--- (define (command->bytevector command) (let ((port (apply open-pipe* OPEN_READ command))) (let ((output (get-bytevector-all port))) (close-port port) output))) (define-public hello-git (package (name "hello") (version "git") (source (let* ((commit "stable-2.0") (content (command->bytevector `("git" "archive" "--format" "tar" "--prefix" ,(string-append commit "/") ,commit))) (file-name (string-append "hello-" commit))) (plain-file file-name content))) ... )) --8<---------------cut here---------------end--------------->8--- Greetings, janneke [0] https://gnunet.org/bot/log/guix/2018-07-10#T1763807 ------------=_1531369862-5809-1-- From unknown Sun Jun 22 00:45:21 2025 MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) X-Loop: help-debbugs@gnu.org From: help-debbugs@gnu.org (GNU bug Tracking System) To: Jan Nieuwenhuizen Subject: bug#32117: closed (Re: [bug#32117] [PATCH 1/2] store: Add `binary-file'.) Message-ID: References: <87tvp5jct4.fsf@gnu.org> <20180710174128.6360-2-janneke@gnu.org> X-Gnu-PR-Message: they-closed 32117 X-Gnu-PR-Package: guix-patches X-Gnu-PR-Keywords: patch Reply-To: 32117@debbugs.gnu.org Date: Thu, 12 Jul 2018 04:31:03 +0000 Content-Type: multipart/mixed; boundary="----------=_1531369863-5809-3" This is a multi-part message in MIME format... ------------=_1531369863-5809-3 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Your bug report #32116: [PATCH 1/2] store: Add `binary-file'. which was filed against the guix-patches package, has been closed. The explanation is attached below, along with your original report. If you require more details, please reply to 32117@debbugs.gnu.org. --=20 32116: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D32116 GNU Bug Tracking System Contact help-debbugs@gnu.org with problems ------------=_1531369863-5809-3 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at 32116-done) by debbugs.gnu.org; 12 Jul 2018 04:30:56 +0000 Received: from localhost ([127.0.0.1]:56196 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fdTFm-0001VB-5z for submit@debbugs.gnu.org; Thu, 12 Jul 2018 00:30:55 -0400 Received: from eggs.gnu.org ([208.118.235.92]:44540) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fdTFk-0001Ux-6l for 32116-done@debbugs.gnu.org; Thu, 12 Jul 2018 00:30:52 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fdTFe-0001V3-3k for 32116-done@debbugs.gnu.org; Thu, 12 Jul 2018 00:30:47 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:36023) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fdTFW-0001Lx-Rd; Thu, 12 Jul 2018 00:30:38 -0400 Received: from [2001:980:1b4f:1:42d2:832d:bb59:862] (port=50448 helo=dundal.peder.onsbrabantnet.nl) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1fdTFW-0001ny-AT; Thu, 12 Jul 2018 00:30:38 -0400 From: Jan Nieuwenhuizen To: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: [bug#32117] [PATCH 1/2] store: Add `binary-file'. Organization: AvatarAcademy.nl References: <20180710174128.6360-1-janneke@gnu.org> <20180710174128.6360-2-janneke@gnu.org> <87y3ehh1b6.fsf@gnu.org> X-Url: http://AvatarAcademy.nl Date: Thu, 12 Jul 2018 06:30:31 +0200 In-Reply-To: <87y3ehh1b6.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Thu, 12 Jul 2018 00:09:33 +0200") Message-ID: <87tvp5jct4.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) MIME-Version: 1.0 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: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: 32116-done Cc: 32116-done@debbugs.gnu.org, 32117-done@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: -6.0 (------) Ludovic Court=C3=A8s writes: >> +@deffn {Monadic Procedure} binary-file* @var{name} @var{data} @dots{} > > There=E2=80=99s no =E2=80=98*=E2=80=99 in the actual procedure name. > > Also, could you move this @deffn to =E2=80=9CThe Store Monad=E2=80=9D, ri= ght after > =E2=80=98text-file=E2=80=99? Ah, I based this on the `text-file*' description! Moved, and rewritten as @deffn {Monadic Procedure} binary-file @var{name} @var{data} [@var{referenc= es}] Return as a monadic value the absolute file name in the store of the file containing @var{data}, a bytevector. @var{references} is a list of store items that the resulting binary file refers to; it defaults to the empty li= st. @end deffn > Apart from that it LGTM, thanks! Pushed to master as f3a422511f793fb6c6cfeec2bb8735965a03294a janneke --=20 Jan Nieuwenhuizen | GNU LilyPond http://lilypond.org Freelance IT http://JoyofSource.com | Avatar=C2=AE http://AvatarAcademy.com ------------=_1531369863-5809-3 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at submit) by debbugs.gnu.org; 10 Jul 2018 17:41:47 +0000 Received: from localhost ([127.0.0.1]:54307 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fcwe2-0002vt-QB for submit@debbugs.gnu.org; Tue, 10 Jul 2018 13:41:47 -0400 Received: from eggs.gnu.org ([208.118.235.92]:56661) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fcwe0-0002vK-54 for submit@debbugs.gnu.org; Tue, 10 Jul 2018 13:41:44 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fcwdt-0006pU-VS for submit@debbugs.gnu.org; Tue, 10 Jul 2018 13:41:39 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50 autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:43402) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1fcwdt-0006pJ-SE for submit@debbugs.gnu.org; Tue, 10 Jul 2018 13:41:37 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:47604) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fcwds-0000fJ-LS for guix-patches@gnu.org; Tue, 10 Jul 2018 13:41:37 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fcwdr-0006nh-BW for guix-patches@gnu.org; Tue, 10 Jul 2018 13:41:36 -0400 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:35384) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fcwdr-0006nb-7Q; Tue, 10 Jul 2018 13:41:35 -0400 Received: from [2001:980:1b4f:1:42d2:832d:bb59:862] (port=47140 helo=dundal.fritz.box) by fencepost.gnu.org with esmtpa (Exim 4.82) (envelope-from ) id 1fcwdq-0005Bz-PU; Tue, 10 Jul 2018 13:41:35 -0400 From: Jan Nieuwenhuizen To: guix-patches@gnu.org Subject: [PATCH 1/2] store: Add `binary-file'. Date: Tue, 10 Jul 2018 19:41:27 +0200 Message-Id: <20180710174128.6360-2-janneke@gnu.org> X-Mailer: git-send-email 2.18.0 In-Reply-To: <20180710174128.6360-1-janneke@gnu.org> References: <20180710174128.6360-1-janneke@gnu.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: submit 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: -6.0 (------) * guix/store.scm (binary-file): New function. * doc/guix.texi (G-Expressions): Describe binary-file*. --- doc/guix.texi | 7 ++++++- guix/store.scm | 15 ++++++++++++++- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index a8e53a530..04d7a79ac 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -27,7 +27,7 @@ Copyright @copyright{} 2016, 2017, 2018 Chris Marusich@* Copyright @copyright{} 2016, 2017, 2018 Efraim Flashner@* Copyright @copyright{} 2016 John Darrington@* Copyright @copyright{} 2016, 2017 Nils Gillmann@* -Copyright @copyright{} 2016, 2017 Jan Nieuwenhuizen@* +Copyright @copyright{} 2016, 2017, 2018 Jan Nieuwenhuizen@* Copyright @copyright{} 2016 Julien Lepiller@* Copyright @copyright{} 2016 Alex ter Weele@* Copyright @copyright{} 2017, 2018 Clément Lassieur@* @@ -5463,6 +5463,11 @@ as in: This is the declarative counterpart of @code{text-file*}. @end deffn +@deffn {Monadic Procedure} binary-file* @var{name} @var{data} @dots{} +Return as a monadic value a derivation that builds a text file +containing @var{data}. @var{data} is a bytevector. +@end deffn + @deffn {Scheme Procedure} file-union @var{name} @var{files} Return a @code{} that builds a directory containing all of @var{files}. Each item in @var{files} must be a two-element list where the first element is the diff --git a/guix/store.scm b/guix/store.scm index bac42f273..cc5c24a77 100644 --- a/guix/store.scm +++ b/guix/store.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès +;;; Copyright © 2018 Jan Nieuwenhuizen ;;; ;;; This file is part of GNU Guix. ;;; @@ -77,6 +78,7 @@ add-data-to-store add-text-to-store add-to-store + binary-file build-things build query-failed-paths @@ -1362,7 +1364,18 @@ taking the store as its first argument." ;; Store monad operators. ;; -(define* (text-file name text +(define* (binary-file name + data ;bytevector + #:optional (references '())) + "Return as a monadic value the absolute file name in the store of the file +containing DATA, a bytevector. REFERENCES is a list of store items that the +resulting text file refers to; it defaults to the empty list." + (lambda (store) + (values (add-data-to-store store name data references) + store))) + +(define* (text-file name + text ;string #:optional (references '())) "Return as a monadic value the absolute file name in the store of the file containing TEXT, a string. REFERENCES is a list of store items that the -- 2.18.0 ------------=_1531369863-5809-3-- From unknown Sun Jun 22 00:45:21 2025 MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) X-Loop: help-debbugs@gnu.org From: help-debbugs@gnu.org (GNU bug Tracking System) To: Jan Nieuwenhuizen Subject: bug#32118: closed (Re: [bug#32117] [PATCH 1/2] store: Add `binary-file'.) Message-ID: References: <87tvp5jct4.fsf@gnu.org> <20180710174128.6360-3-janneke@gnu.org> X-Gnu-PR-Message: they-closed 32118 X-Gnu-PR-Package: guix-patches X-Gnu-PR-Keywords: patch Reply-To: 32118@debbugs.gnu.org Date: Thu, 12 Jul 2018 04:31:03 +0000 Content-Type: multipart/mixed; boundary="----------=_1531369863-5809-5" This is a multi-part message in MIME format... ------------=_1531369863-5809-5 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Your bug report #32116: [PATCH 2/2] gexp: Allow bytevector as content of `plain-file'. which was filed against the guix-patches package, has been closed. The explanation is attached below, along with your original report. If you require more details, please reply to 32118@debbugs.gnu.org. --=20 32116: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D32116 GNU Bug Tracking System Contact help-debbugs@gnu.org with problems ------------=_1531369863-5809-5 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at 32116-done) by debbugs.gnu.org; 12 Jul 2018 04:30:56 +0000 Received: from localhost ([127.0.0.1]:56196 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fdTFm-0001VB-5z for submit@debbugs.gnu.org; Thu, 12 Jul 2018 00:30:55 -0400 Received: from eggs.gnu.org ([208.118.235.92]:44540) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fdTFk-0001Ux-6l for 32116-done@debbugs.gnu.org; Thu, 12 Jul 2018 00:30:52 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fdTFe-0001V3-3k for 32116-done@debbugs.gnu.org; Thu, 12 Jul 2018 00:30:47 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:36023) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fdTFW-0001Lx-Rd; Thu, 12 Jul 2018 00:30:38 -0400 Received: from [2001:980:1b4f:1:42d2:832d:bb59:862] (port=50448 helo=dundal.peder.onsbrabantnet.nl) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1fdTFW-0001ny-AT; Thu, 12 Jul 2018 00:30:38 -0400 From: Jan Nieuwenhuizen To: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: [bug#32117] [PATCH 1/2] store: Add `binary-file'. Organization: AvatarAcademy.nl References: <20180710174128.6360-1-janneke@gnu.org> <20180710174128.6360-2-janneke@gnu.org> <87y3ehh1b6.fsf@gnu.org> X-Url: http://AvatarAcademy.nl Date: Thu, 12 Jul 2018 06:30:31 +0200 In-Reply-To: <87y3ehh1b6.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Thu, 12 Jul 2018 00:09:33 +0200") Message-ID: <87tvp5jct4.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) MIME-Version: 1.0 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: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: 32116-done Cc: 32116-done@debbugs.gnu.org, 32117-done@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: -6.0 (------) Ludovic Court=C3=A8s writes: >> +@deffn {Monadic Procedure} binary-file* @var{name} @var{data} @dots{} > > There=E2=80=99s no =E2=80=98*=E2=80=99 in the actual procedure name. > > Also, could you move this @deffn to =E2=80=9CThe Store Monad=E2=80=9D, ri= ght after > =E2=80=98text-file=E2=80=99? Ah, I based this on the `text-file*' description! Moved, and rewritten as @deffn {Monadic Procedure} binary-file @var{name} @var{data} [@var{referenc= es}] Return as a monadic value the absolute file name in the store of the file containing @var{data}, a bytevector. @var{references} is a list of store items that the resulting binary file refers to; it defaults to the empty li= st. @end deffn > Apart from that it LGTM, thanks! Pushed to master as f3a422511f793fb6c6cfeec2bb8735965a03294a janneke --=20 Jan Nieuwenhuizen | GNU LilyPond http://lilypond.org Freelance IT http://JoyofSource.com | Avatar=C2=AE http://AvatarAcademy.com ------------=_1531369863-5809-5 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at submit) by debbugs.gnu.org; 10 Jul 2018 17:41:47 +0000 Received: from localhost ([127.0.0.1]:54309 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fcwe3-0002vv-79 for submit@debbugs.gnu.org; Tue, 10 Jul 2018 13:41:47 -0400 Received: from eggs.gnu.org ([208.118.235.92]:56673) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fcwe1-0002vO-Ec for submit@debbugs.gnu.org; Tue, 10 Jul 2018 13:41:45 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fcwdv-0006qN-As for submit@debbugs.gnu.org; Tue, 10 Jul 2018 13:41:40 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50 autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:60746) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1fcwdv-0006qB-87 for submit@debbugs.gnu.org; Tue, 10 Jul 2018 13:41:39 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:47623) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fcwdt-0000g4-LP for guix-patches@gnu.org; Tue, 10 Jul 2018 13:41:38 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fcwds-0006o7-AA for guix-patches@gnu.org; Tue, 10 Jul 2018 13:41:37 -0400 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:35385) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fcwds-0006o1-6W; Tue, 10 Jul 2018 13:41:36 -0400 Received: from [2001:980:1b4f:1:42d2:832d:bb59:862] (port=47140 helo=dundal.fritz.box) by fencepost.gnu.org with esmtpa (Exim 4.82) (envelope-from ) id 1fcwdr-0005Bz-Kw; Tue, 10 Jul 2018 13:41:35 -0400 From: Jan Nieuwenhuizen To: guix-patches@gnu.org Subject: [PATCH 2/2] gexp: Allow bytevector as content of `plain-file'. Date: Tue, 10 Jul 2018 19:41:28 +0200 Message-Id: <20180710174128.6360-3-janneke@gnu.org> X-Mailer: git-send-email 2.18.0 In-Reply-To: <20180710174128.6360-1-janneke@gnu.org> References: <20180710174128.6360-1-janneke@gnu.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: submit 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: -6.0 (------) This allows for using a package source directly from git, doing something like (define (command->bytevector command) (let ((port (apply open-pipe* OPEN_READ command))) (let ((output (get-bytevector-all port))) (close-port port) output))) (define-public hello-git (package (name "hello") (version "git") (source (let* ((commit "stable-2.0") (content (command->bytevector `("git" "archive" "--format" "tar" "--prefix" ,(string-append commit "/") ,commit))) (file-name (string-append "hello-" commit))) (plain-file file-name content))) ... )) * guix/gexp.scm (): Also allow bytevector content. (plain-file-compiler): Handle bytevector content. * doc/guix.texi (G-Expressions): Describe plain-file now also taking bytevectors. --- doc/guix.texi | 2 +- guix/gexp.scm | 10 +++++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 04d7a79ac..4d80f3e19 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -5349,7 +5349,7 @@ procedure (@pxref{The Store Monad, @code{interned-file}}). @deffn {Scheme Procedure} plain-file @var{name} @var{content} Return an object representing a text file called @var{name} with the given -@var{content} (a string) to be added to the store. +@var{content} (a string or a bytevector) to be added to the store. This is the declarative counterpart of @code{text-file}. @end deffn diff --git a/guix/gexp.scm b/guix/gexp.scm index 153b29bd4..cc3613f6f 100644 --- a/guix/gexp.scm +++ b/guix/gexp.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014, 2015, 2016, 2017, 2018 Ludovic Courtès ;;; Copyright © 2018 Clément Lassieur +;;; Copyright © 2018 Jan Nieuwenhuizen ;;; ;;; This file is part of GNU Guix. ;;; @@ -23,6 +24,7 @@ #:use-module (guix derivations) #:use-module (guix grafts) #:use-module (guix utils) + #:use-module (rnrs bytevectors) #:use-module (srfi srfi-1) #:use-module (srfi srfi-9) #:use-module (srfi srfi-9 gnu) @@ -334,7 +336,7 @@ appears." (%plain-file name content references) plain-file? (name plain-file-name) ;string - (content plain-file-content) ;string + (content plain-file-content) ;string or bytevector (references plain-file-references)) ;list (currently unused) (define (plain-file name content) @@ -349,8 +351,10 @@ This is the declarative counterpart of 'text-file'." (define-gexp-compiler (plain-file-compiler (file ) system target) ;; "Compile" FILE by adding it to the store. (match file - (($ name content references) - (text-file name content references)))) + (($ name (and (? string?) content) references) + (text-file name content references)) + (($ name (and (? bytevector?) content) references) + (binary-file name content references)))) (define-record-type (%computed-file name gexp guile options) -- 2.18.0 ------------=_1531369863-5809-5-- From unknown Sun Jun 22 00:45:21 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#32116] [bug#32118] [PATCH 2/2] gexp: Allow bytevector as content of `plain-file'. Resent-From: Jan Nieuwenhuizen Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Thu, 12 Jul 2018 04:32:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 32116 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) Cc: 32116-done@debbugs.gnu.org, 32118-done@debbugs.gnu.org Received: via spool by 32116-done@debbugs.gnu.org id=D32116.15313699195949 (code D ref 32116); Thu, 12 Jul 2018 04:32:01 +0000 Received: (at 32116-done) by debbugs.gnu.org; 12 Jul 2018 04:31:59 +0000 Received: from localhost ([127.0.0.1]:56211 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fdTGp-0001Xs-5C for submit@debbugs.gnu.org; Thu, 12 Jul 2018 00:31:59 -0400 Received: from eggs.gnu.org ([208.118.235.92]:45434) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fdTGo-0001Xe-31 for 32116-done@debbugs.gnu.org; Thu, 12 Jul 2018 00:31:58 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fdTGi-0002zO-0Z for 32116-done@debbugs.gnu.org; Thu, 12 Jul 2018 00:31:53 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:36044) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fdTGb-0002fK-T1; Thu, 12 Jul 2018 00:31:45 -0400 Received: from [2001:980:1b4f:1:42d2:832d:bb59:862] (port=50450 helo=dundal.peder.onsbrabantnet.nl) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1fdTGb-0003FZ-4u; Thu, 12 Jul 2018 00:31:45 -0400 From: Jan Nieuwenhuizen Organization: AvatarAcademy.nl References: <20180710174128.6360-1-janneke@gnu.org> <20180710174128.6360-3-janneke@gnu.org> <87sh4ph17w.fsf@gnu.org> X-Url: http://AvatarAcademy.nl Date: Thu, 12 Jul 2018 06:31:38 +0200 In-Reply-To: <87sh4ph17w.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Thu, 12 Jul 2018 00:11:31 +0200") Message-ID: <87pnztjcr9.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) MIME-Version: 1.0 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: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) 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: -6.0 (------) Ludovic Court=C3=A8s writes: >> * guix/gexp.scm (): Also allow bytevector content. >> (plain-file-compiler): Handle bytevector content. >> * doc/guix.texi (G-Expressions): Describe plain-file now also taking >> bytevectors. > > LGTM, thanks! Pushed to master as e8e1f295f15fa56660a2c460d422795b1a31bed8 janneke --=20 Jan Nieuwenhuizen | GNU LilyPond http://lilypond.org Freelance IT http://JoyofSource.com | Avatar=C2=AE http://AvatarAcademy.com