GNU bug report logs - #42047
[PATCH 0/3] Running guix gc on the Hurd.

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: guix; Reported by: "Jan (janneke) Nieuwenhuizen" <janneke@HIDDEN>; Keywords: patch; dated Thu, 25 Jun 2020 20:35:01 UTC; Maintainer for guix is bug-guix@HIDDEN.

Message received at 42047 <at> debbugs.gnu.org:


Received: (at 42047) by debbugs.gnu.org; 27 Jun 2020 11:25:29 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jun 27 07:25:29 2020
Received: from localhost ([127.0.0.1]:43561 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1jp8xc-0005fK-KB
	for submit <at> debbugs.gnu.org; Sat, 27 Jun 2020 07:25:29 -0400
Received: from eggs.gnu.org ([209.51.188.92]:45394)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <janneke@HIDDEN>) id 1jp8xZ-0005f6-Gd
 for 42047 <at> debbugs.gnu.org; Sat, 27 Jun 2020 07:25:27 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e]:55686)
 by eggs.gnu.org with esmtp (Exim 4.90_1)
 (envelope-from <janneke@HIDDEN>)
 id 1jp8xS-0006OG-Rv; Sat, 27 Jun 2020 07:25:18 -0400
Received: from [2001:980:1b4f:1:42d2:832d:bb59:862] (port=54904
 helo=dundal.peder.onsbrabantnet.nl)
 by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256)
 (Exim 4.82) (envelope-from <janneke@HIDDEN>)
 id 1jp8xQ-0006gI-M2; Sat, 27 Jun 2020 07:25:17 -0400
From: Jan Nieuwenhuizen <janneke@HIDDEN>
To: Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@HIDDEN>
Subject: [PATCH v2] guix: gc: Support for the Hurd.
Organization: AvatarAcademy.nl
References: <20200625203850.25057-1-janneke@HIDDEN>
 <20200625203850.25057-3-janneke@HIDDEN> <87pn9mq3bo.fsf@HIDDEN>
 <87d05m9qpx.fsf@HIDDEN>
X-Url: http://AvatarAcademy.nl
Date: Sat, 27 Jun 2020 13:25:13 +0200
In-Reply-To: <87d05m9qpx.fsf@HIDDEN> (Jan Nieuwenhuizen's message of "Fri, 26
 Jun 2020 10:27:38 +0200")
Message-ID: <87eeq0wy1y.fsf_-_@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 42047
Cc: 42047 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

--=-=-=
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

Jan Nieuwenhuizen writes:

Hello,

>> Nitpick: I see 3 mostly unrelated patches: (1) fix duplicate called to
>> =E2=80=98scope=E2=80=99, (2) mount /proc, and (3) handle EIO.  I think i=
t=E2=80=99s clearer to
>> view them separately.

> Yes, I agree.  I will split into 3 patches.

I have split and pushed the trivial hurd-boot patches as
65d95e5d852e47343b9acc1717918c9db7364c01

>>>    (append-map rhs-file-names
>>> -              (split-on-nul
>>> -               (call-with-input-file environ
>>> -                 get-string-all))))
>>> +              (catch 'system-error
>>> +                (lambda _
>>> +                  (split-on-nul
>>> +                   (call-with-input-file environ
>>> +                     get-string-all)))
>>> +                (lambda args
>>> +                  (if (=3D EIO (system-error-errno args))
>>> +                      '()
>>> +                      (apply throw args))))))
>>
>> This may be papering over a real problem.  Before doing that, I think
>> =E2=80=9Cwe=E2=80=9D :-) should investigate why procfs returns EIO in so=
me cases and
>> look into fixing it.
>
> Sure, let "us" look into that! :)

I have (with some kind fixup help from Marius) created a gdb-minimal
package that cross-builds and works on the Hurd.  I tried to gain
insight by attaching to guix-daemon or just running guix-daemon in gdb,
but it does not seem to run under gdb; but that could be my
inexperience.  I'm only getting mig/ipc or thread messages...

So...attached is a pretty blunt hack that does "fix" guix gc.  Where the
above "tried" to paper over the problem, "catch #t" is the only thing I
could get to actually work.

I'm really puzzled here.  This

--8<---------------cut here---------------start------------->8---
  (append-map rhs-file-names
              (split-on-nul
               (catch #t ;;'system-error
                 (lambda _
                   (call-with-input-file environ
                     get-string-all))
                 (lambda args
                   (format (current-error-port) "KETS: args=3D~s\n" args)
                   (format (current-error-port) "sys: ~s\n" (system-error-e=
rrno args))
                   ""))))
--8<---------------cut here---------------end--------------->8---

gives

--8<---------------cut here---------------start------------->8---
KETS: args=3D(r6rs:exception #<r6rs:record:&raise-object-wrapper>)
sys: #f
Backtrace:
          19 (apply-smob/1 #<catch-closure 4003b0>)
In ice-9/boot-9.scm:
    705:2 18 (call-with-prompt _ _ #<procedure default-prompt-handler (k pr=
oc)>)
In ice-9/eval.scm:
    619:8 17 (_ #(#(#<directory (guile-user) 3ec910>)))
In guix/ui.scm:
  1948:12 16 (run-guix-command _ . _)
In ice-9/boot-9.scm:
    829:9 15 (catch _ _ #<procedure 5f5df8 at guix/ui.scm:662:2 (key c)> _)
    829:9 14 (catch _ _ #<procedure 5f5e08 at guix/ui.scm:796:6 (key proc f=
ormat-string format-args . rest)> _)
In guix/scripts/gc.scm:
   280:14 13 (_)
In guix/store/roots.scm:
   290:39 12 (busy-store-items)
madvise failed: Function not implemented
In srfi/srfi-1.scm:
   679:15 11 (append-map _ _ . _)
   592:29 10 (map1 _)
   592:29  9 (map1 _)
   592:29  8 (map1 _)
   592:29  7 (map1 _)
   592:29  6 (map1 ("5" "6" "7" "9" "10" "12" "19" "23" "24" "25" "26" "27"=
 "42" "93" "95" "109" "197" "503" =E2=80=A6))
   592:29  5 (map1 ("6" "7" "9" "10" "12" "19" "23" "24" "25" "26" "27" "42=
" "93" "95" "109" "197" "503" "5=E2=80=A6" =E2=80=A6))
   592:29  4 (map1 ("7" "9" "10" "12" "19" "23" "24" "25" "26" "27" "42" "9=
3" "95" "109" "197" "503" "516" # =E2=80=A6))
   592:17  3 (map1 ("9" "10" "12" "19" "23" "24" "25" "26" "27" "42" "93" "=
95" "109" "197" "503" "516" "538" =E2=80=A6))
In ice-9/boot-9.scm:
    829:9  2 (catch system-error #<procedure 3846800 at guix/store/roots.sc=
m:254:20 ()> #<procedure 3d28048 a=E2=80=A6> =E2=80=A6)
In guix/store/roots.scm:
   259:30  1 (_)
   204:15  0 (proc-environ-roots _)

guix/store/roots.scm:204:15: In procedure proc-environ-roots:
ERROR: R6RS exception:
  1. &i/o-read
  2. &i/o-port: #<input: /proc/9/environ 13>
--8<---------------cut here---------------end--------------->8---

which shows 'system-error as well as conditions.  But using "catch
'system-error' or even

--8<---------------cut here---------------start------------->8---
 (append-map rhs-file-names
             (split-on-nul
              (guard (c (else ;;(i/o-read-error? c)
                         (format #t "KETS\n")
                         (format (current-error-port) "KETS\n")
                         (format (current-error-port) "~a: ignoring EIO: Go=
od luck!\n" environ)
                         "")
                        ;; (#t
                        ;;  (format (current-error-port) "~a: DUNNO\n" c)
                        ;;  "")
                        )
                (format (current-error-port) "gonna call\n")
                (call-with-input-file environ
                  get-string-all))))
--8<---------------cut here---------------end--------------->8---

shows no debug printing at all except "gonna call", and the
exception/condition/raisy-thing somehow "escapes".

Greetings,
Janneke


--=-=-=
Content-Type: text/x-patch; charset=utf-8
Content-Disposition: inline;
 filename=v2-0001-guix-gc-Support-for-the-Hurd.patch
Content-Transfer-Encoding: quoted-printable

From 751423e35e9b4b30e066de9ae6305748fd8f3b0d Mon Sep 17 00:00:00 2001
From: "Jan (janneke) Nieuwenhuizen" <janneke@HIDDEN>
Date: Thu, 25 Jun 2020 17:07:25 +0200
Subject: [PATCH v2] guix: gc: Support for the Hurd.

* guix/store/roots.scm (proc-environ-roots): Handle EIO, for the Hurd.
---
 guix/store/roots.scm | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/guix/store/roots.scm b/guix/store/roots.scm
index 58653507f8..ad4f111b79 100644
--- a/guix/store/roots.scm
+++ b/guix/store/roots.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright =C2=A9 2012, 2013, 2014, 2017, 2019 Ludovic Court=C3=A8s <lu=
do@HIDDEN>
+;;; Copyright =C2=A9 2020 Jan (janneke) Nieuwenhuizen <janneke@HIDDEN>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -24,6 +25,9 @@
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-11)
   #:use-module (srfi srfi-26)
+  #:use-module (srfi srfi-34)
+  #:use-module (srfi srfi-35)
+  #:use-module (rnrs exceptions)
   #:use-module (ice-9 match)
   #:use-module (ice-9 regex)
   #:use-module (ice-9 rdelim)
@@ -198,8 +202,13 @@ or the empty list."
=20
   (append-map rhs-file-names
               (split-on-nul
-               (call-with-input-file environ
-                 get-string-all))))
+               (catch #t
+                 (lambda _
+                   (call-with-input-file environ
+                     get-string-all))
+                 (lambda args
+                   (format (current-error-port) "~a: ignoring EIO: Good lu=
ck!\n" environ)
+                   "")))))
=20
 (define (referenced-files)
   "Return the list of referenced store items."
--=20
Jan Nieuwenhuizen <janneke@HIDDEN> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar=C2=AE http://AvatarAcademy.com


--=-=-=
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable


--=20
Jan Nieuwenhuizen <janneke@HIDDEN> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar=C2=AE http://AvatarAcademy.com

--=-=-=--




Information forwarded to bug-guix@HIDDEN:
bug#42047; Package guix. Full text available.

Message received at 42047 <at> debbugs.gnu.org:


Received: (at 42047) by debbugs.gnu.org; 26 Jun 2020 15:46:18 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jun 26 11:46:18 2020
Received: from localhost ([127.0.0.1]:42966 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1joqYU-0005Ef-8k
	for submit <at> debbugs.gnu.org; Fri, 26 Jun 2020 11:46:18 -0400
Received: from eggs.gnu.org ([209.51.188.92]:57552)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ludo@HIDDEN>) id 1joqYP-0005EM-3P
 for 42047 <at> debbugs.gnu.org; Fri, 26 Jun 2020 11:46:16 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e]:41330)
 by eggs.gnu.org with esmtp (Exim 4.90_1)
 (envelope-from <ludo@HIDDEN>)
 id 1joqYI-0006Tb-FS; Fri, 26 Jun 2020 11:46:06 -0400
Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=35710 helo=ribbon)
 by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256)
 (Exim 4.82) (envelope-from <ludo@HIDDEN>)
 id 1joqYH-0000T9-UJ; Fri, 26 Jun 2020 11:46:06 -0400
From: =?utf-8?Q?Ludovic_Court=C3=A8s?= <ludo@HIDDEN>
To: "Jan \(janneke\) Nieuwenhuizen" <janneke@HIDDEN>
Subject: Re: bug#42047: [PATCH 0/3] Running guix gc on the Hurd.
References: <20200625203400.24644-1-janneke@HIDDEN>
Date: Fri, 26 Jun 2020 17:46:04 +0200
In-Reply-To: <20200625203400.24644-1-janneke@HIDDEN> (Jan Nieuwenhuizen's
 message of "Thu, 25 Jun 2020 22:34:00 +0200")
Message-ID: <87tuyxn83n.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 42047
Cc: 42047 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

"Jan (janneke) Nieuwenhuizen" <janneke@HIDDEN> skribis:

> With these two fixes, it boots again.  These are really minor fixes/typo-=
like
> oversights and I was considering to "just push" them... but then I found =
that
> the "guix build" command is also broken:
>
> root@guixygnu ~# guix build -e '(@@ (gnu packages commencement) gnu-make-=
boot0)'
> Backtrace:
> In ice-9/boot-9.scm:
>   1736:10  4 (with-exception-handler _ _ #:unwind? _ # _)
> In unknown file:
>            3 (apply-smob/0 #<thunk 2d5380>)
> In ice-9/boot-9.scm:
>     718:2  2 (call-with-prompt _ _ #<procedure default-prompt-handle?>)
> In ice-9/eval.scm:
>     619:8  1 (_ #(#(#<directory (guile-user) 2cc820>)))
> In guix/ui.scm:
>   1948:12  0 (run-guix-command _ . _)
>
> guix/ui.scm:1948:12: In procedure run-guix-command:
> In procedure struct-vtable: Wrong type argument in position 1 (expecting =
struct): #f

For the record, janneke found that this was cause by =E2=80=98open-connecti=
on=E2=80=99
returning #f; that, in turn, happened due to a bug introduced in Guile
3.0.4:

  https://bugs.gnu.org/42060

Guix commit 641631c1a2590acb1778ebb7b3a141beb8e7448b solves this
problem.

Ludo=E2=80=99.




Information forwarded to bug-guix@HIDDEN:
bug#42047; Package guix. Full text available.

Message received at 42047 <at> debbugs.gnu.org:


Received: (at 42047) by debbugs.gnu.org; 26 Jun 2020 08:27:52 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jun 26 04:27:52 2020
Received: from localhost ([127.0.0.1]:41794 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1jojiC-0004Gw-8V
	for submit <at> debbugs.gnu.org; Fri, 26 Jun 2020 04:27:52 -0400
Received: from eggs.gnu.org ([209.51.188.92]:57100)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <janneke@HIDDEN>) id 1joji9-0004Gi-Sx
 for 42047 <at> debbugs.gnu.org; Fri, 26 Jun 2020 04:27:50 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e]:52681)
 by eggs.gnu.org with esmtp (Exim 4.90_1)
 (envelope-from <janneke@HIDDEN>)
 id 1joji3-0005DV-18; Fri, 26 Jun 2020 04:27:43 -0400
Received: from [2001:980:1b4f:1:42d2:832d:bb59:862] (port=45590
 helo=dundal.peder.onsbrabantnet.nl)
 by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256)
 (Exim 4.82) (envelope-from <janneke@HIDDEN>)
 id 1joji1-0002fQ-LO; Fri, 26 Jun 2020 04:27:42 -0400
From: Jan Nieuwenhuizen <janneke@HIDDEN>
To: Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@HIDDEN>
Subject: Re: bug#42047: [PATCH 3/3] guix: gc: Support for the Hurd.
Organization: AvatarAcademy.nl
References: <20200625203850.25057-1-janneke@HIDDEN>
 <20200625203850.25057-3-janneke@HIDDEN> <87pn9mq3bo.fsf@HIDDEN>
X-Url: http://AvatarAcademy.nl
Date: Fri, 26 Jun 2020 10:27:38 +0200
Message-ID: <87d05m9qpx.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 42047
Cc: 42047 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Ludovic Court=C3=A8s writes:

Hello,

A new day!

> "Jan (janneke) Nieuwenhuizen" <janneke@HIDDEN> skribis:
>
>> * guix/store/roots.scm (proc-environ-roots): Handle EIO, for the Hurd.
>> * gnu/build/hurd-boot.scm (set-hurd-device-translators): Mount /proc.  A=
dd
>> symlink to /etc/mtab.  Remove duplicate calls to 'scope'.
>
> Nitpick: I see 3 mostly unrelated patches: (1) fix duplicate called to
> =E2=80=98scope=E2=80=99, (2) mount /proc, and (3) handle EIO.  I think it=
=E2=80=99s clearer to
> view them separately.

Yes, I agree.  I will split into 3 patches.

(Initially my plan was to post a DRAFT/RFC for (3) that would either fix
"guix gc", or show us the next error.  Then I needed the other two and
found there was yet another problem...)

>> -  (mkdir* (scope "dev/vcs/1"))
>> -  (mkdir* (scope "dev/vcs/2"))
>> -  (mkdir* (scope "dev/vcs/2"))
>
> Was it creating like /some/root/some/root/dev/vcs/1?

No... "just" //dev/vcs/1.  However, in my bare-iron experiments I
stumbled upon several "Not a directory", so...just being careful here.

>>    (append-map rhs-file-names
>> -              (split-on-nul
>> -               (call-with-input-file environ
>> -                 get-string-all))))
>> +              (catch 'system-error
>> +                (lambda _
>> +                  (split-on-nul
>> +                   (call-with-input-file environ
>> +                     get-string-all)))
>> +                (lambda args
>> +                  (if (=3D EIO (system-error-errno args))
>> +                      '()
>> +                      (apply throw args))))))
>
> This may be papering over a real problem.  Before doing that, I think
> =E2=80=9Cwe=E2=80=9D :-) should investigate why procfs returns EIO in som=
e cases and
> look into fixing it.

Sure, let "us" look into that! :)

> Then maybe we can still have the =E2=80=98catch=E2=80=99 above, but this =
time as a
> temporary measure and with a reference to the upstream issue/commit.
>
> WDYT?

Sure, thanks.

So...I think that I found the problem: Using guile-3.0.[34].  This patch

--8<---------------cut here---------------start------------->8---
diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm
index a32bd33293..b191a7b93b 100644
--- a/gnu/packages/guile.scm
+++ b/gnu/packages/guile.scm
@@ -312,14 +312,14 @@ without requiring the source code to be rewritten.")
   ;; TODO: Make this 'guile-3.0' on the next rebuild cycle.
   (package
     (inherit guile-3.0)
-    (version "3.0.4")
+    (version "3.0.2")
     (source (origin
               (inherit (package-source guile-3.0))
               (uri (string-append "mirror://gnu/guile/guile-"
                                   version ".tar.xz"))
               (sha256
                (base32
-                "0c8dkyvs6xbxp7rgnhkyakajzhakay7qn9kahj1mj49x5vf4fybb"))))=
))
+                "12lziar4j27j9whqp2n18427q45y9ghq7gdd8lqhmj1k0lr7vi2k"))))=
))
=20
 (define-public guile-next
   (deprecated-package "guile-next" guile-3.0))
--8<---------------cut here---------------end--------------->8---

fixes guix build...(terrible!)  What shall "we" do with this, maybe
"someone" wants to have a look?  Guess this should find its way into a
Guile bug report?

[later...]

I checked-out guile master on Debian/Hurd and ran the Guile test suite,
which (apart from known failures) passed.  Leaving that for now.

So, then it "must" be our cross-compiled guile-3.0.4 for the Hurd; best
to check that, right?  Look:

--8<---------------cut here---------------start------------->8---
root@guixydevel ~/guile# ./check-guile -i /run/current-system/profile/bin/g=
uile
Testing /run/current-system/profile/bin/guile ...
with GUILE_LOAD_PATH=3D/root/guile/test-suite:/run/current-system/profile/s=
hare/guile/site/3.0
WARNING: Use of `load' in declarative module (test-suite guile-test).  Add =
#:declarative? #f to your define-module invocation.
Running 00-initial-env.test
Running 00-repl-server.test
Running 00-socket.test
UNRESOLVED: 00-socket.test: AF_INET6/SOCK_STREAM: bind
UNRESOLVED: 00-socket.test: AF_INET6/SOCK_STREAM: bind/sockaddr
UNRESOLVED: 00-socket.test: AF_INET6/SOCK_STREAM: listen
UNRESOLVED: 00-socket.test: AF_INET6/SOCK_STREAM: connect
UNRESOLVED: 00-socket.test: AF_INET6/SOCK_STREAM: connect/sockaddr
UNRESOLVED: 00-socket.test: AF_INET6/SOCK_STREAM: accept
[...]
Running asyncs.test
ERROR: asyncs.test: preemption via sigprof - arguments: ((system-error "set=
itimer" "~A" ("Function not implemented") (1073741902)))
[...]
Running bytevectors.test
FAIL: bytevectors.test: 2.8 Operations on IEEE-754 Representations: bytevec=
tor-ieee-single-native-{ref,set!} (compile -O2)
FAIL: bytevectors.test: 2.8 Operations on IEEE-754 Representations: bytevec=
tor-ieee-double-native-{ref,set!} (compile -O2)
[...]
Running ftw.test
ERROR: ftw.test: file-system-fold: test-suite - arguments: ((match-error "m=
atch" "no matching pattern" ((error "/tmp/guix-build-guile-3.0.4.drv-0/guil=
e-3.0.4/test-suite"))))
FAIL: ftw.test: file-system-fold: test-suite (never enter) - arguments: (ex=
pected-value ((skip "/tmp/guix-build-guile-3.0.4.drv-0/guile-3.0.4/test-sui=
te")) actual-value ((error "/tmp/guix-build-guile-3.0.4.drv-0/guile-3.0.4/t=
est-suite")))
FAIL: ftw.test: file-system-fold: test-suite/lib.scm (flat file) - argument=
s: (expected-value ((leaf "/tmp/guix-build-guile-3.0.4.drv-0/guile-3.0.4/te=
st-suite/test-suite/lib.scm")) actual-value ((error "/tmp/guix-build-guile-=
3.0.4.drv-0/guile-3.0.4/test-suite/test-suite/lib.scm")))
UNRESOLVED: ftw.test: file-system-fold: EACCES
ERROR: ftw.test: file-system-tree: test-suite (never enter) - arguments: ((=
match-error "match" "no matching pattern" #f))
ERROR: ftw.test: file-system-tree: test-suite/* - arguments: ((match-error =
"match" "no matching pattern" #f))
ERROR: ftw.test: file-system-tree: test-suite (recursive) - arguments: ((ma=
tch-error "match" "no matching pattern" #f))
ERROR: ftw.test: scandir: top-srcdir - arguments: ((match-error "match" "no=
 matching pattern" #f))
ERROR: ftw.test: scandir: test-suite - arguments: ((match-error "match" "no=
 matching pattern" #f))
FAIL: ftw.test: scandir: no select
Running popen.test
;;; note: auto-compilation is enabled, set GUILE_AUTO_COMPILE=3D0
;;;       or pass the --no-auto-compile argument to disable.
;;; compiling /root/guile/module/ice-9/command-line.scm
;;; compiling /root/guile/module/system/base/compile.scm
;;; it seems /root/guile/module/system/base/compile.scm
;;; is part of the compiler; skipping auto-compilation
;;; compiling /root/guile/module/system/base/language.scm
;;; WARNING: compilation of /root/guile/module/system/base/language.scm fai=
led:
;;; In procedure variable-ref: variable is unbound: #<variable 3882d0 value=
: #<undefined>>
;;; compiling /root/guile/module/system/base/syntax.scm
[hmm?]
Running ports.test
ERROR: ports.test: %file-port-name-canonicalization: absolute canonicalizat=
ion from ice-9 - arguments: ((system-error "canonicalize-path" "~A" ("No su=
ch file or directory") (1073741826)))
[...]
Running signals.test
ERROR: signals.test: setitimer: current itimers are 0: ITIMER_VIRTUAL - arg=
uments: ((system-error "setitimer" "~A" ("Function not implemented") (10737=
41902)))
ERROR: signals.test: setitimer: current itimers are 0: ITIMER_PROF - argume=
nts: ((system-error "setitimer" "~A" ("Function not implemented") (10737419=
02)))
ERROR: signals.test: setitimer: setting values correctly: initial setting -=
 arguments: ((system-error "setitimer" "~A" ("Function not implemented") (1=
073741902)))
ERROR: signals.test: setitimer: setting values correctly: reset to zero - a=
rguments: ((system-error "setitimer" "~A" ("Function not implemented") (107=
3741902)))
ERROR: signals.test: setitimer: usecs > 1e6: initial setting - arguments: (=
(system-error "setitimer" "~A" ("Function not implemented") (1073741902)))
ERROR: signals.test: setitimer: usecs > 1e6: reset to zero - arguments: ((s=
ystem-error "setitimer" "~A" ("Function not implemented") (1073741902)))
[...]
Running srfi-18.test
FAIL: srfi-18.test: thread-sleep!: thread sleeps fractions of a second
[...]
Running srfi-4.test
FAIL: srfi-4.test: f32 vectors: f32vector-ref
FAIL: srfi-4.test: f32 vectors: f32vector-set!/ref
FAIL: srfi-4.test: f32 vectors: f32vector->list/array->list
FAIL: srfi-4.test: f64 vectors: f64vector-ref
FAIL: srfi-4.test: f64 vectors: f64vector-set!/ref
FAIL: srfi-4.test: f64 vectors: f64vector->list/array->list
FAIL: srfi-4.test: c32 vectors: c32vector-ref
FAIL: srfi-4.test: c32 vectors: c32vector-set!/ref
FAIL: srfi-4.test: c32 vectors: c32vector->list/array->list
FAIL: srfi-4.test: c32 vectors: array-ref
FAIL: srfi-4.test: c64 vectors: c64vector-ref
FAIL: srfi-4.test: c64 vectors: c64vector-set!/ref
FAIL: srfi-4.test: c64 vectors: c64vector->list/list->c64vector
FAIL: srfi-4.test: c64 vectors: c64vector->list/array->list
FAIL: srfi-4.test: c64 vectors: array-ref
[...]
Running suspendable-ports.test
warning: call to primitive-fork while multiple threads are running;
         further behavior unspecified.  See "Processes" in the
         manual, for more information.
ERROR: suspendable-ports.test: %file-port-name-canonicalization: absolute c=
anonicalization from ice-9 - arguments: ((system-error "canonicalize-path" =
"~A" ("No such file or directory") (1073741826)))
[...]
Running weaks.test
ERROR: weaks.test: weak-hash: assoc can do anything - arguments: ((out-of-r=
ange #f "Value out of range ~S to ~S: ~S" (1 4294967295 1844674407370955161=
5) (18446744073709551615)))
--8<---------------cut here---------------end--------------->8---

Some of these are "known" and I didn't run a "baseline" using 3.0.2
(which works).  However the srfi-4 and bytevector look real bad to me.

(FTW could also be real bad, but running "find-files" from (guix build
utils) by hand just works; looks like a compilation-time file name
problem with the/how I ran the/ test-suite.?)

Greetings,
Janneke

--=20
Jan Nieuwenhuizen <janneke@HIDDEN> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar=C2=AE http://AvatarAcademy.com




Information forwarded to bug-guix@HIDDEN:
bug#42047; Package guix. Full text available.

Message received at 42047 <at> debbugs.gnu.org:


Received: (at 42047) by debbugs.gnu.org; 25 Jun 2020 22:25:22 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 25 18:25:22 2020
Received: from localhost ([127.0.0.1]:41451 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1joaJ7-0006S7-Ur
	for submit <at> debbugs.gnu.org; Thu, 25 Jun 2020 18:25:22 -0400
Received: from imta-36.everyone.net ([216.200.145.36]:40194
 helo=imta-38.everyone.net)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <bokr@HIDDEN>) id 1joaJ5-0006Rz-WF
 for 42047 <at> debbugs.gnu.org; Thu, 25 Jun 2020 18:25:21 -0400
Received: from pps.filterd (m0004960.ppops.net [127.0.0.1])
 by imta-38.everyone.net (8.16.0.27/8.16.0.27) with SMTP id 05PMNfZn021895;
 Thu, 25 Jun 2020 15:25:18 -0700
X-Eon-Originating-Account: kgGEjAibEPDyM3Z7uCzxxRy5VUbatdFLzkxOyUtpmKA
X-Eon-Dm: m0116953.ppops.net
Received: by m0116953.mta.everyone.net (EON-AUTHRELAY2 - 53b923b2)
 id m0116953.5ef25221.33961; Thu, 25 Jun 2020 15:25:14 -0700
X-Eon-Sig: AQMHrIJe9SRKrJklNQIAAAAD,26bbbdd21a23643a69efd8125ce879e2
X-Eip: Wx18lzbkHebB2tg9FZy-0KAMNHPuXaTDje_GKxldEC4
Date: Fri, 26 Jun 2020 00:25:04 +0200
From: Bengt Richter <bokr@HIDDEN>
To: Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@HIDDEN>
Subject: Re: bug#42047: [PATCH 3/3] guix: gc: Support for the Hurd.
Message-ID: <20200625222504.GA6055@LionPure>
References: <20200625203850.25057-1-janneke@HIDDEN>
 <20200625203850.25057-3-janneke@HIDDEN> <87pn9mq3bo.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <87pn9mq3bo.fsf@HIDDEN>
User-Agent: Mutt/1.10.1 (2018-07-13)
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.216, 18.0.687
 definitions=2020-06-25_19:2020-06-25,
 2020-06-25 signatures=0
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0
 priorityscore=1501 malwarescore=0
 suspectscore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1034
 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0
 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-2004280000
 definitions=main-2006250132
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 42047
Cc: 42047 <at> debbugs.gnu.org, "Jan \(janneke\) Nieuwenhuizen" <janneke@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Reply-To: Bengt Richter <bokr@HIDDEN>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

On +2020-06-25 22:48:43 +0200, Ludovic Courtès wrote:
> "Jan (janneke) Nieuwenhuizen" <janneke@HIDDEN> skribis:
> 
> > * guix/store/roots.scm (proc-environ-roots): Handle EIO, for the Hurd.
> > * gnu/build/hurd-boot.scm (set-hurd-device-translators): Mount /proc.  Add
> > symlink to /etc/mtab.  Remove duplicate calls to 'scope'.
> 
> Nitpick: I see 3 mostly unrelated patches: (1) fix duplicate called to
> ‘scope’, (2) mount /proc, and (3) handle EIO.  I think it’s clearer to
> view them separately.
> 
> (1) and (2) LGTM!
> 
> > -  (mkdir* (scope "dev/vcs/1"))
> > -  (mkdir* (scope "dev/vcs/2"))
> > -  (mkdir* (scope "dev/vcs/2"))
> 
> Was it creating like /some/root/some/root/dev/vcs/1?
> 
> >    (append-map rhs-file-names
> > -              (split-on-nul
> > -               (call-with-input-file environ
> > -                 get-string-all))))
> > +              (catch 'system-error
> > +                (lambda _
> > +                  (split-on-nul
> > +                   (call-with-input-file environ
> > +                     get-string-all)))
> > +                (lambda args
> > +                  (if (= EIO (system-error-errno args))
> > +                      '()
> > +                      (apply throw args))))))
> 
> This may be papering over a real problem.  Before doing that, I think

I fear paperings-over ;) Would this idea be worth implementing?:

To make sure a "papering over" does not remain un-noticed in an executable,
create a catch-wrapping macro that would generate code acting like catch but
before entering catch, start emitting complaint messages on and
after a calendar date, e.g. checked with (> (car (gettimeofday)) *macro-produced-date-constant*)

E.g., something to use in place of catch, like (borrowing above for example)
              (catch-with-sunset "date-string" "complaint-message"
	        'system-error
		 (lambda _
		   (split-on-nul
		   ...etc...
		   (apply throw args))))

"complaint-message" could obviously contain bug#number, commit id, or plea for report, etc.

(gettimeofday) on my machine is about 50ns (i.e., often get 20 equal values within the microsecond resolution),
so there shouldn't be a performance hit ;)

> “we” :-) should investigate why procfs returns EIO in some cases and
> look into fixing it.
> 
> Then maybe we can still have the ‘catch’ above, but this time as a
> temporary measure and with a reference to the upstream issue/commit.
> 
> WDYT?
> 
> Thank you!
> 
> Ludo’.
> 
> 
> 

-- 
Regards,
Bengt Richter




Information forwarded to bug-guix@HIDDEN:
bug#42047; Package guix. Full text available.

Message received at 42047 <at> debbugs.gnu.org:


Received: (at 42047) by debbugs.gnu.org; 25 Jun 2020 20:53:38 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 25 16:53:37 2020
Received: from localhost ([127.0.0.1]:41326 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1joYsL-0001pW-Lt
	for submit <at> debbugs.gnu.org; Thu, 25 Jun 2020 16:53:37 -0400
Received: from eggs.gnu.org ([209.51.188.92]:56792)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <janneke@HIDDEN>) id 1joYsJ-0001pK-DU
 for 42047 <at> debbugs.gnu.org; Thu, 25 Jun 2020 16:53:36 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e]:45054)
 by eggs.gnu.org with esmtp (Exim 4.90_1)
 (envelope-from <janneke@HIDDEN>)
 id 1joYsD-0005tt-Ch; Thu, 25 Jun 2020 16:53:29 -0400
Received: from [2001:980:1b4f:1:42d2:832d:bb59:862] (port=46190
 helo=dundal.peder.onsbrabantnet.nl)
 by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256)
 (Exim 4.82) (envelope-from <janneke@HIDDEN>)
 id 1joYsC-0001NA-UW; Thu, 25 Jun 2020 16:53:29 -0400
From: Jan Nieuwenhuizen <janneke@HIDDEN>
To: Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@HIDDEN>
Subject: Re: bug#42047: [PATCH 1/3] image: hurd: Create hurd-compatible ext2
 file-system.
Organization: AvatarAcademy.nl
References: <20200625203400.24644-1-janneke@HIDDEN>
 <20200625203850.25057-1-janneke@HIDDEN> <87y2oaq3jg.fsf@HIDDEN>
X-Url: http://AvatarAcademy.nl
Date: Thu, 25 Jun 2020 22:53:27 +0200
In-Reply-To: <87y2oaq3jg.fsf@HIDDEN> ("Ludovic
 \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\=
 \=\?utf-8\?Q\?s\?\= message of "Thu, 25 Jun 2020 22:44:03 +0200")
Message-ID: <87wo3ueuk8.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 42047
Cc: 42047 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Ludovic Court=C3=A8s writes:

Hey Ludo',

> "Jan (janneke) Nieuwenhuizen" <janneke@HIDDEN> skribis:
>
>> This is a follow-up to commit b904b59ce592c89dfb4675a8c06757afed6738a0.
>>
>> * gnu/system/images/hurd.scm (hurd-disk-image): Add file-system-options =
to
>> create an ext2 file-system that is compatible with the Hurd.
>
> [...]
>
>> This is a follow-up to commit b904b59ce592c89dfb4675a8c06757afed6738a0.
>>
>> * gnu/system/image.scm (hurd-initialize-root-partition): Move to ...
>> * gnu/system/images/hurd.scm (hurd-initialize-root-partition): ... here.
>> (hurd-disk-image): Use it.
>
> You can definitely push these two patches.
>
> Breakage occurred as a result of the introduction of (gnu system images
> hurd)?
>
> If you know which commit introduced the regression, I think it=E2=80=99s =
useful
> to mention it in the commit message.

Yes, breakage occured in the mentioned commit above
(b904b59ce592c89dfb4675a8c06757afed6738a0)

Pushed the two fixups to master as 2463a78d17673581978debff6c6c9fce7966980a.

Now to look into "guix build", i'd like to fix that first before
considering "guix gc".

Thanks.
Janneke

--=20
Jan Nieuwenhuizen <janneke@HIDDEN> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar=C2=AE http://AvatarAcademy.com




Information forwarded to bug-guix@HIDDEN:
bug#42047; Package guix. Full text available.

Message received at 42047 <at> debbugs.gnu.org:


Received: (at 42047) by debbugs.gnu.org; 25 Jun 2020 20:48:53 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 25 16:48:53 2020
Received: from localhost ([127.0.0.1]:41313 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1joYnl-0001hi-F9
	for submit <at> debbugs.gnu.org; Thu, 25 Jun 2020 16:48:53 -0400
Received: from eggs.gnu.org ([209.51.188.92]:55536)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ludo@HIDDEN>) id 1joYnj-0001hW-TO
 for 42047 <at> debbugs.gnu.org; Thu, 25 Jun 2020 16:48:52 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e]:44956)
 by eggs.gnu.org with esmtp (Exim 4.90_1)
 (envelope-from <ludo@HIDDEN>)
 id 1joYne-0003GC-Jk; Thu, 25 Jun 2020 16:48:46 -0400
Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=59568 helo=ribbon)
 by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256)
 (Exim 4.82) (envelope-from <ludo@HIDDEN>)
 id 1joYne-0000zl-5q; Thu, 25 Jun 2020 16:48:46 -0400
From: =?utf-8?Q?Ludovic_Court=C3=A8s?= <ludo@HIDDEN>
To: "Jan \(janneke\) Nieuwenhuizen" <janneke@HIDDEN>
Subject: Re: bug#42047: [PATCH 3/3] guix: gc: Support for the Hurd.
References: <20200625203850.25057-1-janneke@HIDDEN>
 <20200625203850.25057-3-janneke@HIDDEN>
Date: Thu, 25 Jun 2020 22:48:43 +0200
In-Reply-To: <20200625203850.25057-3-janneke@HIDDEN> (Jan Nieuwenhuizen's
 message of "Thu, 25 Jun 2020 22:38:50 +0200")
Message-ID: <87pn9mq3bo.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 42047
Cc: 42047 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

"Jan (janneke) Nieuwenhuizen" <janneke@HIDDEN> skribis:

> * guix/store/roots.scm (proc-environ-roots): Handle EIO, for the Hurd.
> * gnu/build/hurd-boot.scm (set-hurd-device-translators): Mount /proc.  Add
> symlink to /etc/mtab.  Remove duplicate calls to 'scope'.

Nitpick: I see 3 mostly unrelated patches: (1) fix duplicate called to
=E2=80=98scope=E2=80=99, (2) mount /proc, and (3) handle EIO.  I think it=
=E2=80=99s clearer to
view them separately.

(1) and (2) LGTM!

> -  (mkdir* (scope "dev/vcs/1"))
> -  (mkdir* (scope "dev/vcs/2"))
> -  (mkdir* (scope "dev/vcs/2"))

Was it creating like /some/root/some/root/dev/vcs/1?

>    (append-map rhs-file-names
> -              (split-on-nul
> -               (call-with-input-file environ
> -                 get-string-all))))
> +              (catch 'system-error
> +                (lambda _
> +                  (split-on-nul
> +                   (call-with-input-file environ
> +                     get-string-all)))
> +                (lambda args
> +                  (if (=3D EIO (system-error-errno args))
> +                      '()
> +                      (apply throw args))))))

This may be papering over a real problem.  Before doing that, I think
=E2=80=9Cwe=E2=80=9D :-) should investigate why procfs returns EIO in some =
cases and
look into fixing it.

Then maybe we can still have the =E2=80=98catch=E2=80=99 above, but this ti=
me as a
temporary measure and with a reference to the upstream issue/commit.

WDYT?

Thank you!

Ludo=E2=80=99.




Information forwarded to bug-guix@HIDDEN:
bug#42047; Package guix. Full text available.

Message received at 42047 <at> debbugs.gnu.org:


Received: (at 42047) by debbugs.gnu.org; 25 Jun 2020 20:44:13 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 25 16:44:13 2020
Received: from localhost ([127.0.0.1]:41305 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1joYjF-0001aB-Jj
	for submit <at> debbugs.gnu.org; Thu, 25 Jun 2020 16:44:13 -0400
Received: from eggs.gnu.org ([209.51.188.92]:54314)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ludo@HIDDEN>) id 1joYjD-0001Zw-DW
 for 42047 <at> debbugs.gnu.org; Thu, 25 Jun 2020 16:44:12 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e]:44892)
 by eggs.gnu.org with esmtp (Exim 4.90_1)
 (envelope-from <ludo@HIDDEN>)
 id 1joYj8-0000L3-3m; Thu, 25 Jun 2020 16:44:06 -0400
Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=59564 helo=ribbon)
 by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256)
 (Exim 4.82) (envelope-from <ludo@HIDDEN>)
 id 1joYj7-0000de-FF; Thu, 25 Jun 2020 16:44:05 -0400
From: =?utf-8?Q?Ludovic_Court=C3=A8s?= <ludo@HIDDEN>
To: "Jan \(janneke\) Nieuwenhuizen" <janneke@HIDDEN>
Subject: Re: bug#42047: [PATCH 1/3] image: hurd: Create hurd-compatible ext2
 file-system.
References: <20200625203400.24644-1-janneke@HIDDEN>
 <20200625203850.25057-1-janneke@HIDDEN>
Date: Thu, 25 Jun 2020 22:44:03 +0200
In-Reply-To: <20200625203850.25057-1-janneke@HIDDEN> (Jan Nieuwenhuizen's
 message of "Thu, 25 Jun 2020 22:38:48 +0200")
Message-ID: <87y2oaq3jg.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 42047
Cc: 42047 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Hi,

"Jan (janneke) Nieuwenhuizen" <janneke@HIDDEN> skribis:

> This is a follow-up to commit b904b59ce592c89dfb4675a8c06757afed6738a0.
>
> * gnu/system/images/hurd.scm (hurd-disk-image): Add file-system-options to
> create an ext2 file-system that is compatible with the Hurd.

[...]

> This is a follow-up to commit b904b59ce592c89dfb4675a8c06757afed6738a0.
>
> * gnu/system/image.scm (hurd-initialize-root-partition): Move to ...
> * gnu/system/images/hurd.scm (hurd-initialize-root-partition): ... here.
> (hurd-disk-image): Use it.

You can definitely push these two patches.

Breakage occurred as a result of the introduction of (gnu system images
hurd)?

If you know which commit introduced the regression, I think it=E2=80=99s us=
eful
to mention it in the commit message.

Thank you!

Ludo=E2=80=99.




Information forwarded to bug-guix@HIDDEN:
bug#42047; Package guix. Full text available.

Message received at 42047 <at> debbugs.gnu.org:


Received: (at 42047) by debbugs.gnu.org; 25 Jun 2020 20:39:07 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 25 16:39:07 2020
Received: from localhost ([127.0.0.1]:41296 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1joYeI-0001Ri-LP
	for submit <at> debbugs.gnu.org; Thu, 25 Jun 2020 16:39:07 -0400
Received: from eggs.gnu.org ([209.51.188.92]:52996)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <janneke@HIDDEN>) id 1joYeA-0001QZ-33
 for 42047 <at> debbugs.gnu.org; Thu, 25 Jun 2020 16:39:02 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e]:44856)
 by eggs.gnu.org with esmtp (Exim 4.90_1)
 (envelope-from <janneke@HIDDEN>)
 id 1joYe4-000461-QL; Thu, 25 Jun 2020 16:38:52 -0400
Received: from [2001:980:1b4f:1:42d2:832d:bb59:862] (port=46176
 helo=dundal.fritz.box) by fencepost.gnu.org with esmtpa (Exim 4.82)
 (envelope-from <janneke@HIDDEN>)
 id 1joYe4-0000HF-9M; Thu, 25 Jun 2020 16:38:52 -0400
From: "Jan (janneke) Nieuwenhuizen" <janneke@HIDDEN>
To: 42047 <at> debbugs.gnu.org
Subject: [PATCH 1/3] image: hurd: Create hurd-compatible ext2 file-system.
Date: Thu, 25 Jun 2020 22:38:48 +0200
Message-Id: <20200625203850.25057-1-janneke@HIDDEN>
X-Mailer: git-send-email 2.26.2
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 42047
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

This is a follow-up to commit b904b59ce592c89dfb4675a8c06757afed6738a0.

* gnu/system/images/hurd.scm (hurd-disk-image): Add file-system-options to
create an ext2 file-system that is compatible with the Hurd.
---
 gnu/system/images/hurd.scm | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/gnu/system/images/hurd.scm b/gnu/system/images/hurd.scm
index 4417f03cc8..e5e120d49c 100644
--- a/gnu/system/images/hurd.scm
+++ b/gnu/system/images/hurd.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2020 Mathieu Othacehe <m.othacehe@HIDDEN>
+;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@HIDDEN>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -66,6 +67,7 @@
            (offset root-offset)
            (label root-label)
            (file-system "ext2")
+           (file-system-options '("-o" "hurd" "-O" "ext_attr"))
            (flags '(boot))
            (initializer (gexp initialize-root-partition)))))))
 
-- 
Jan Nieuwenhuizen <janneke@HIDDEN> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com





Information forwarded to bug-guix@HIDDEN:
bug#42047; Package guix. Full text available.

Message received at 42047 <at> debbugs.gnu.org:


Received: (at 42047) by debbugs.gnu.org; 25 Jun 2020 20:39:03 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 25 16:39:03 2020
Received: from localhost ([127.0.0.1]:41294 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1joYeF-0001RW-Am
	for submit <at> debbugs.gnu.org; Thu, 25 Jun 2020 16:39:03 -0400
Received: from eggs.gnu.org ([209.51.188.92]:53032)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <janneke@HIDDEN>) id 1joYeE-0001Qe-26
 for 42047 <at> debbugs.gnu.org; Thu, 25 Jun 2020 16:39:02 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e]:44858)
 by eggs.gnu.org with esmtp (Exim 4.90_1)
 (envelope-from <janneke@HIDDEN>)
 id 1joYe8-00049U-1m; Thu, 25 Jun 2020 16:38:56 -0400
Received: from [2001:980:1b4f:1:42d2:832d:bb59:862] (port=46176
 helo=dundal.fritz.box) by fencepost.gnu.org with esmtpa (Exim 4.82)
 (envelope-from <janneke@HIDDEN>)
 id 1joYe6-0000HF-5e; Thu, 25 Jun 2020 16:38:54 -0400
From: "Jan (janneke) Nieuwenhuizen" <janneke@HIDDEN>
To: 42047 <at> debbugs.gnu.org
Subject: [PATCH 3/3] guix: gc: Support for the Hurd.
Date: Thu, 25 Jun 2020 22:38:50 +0200
Message-Id: <20200625203850.25057-3-janneke@HIDDEN>
X-Mailer: git-send-email 2.26.2
In-Reply-To: <20200625203850.25057-1-janneke@HIDDEN>
References: <20200625203850.25057-1-janneke@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 42047
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

* guix/store/roots.scm (proc-environ-roots): Handle EIO, for the Hurd.
* gnu/build/hurd-boot.scm (set-hurd-device-translators): Mount /proc.  Add
symlink to /etc/mtab.  Remove duplicate calls to 'scope'.
---
 gnu/build/hurd-boot.scm | 21 ++++++++++++++-------
 guix/store/roots.scm    | 13 ++++++++++---
 2 files changed, 24 insertions(+), 10 deletions(-)

diff --git a/gnu/build/hurd-boot.scm b/gnu/build/hurd-boot.scm
index aea2ac3307..2db99cdcce 100644
--- a/gnu/build/hurd-boot.scm
+++ b/gnu/build/hurd-boot.scm
@@ -191,7 +191,8 @@ set."
                                   "10.0.2.15" ;the default QEMU guest IP
                                   "--netmask" "255.255.255.0"
                                   "--gateway" "10.0.2.2"
-                                  "--ipv6" "/servers/socket/16"))))
+                                  "--ipv6" "/servers/socket/16"))
+      ("proc"                    ("/hurd/procfs" "--stat-mode=444"))))
 
   (define devices
     '(("dev/full"    ("/hurd/null"     "--full")            #o666)
@@ -232,17 +233,23 @@ set."
                                                             #o666)))
 
   (for-each scope-set-translator servers)
-  (mkdir* (scope "dev/vcs/1"))
-  (mkdir* (scope "dev/vcs/2"))
-  (mkdir* (scope "dev/vcs/2"))
-  (rename-file (scope "/dev/console") (scope "/dev/console-"))
+  (mkdir* "dev/vcs/1")
+  (mkdir* "dev/vcs/2")
+  (mkdir* "dev/vcs/2")
+  (rename-file (scope "/dev/console") (scope "dev/console-"))
   (for-each scope-set-translator devices)
 
   (false-if-EEXIST (symlink "/dev/random" (scope "dev/urandom")))
-  (mkdir* (scope "dev/fd"))
+  (mkdir* "dev/fd")
   (false-if-EEXIST (symlink "/dev/fd/0" (scope "dev/stdin")))
   (false-if-EEXIST (symlink "/dev/fd/1" (scope "dev/stdout")))
-  (false-if-EEXIST (symlink "/dev/fd/2" (scope "dev/stderr"))))
+  (false-if-EEXIST (symlink "/dev/fd/2" (scope "dev/stderr")))
+
+  ;; Make sure /etc/mtab is a symlink to /proc/mounts.
+  (false-if-exception
+   (delete-file (scope "etc/mtab")))
+  (mkdir* (scope "etc"))
+  (symlink "/proc/mounts" (scope "etc/mtab")))
 
 
 (define* (boot-hurd-system #:key (on-error 'debug))
diff --git a/guix/store/roots.scm b/guix/store/roots.scm
index 58653507f8..9b4a05b149 100644
--- a/guix/store/roots.scm
+++ b/guix/store/roots.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2012, 2013, 2014, 2017, 2019 Ludovic Courtès <ludo@HIDDEN>
+;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@HIDDEN>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -197,9 +198,15 @@ or the empty list."
     (string-append dir "/environ"))
 
   (append-map rhs-file-names
-              (split-on-nul
-               (call-with-input-file environ
-                 get-string-all))))
+              (catch 'system-error
+                (lambda _
+                  (split-on-nul
+                   (call-with-input-file environ
+                     get-string-all)))
+                (lambda args
+                  (if (= EIO (system-error-errno args))
+                      '()
+                      (apply throw args))))))
 
 (define (referenced-files)
   "Return the list of referenced store items."
-- 
Jan Nieuwenhuizen <janneke@HIDDEN> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com





Information forwarded to bug-guix@HIDDEN:
bug#42047; Package guix. Full text available.

Message received at 42047 <at> debbugs.gnu.org:


Received: (at 42047) by debbugs.gnu.org; 25 Jun 2020 20:39:00 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 25 16:39:00 2020
Received: from localhost ([127.0.0.1]:41290 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1joYeC-0001Qn-1p
	for submit <at> debbugs.gnu.org; Thu, 25 Jun 2020 16:39:00 -0400
Received: from eggs.gnu.org ([209.51.188.92]:53004)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <janneke@HIDDEN>) id 1joYeB-0001Qb-9P
 for 42047 <at> debbugs.gnu.org; Thu, 25 Jun 2020 16:38:59 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e]:44857)
 by eggs.gnu.org with esmtp (Exim 4.90_1)
 (envelope-from <janneke@HIDDEN>)
 id 1joYe6-00047c-0n; Thu, 25 Jun 2020 16:38:54 -0400
Received: from [2001:980:1b4f:1:42d2:832d:bb59:862] (port=46176
 helo=dundal.fritz.box) by fencepost.gnu.org with esmtpa (Exim 4.82)
 (envelope-from <janneke@HIDDEN>)
 id 1joYe5-0000HF-5U; Thu, 25 Jun 2020 16:38:53 -0400
From: "Jan (janneke) Nieuwenhuizen" <janneke@HIDDEN>
To: 42047 <at> debbugs.gnu.org
Subject: [PATCH 2/3] image: hurd: Initialize root partition for the Hurd.
Date: Thu, 25 Jun 2020 22:38:49 +0200
Message-Id: <20200625203850.25057-2-janneke@HIDDEN>
X-Mailer: git-send-email 2.26.2
In-Reply-To: <20200625203850.25057-1-janneke@HIDDEN>
References: <20200625203850.25057-1-janneke@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 42047
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

This is a follow-up to commit b904b59ce592c89dfb4675a8c06757afed6738a0.

* gnu/system/image.scm (hurd-initialize-root-partition): Move to ...
* gnu/system/images/hurd.scm (hurd-initialize-root-partition): ... here.
(hurd-disk-image): Use it.
---
 gnu/system/image.scm       | 7 -------
 gnu/system/images/hurd.scm | 9 ++++++++-
 2 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/gnu/system/image.scm b/gnu/system/image.scm
index bb73aea65a..a4cc2d1ef9 100644
--- a/gnu/system/image.scm
+++ b/gnu/system/image.scm
@@ -96,13 +96,6 @@
    (flags '(boot))
    (initializer (gexp initialize-root-partition))))
 
-(define hurd-initialize-root-partition
-  #~(lambda* (#:rest args)
-      (apply initialize-root-partition
-             (append args
-                     (list #:make-device-nodes
-                           make-hurd-device-nodes)))))
-
 (define efi-disk-image
   (image
    (format 'disk-image)
diff --git a/gnu/system/images/hurd.scm b/gnu/system/images/hurd.scm
index e5e120d49c..31942e7386 100644
--- a/gnu/system/images/hurd.scm
+++ b/gnu/system/images/hurd.scm
@@ -57,6 +57,13 @@
                               (password-authentication? #t)))
                %base-services/hurd))))
 
+(define hurd-initialize-root-partition
+  #~(lambda* (#:rest args)
+      (apply initialize-root-partition
+             (append args
+                     (list #:make-device-nodes
+                           make-hurd-device-nodes)))))
+
 (define hurd-disk-image
   (image
    (format 'disk-image)
@@ -69,7 +76,7 @@
            (file-system "ext2")
            (file-system-options '("-o" "hurd" "-O" "ext_attr"))
            (flags '(boot))
-           (initializer (gexp initialize-root-partition)))))))
+           (initializer hurd-initialize-root-partition))))))
 
 (define hurd-barebones-disk-image
   (image
-- 
Jan Nieuwenhuizen <janneke@HIDDEN> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com





Information forwarded to bug-guix@HIDDEN:
bug#42047; Package guix. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 25 Jun 2020 20:34:09 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 25 16:34:09 2020
Received: from localhost ([127.0.0.1]:41275 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1joYZV-0001Jb-5U
	for submit <at> debbugs.gnu.org; Thu, 25 Jun 2020 16:34:09 -0400
Received: from lists.gnu.org ([209.51.188.17]:39896)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <janneke@HIDDEN>) id 1joYZR-0001JR-L5
 for submit <at> debbugs.gnu.org; Thu, 25 Jun 2020 16:34:07 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:38210)
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <janneke@HIDDEN>) id 1joYZR-0000SJ-DF
 for bug-guix@HIDDEN; Thu, 25 Jun 2020 16:34:05 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e]:44837)
 by eggs.gnu.org with esmtp (Exim 4.90_1)
 (envelope-from <janneke@HIDDEN>)
 id 1joYZP-00015S-Qc; Thu, 25 Jun 2020 16:34:03 -0400
Received: from [2001:980:1b4f:1:42d2:832d:bb59:862] (port=46174
 helo=dundal.fritz.box) by fencepost.gnu.org with esmtpa (Exim 4.82)
 (envelope-from <janneke@HIDDEN>)
 id 1joYZP-0008Qa-72; Thu, 25 Jun 2020 16:34:03 -0400
From: "Jan (janneke) Nieuwenhuizen" <janneke@HIDDEN>
To: bug-guix@HIDDEN
Subject: [PATCH 0/3] Running guix gc on the Hurd.
Date: Thu, 25 Jun 2020 22:34:00 +0200
Message-Id: <20200625203400.24644-1-janneke@HIDDEN>
X-Mailer: git-send-email 2.26.2
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: submit
Cc: Jan Nieuwenhuizen <janneke@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

From: Jan Nieuwenhuizen <janneke@HIDDEN>

Hi!

As discussed on IRC, we would like to get "guix gc" to work on the Hurd.  It's
kind of essential to get the build nodes running a Childhurd.  We discussed
several workarounds, but an acceptable one is non-trivial; so better look into
a proper fix first.

We found that /proc is missing, so I have added that.  And then we found that
/proc/1/environ (and others) may return EIO; so I've added a catch/workaround
for that.

However, when trying to test this I found that the hurd disk image on master
is pretty broken:

   * it creates an ext2, but not of hurd flavor (fixed in 0001)
   * it fails to call make-hurd-device-nodes (fixed in 0002)

With these two fixes, it boots again.  These are really minor fixes/typo-like
oversights and I was considering to "just push" them... but then I found that
the "guix build" command is also broken:

--8<---------------cut here---------------start------------->8---
root@guixygnu ~# guix build -e '(@@ (gnu packages commencement) gnu-make-boot0)'
Backtrace:
In ice-9/boot-9.scm:
  1736:10  4 (with-exception-handler _ _ #:unwind? _ # _)
In unknown file:
           3 (apply-smob/0 #<thunk 2d5380>)
In ice-9/boot-9.scm:
    718:2  2 (call-with-prompt _ _ #<procedure default-prompt-handle?>)
In ice-9/eval.scm:
    619:8  1 (_ #(#(#<directory (guile-user) 2cc820>)))
In guix/ui.scm:
  1948:12  0 (run-guix-command _ . _)

guix/ui.scm:1948:12: In procedure run-guix-command:
In procedure struct-vtable: Wrong type argument in position 1 (expecting struct): #f
--8<---------------cut here---------------end--------------->8---

How sad!

I'm a bit stuck on this, probably because I'm feeling somewhat discouraged.
Any ideas what could have broken this, how to look into it, fix this?

Greetings,
Janneke

Jan (janneke) Nieuwenhuizen (3):
  image: hurd: Create hurd-compatible ext2 file-system.
  image: hurd: Initialize root partition for the Hurd.
  guix: gc: Support for the Hurd.

 gnu/build/hurd-boot.scm    | 21 ++++++++++++++-------
 gnu/system/image.scm       |  7 -------
 gnu/system/images/hurd.scm | 11 ++++++++++-
 guix/store/roots.scm       | 12 +++++++++---
 4 files changed, 33 insertions(+), 18 deletions(-)

-- 
Jan Nieuwenhuizen <janneke@HIDDEN> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com





Acknowledgement sent to "Jan (janneke) Nieuwenhuizen" <janneke@HIDDEN>:
New bug report received and forwarded. Copy sent to bug-guix@HIDDEN. Full text available.
Report forwarded to bug-guix@HIDDEN:
bug#42047; Package guix. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Sat, 27 Jun 2020 11:30:02 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.