[PATCH] hurd-boot: Symlink /hurd before setting up translators.

  • Done
  • quality assurance status badge
Details
4 participants
  • Brian Cully
  • Josselin Poiret
  • Janneke Nieuwenhuizen
  • Ludovic Courtès
Owner
unassigned
Submitted by
Josselin Poiret
Severity
normal
J
J
Josselin Poiret wrote on 14 May 2023 15:36
(address . guix-patches@gnu.org)(name . Josselin Poiret)(address . dev@jpoiret.xyz)
84b0af47fbad93a82d8926a805d9198285525b05.1684071339.git.dev@jpoiret.xyz
From: Josselin Poiret <dev@jpoiret.xyz>

* gnu/build/hurd-boot.scm (boot-hurd-system): Symlink /hurd before setting up
translators.
---

Hi everyone,

This should fix the Hurd not booting.

Enjoy! (and now we also need to fix the native Hurd compilation problems, but
that's for another patch)

gnu/build/hurd-boot.scm | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)

Toggle diff (27 lines)
diff --git a/gnu/build/hurd-boot.scm b/gnu/build/hurd-boot.scm
index abcf0304c2..95c15907dd 100644
--- a/gnu/build/hurd-boot.scm
+++ b/gnu/build/hurd-boot.scm
@@ -280,14 +280,14 @@ (define* (boot-hurd-system #:key (on-error 'debug))
(system (find-long-option "gnu.system" args))
(to-load (find-long-option "gnu.load" args)))
- (format #t "Setting-up essential translators...\n")
- (setenv "PATH" (string-append system "/profile/bin"))
- (set-hurd-device-translators)
-
(false-if-exception (delete-file "/hurd"))
(let ((hurd/hurd (readlink* (string-append system "/profile/hurd"))))
(symlink hurd/hurd "/hurd"))
+ (format #t "Setting-up essential translators...\n")
+ (setenv "PATH" (string-append system "/profile/bin"))
+ (set-hurd-device-translators)
+
(format #t "Starting pager...\n")
(unless (zero? (system* "/hurd/mach-defpager"))
(format #t "FAILED...Good luck!\n"))

base-commit: eb7312401ea89e634f8d686db71bacda58b2755f
--
2.40.1
J
J
Janneke Nieuwenhuizen wrote on 14 May 2023 16:16
(name . Josselin Poiret)(address . dev@jpoiret.xyz)(address . 63501@debbugs.gnu.org)
87y1lruhfm.fsf@gnu.org
Josselin Poiret via Guix-patches via writes:

Hi Josselin!

Toggle quote (8 lines)
> * gnu/build/hurd-boot.scm (boot-hurd-system): Symlink /hurd before setting up
> translators.
> ---
> This should fix the Hurd not booting.
>
> Enjoy! (and now we also need to fix the native Hurd compilation problems, but
> that's for another patch)

Haven't reconfigured using this, but it works for me using

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

and

Toggle snippet (9 lines)
$(guix build qemu | grep -Ev '(doc|static)$')/bin/qemu-system-i386 \
-m 4096 \
--device rtl8139,netdev=net0 \
--netdev user,id=net0,hostfwd=tcp:0.0.0.0:11022-:2222 \
--snapshot \
--no-reboot \
--hda /gnu/store/nap53abhcsjqc2xg8dvbyy1vplb8kkzf-disk-image

after some waiting, I get:

Toggle snippet (10 lines)
16:07:15 janneke@drakenpad:~/src/guix/master [env]
$ ssh childhurd1
Last login: Sun May 14 16:07:03 2023 from 10.0.2.2
??????
??????
?????? This is the GNU Hurd. Welcome.

root@guixygnu ~#

Well done, phew that was quite a puzzle!

Toggle quote (21 lines)
> diff --git a/gnu/build/hurd-boot.scm b/gnu/build/hurd-boot.scm
> index abcf0304c2..95c15907dd 100644
> --- a/gnu/build/hurd-boot.scm
> +++ b/gnu/build/hurd-boot.scm
> @@ -280,14 +280,14 @@ (define* (boot-hurd-system #:key (on-error 'debug))
> (system (find-long-option "gnu.system" args))
> (to-load (find-long-option "gnu.load" args)))
>
> - (format #t "Setting-up essential translators...\n")
> - (setenv "PATH" (string-append system "/profile/bin"))
> - (set-hurd-device-translators)
> -
> (false-if-exception (delete-file "/hurd"))
> (let ((hurd/hurd (readlink* (string-append system "/profile/hurd"))))
> (symlink hurd/hurd "/hurd"))
>
> + (format #t "Setting-up essential translators...\n")
> + (setenv "PATH" (string-append system "/profile/bin"))
> + (set-hurd-device-translators)
> +

So, LGTM!

Interesting how this seemed to work with earlier versions of the Hurd...

Greetings,
Janneke

--
Janneke Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond https://LilyPond.org
Freelance IT https://www.JoyOfSource.com| Avatar® https://AvatarAcademy.com
L
L
Ludovic Courtès wrote on 16 May 2023 14:53
Re: bug#63501: [PATCH] hurd-boot: Symlink /hurd before setting up translators.
(name . Josselin Poiret)(address . dev@jpoiret.xyz)(address . 63501@debbugs.gnu.org)
87y1lo4ev0.fsf@gnu.org
Hello!

Josselin Poiret <dev@jpoiret.xyz> skribis:

Toggle quote (5 lines)
> From: Josselin Poiret <dev@jpoiret.xyz>
>
> * gnu/build/hurd-boot.scm (boot-hurd-system): Symlink /hurd before setting up
> translators.

Good catch!

Any idea when the regression was introduced?

Anyhow, LGTM.

Thanks for investigating!

Ludo’.
B
B
Brian Cully wrote on 16 May 2023 19:08
(name . Josselin Poiret)(address . dev@jpoiret.xyz)(address . 63501@debbugs.gnu.org)
87a5y4qk5k.fsf@psyduck.jhoto.kublai.com
This patch is working for me to get ‘hurd-vm-service-type’ working on master.
J
J
Josselin Poiret wrote on 17 May 2023 23:29
Re: [PATCH] hurd-boot: Symlink /hurd before setting up translators.
(address . 63501-done@debbugs.gnu.org)
877ct61wa1.fsf@jpoiret.xyz
Hi,

Josselin Poiret <dev@jpoiret.xyz> writes:
Toggle quote (3 lines)
> * gnu/build/hurd-boot.scm (boot-hurd-system): Symlink /hurd before setting up
> translators.

Pushed as e041801e615d9194505d30093a7fdc8ac1d4a929.

Best,
--
Josselin Poiret
-----BEGIN PGP SIGNATURE-----

iQHEBAEBCgAuFiEEOSSM2EHGPMM23K8vUF5AuRYXGooFAmRlR1YQHGRldkBqcG9p
cmV0Lnh5egAKCRBQXkC5Fhcaim/1DACQ83PKG8l7fAv9ar50sYTj+JT6ykDKcFFT
aswdOef3KpQoSzVSsbrFVteaHBfJbfiK16QfiFy44/cq5z62hyXjj5aNVWeY6gmx
EIuQa/8uGovwrXd3dGOYxmqh5f5qRGuVD2BJ3RJdYkefZU0jIMPmeylE/xQwnJ9z
b/9UQt2mHLHE6tWZydD54ka8cAb0k6ghhTFahGwyOh5VihEkNcnl68MwcqRm713N
FaDrvGN4E93Obvhzwl87i0CguGZFAmdJ0HwSRHeHTfSgnS+1p8a6mTQcD6XI2hhL
rrH1B47g8M9yTEYngvWifNVEbtn9JNnDq4vJ7fXjwNc1vyfGF1B5Ij7uSBg4QZxl
LiXoTtIOI0dvQNDtUMOo6UZReOaJ4EDUSr0D6APGVhYx8N1I+ucdg91KYl3z17/3
8CwJywrA9VdoLhQYfVa98YVM8LKVWEzebegg6AzBOaF9dZg5zlAjMbXzf9uqEj4Z
oo9NQRH2Mnkj3Cyrn3UV4THMjPKXp/I=
=9zQc
-----END PGP SIGNATURE-----

Closed
?