* [BLOG] Childhurds and GNU/Hurd substitutes
@ 2020-10-08 13:34 Jan Nieuwenhuizen
2020-10-08 15:27 ` Tanguy Le Carrour
2020-10-14 9:47 ` zimoun
0 siblings, 2 replies; 8+ messages in thread
From: Jan Nieuwenhuizen @ 2020-10-08 13:34 UTC (permalink / raw)
To: guix-devel, bug-hurd
Hi!
We have just published a blog post on building your own Guix System with
GNU/Hurd and running it in a virtual machine; the road we traveled since
beginning of April and what is possible right now. Read it here:
https://guix.gnu.org/en/blog/2020/childhurds-and-substitutes/
Enjoy!
Janneke, Ludovic & Mathieu
--
Jan Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [BLOG] Childhurds and GNU/Hurd substitutes
2020-10-08 13:34 [BLOG] Childhurds and GNU/Hurd substitutes Jan Nieuwenhuizen
@ 2020-10-08 15:27 ` Tanguy Le Carrour
2020-10-14 9:47 ` zimoun
1 sibling, 0 replies; 8+ messages in thread
From: Tanguy Le Carrour @ 2020-10-08 15:27 UTC (permalink / raw)
To: Jan Nieuwenhuizen; +Cc: guix-devel, bug-hurd
Hi Janneke, Hi Guix!
Le 10/08, Jan Nieuwenhuizen a écrit :
> We have just published a blog post on building your own Guix System with
> GNU/Hurd and running it in a virtual machine; the road we traveled since
> beginning of April and what is possible right now. Read it here:
>
> https://guix.gnu.org/en/blog/2020/childhurds-and-substitutes/
>
> Enjoy!
> Janneke, Ludovic & Mathieu
Thank you guys for all the time and energy you've put into the Hurd!
Can't wait to run my own childhurd!
Cheers!
--
Tanguy
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [BLOG] Childhurds and GNU/Hurd substitutes
2020-10-08 13:34 [BLOG] Childhurds and GNU/Hurd substitutes Jan Nieuwenhuizen
2020-10-08 15:27 ` Tanguy Le Carrour
@ 2020-10-14 9:47 ` zimoun
2020-10-14 14:15 ` Jan Nieuwenhuizen
1 sibling, 1 reply; 8+ messages in thread
From: zimoun @ 2020-10-14 9:47 UTC (permalink / raw)
To: Jan Nieuwenhuizen, guix-devel
Dear,
On Thu, 08 Oct 2020 at 15:34, Jan Nieuwenhuizen <janneke@gnu.org> wrote:
> We have just published a blog post on building your own Guix System with
> GNU/Hurd and running it in a virtual machine; the road we traveled since
> beginning of April and what is possible right now. Read it here:
>
> https://guix.gnu.org/en/blog/2020/childhurds-and-substitutes/
Amazing!
On foreign distro, I have missed how to setup the “childhurd“. The
“guix system” is still a bit mysterious to me…
Using this command line (from gnu/system/examples/bare-hurd.tmpl):
guix environment --ad-hoc qemu \
-- qemu-system-i386 -enable-kvm -m 512 \
-device rtl8139,netdev=net0 -netdev user,id=net0,hostfwd=tcp:127.0.0.1:10022-:2222 \
-snapshot -hda \
$(guix system disk-image -t hurd-raw bare-hurd.tmpl)
it is telling me that the ’ssh’ service is not started. Therefore,
ssh -p 10022 root@localhost
ssh: connect to host localhost port 10022: Connection refused
What do I miss?
Then,
login> login root RET RET
root@guixygnu ~# $(guix build hello)/bin/hello
downloads, builds, and displays as expected “Hello, world!”. \o/
Last, I am confused:
debian$ guix build hello --target=586-pc-gnu hello
/gnu/store/09sz4qsqp3zgnbaxhzppspaxihwmfzll-hello-2.10
root@guixygnu ~# guix build hello
/gnu/store/<other-hash>-hello-2.10
What do I miss?
(Sorry for these naive questions.)
Thank you! All is really neat!
All the best,
simon
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [BLOG] Childhurds and GNU/Hurd substitutes
2020-10-14 9:47 ` zimoun
@ 2020-10-14 14:15 ` Jan Nieuwenhuizen
2020-10-14 20:31 ` zimoun
0 siblings, 1 reply; 8+ messages in thread
From: Jan Nieuwenhuizen @ 2020-10-14 14:15 UTC (permalink / raw)
To: zimoun; +Cc: guix-devel
zimoun writes:
Dear Simon,
> On Thu, 08 Oct 2020 at 15:34, Jan Nieuwenhuizen <janneke@gnu.org> wrote:
>
>> We have just published a blog post on building your own Guix System with
>> GNU/Hurd and running it in a virtual machine; the road we traveled since
>> beginning of April and what is possible right now. Read it here:
>>
>> https://guix.gnu.org/en/blog/2020/childhurds-and-substitutes/
>
> Amazing!
Thanks!
> On foreign distro, I have missed how to setup the “childhurd“. The
> “guix system” is still a bit mysterious to me…
Yeah, guix system in essence "just" builds a disk-image (aka vm-image).
Then, qemu can start that image.
> Using this command line (from gnu/system/examples/bare-hurd.tmpl):
>
> guix environment --ad-hoc qemu \
> -- qemu-system-i386 -enable-kvm -m 512 \
> -device rtl8139,netdev=net0 -netdev user,id=net0,hostfwd=tcp:127.0.0.1:10022-:2222 \
> -snapshot -hda \
> $(guix system disk-image -t hurd-raw bare-hurd.tmpl)
>
> it is telling me that the ’ssh’ service is not started. Therefore,
>
> ssh -p 10022 root@localhost
> ssh: connect to host localhost port 10022: Connection refused
>
> What do I miss?
I have no idea. This exact command works for me. Maybe you had bad
luck/try again? Does `herd start ssh' work after you login as root?
It could be that your "bad luck" comes from qemu networking -- maybe you
could try running your foreign distro's qemu instead of guix's?
> Then,
>
> login> login root RET RET
> root@guixygnu ~# $(guix build hello)/bin/hello
>
> downloads, builds, and displays as expected “Hello, world!”. \o/
\o/
> Last, I am confused:
>
> debian$ guix build hello --target=586-pc-gnu hello
> /gnu/store/09sz4qsqp3zgnbaxhzppspaxihwmfzll-hello-2.10
>
> root@guixygnu ~# guix build hello
> /gnu/store/<other-hash>-hello-2.10
>
> What do I miss?
It's tricky; --target is != --system: --target is a cross-build. IOW,
--system => (%current-system), --target => (%current-target-system).
So,
guix build hello --system=i586-gnu hello
should give the identical hash.
> (Sorry for these naive questions.)
You're welcome. Thanks for looking at this!
> Thank you! All is really neat!
Hehe, that's what we are doing it for;
Have fun!
Janneke
--
Jan Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [BLOG] Childhurds and GNU/Hurd substitutes
2020-10-14 14:15 ` Jan Nieuwenhuizen
@ 2020-10-14 20:31 ` zimoun
2020-10-14 20:57 ` Jan Nieuwenhuizen
2020-10-15 7:13 ` Tanguy Le Carrour
0 siblings, 2 replies; 8+ messages in thread
From: zimoun @ 2020-10-14 20:31 UTC (permalink / raw)
To: Jan Nieuwenhuizen; +Cc: Guix Devel
Dear Janneke,
Thank you for the help! I have fun. :-)
On Wed, 14 Oct 2020 at 16:15, Jan Nieuwenhuizen <janneke@gnu.org> wrote:
> > Using this command line (from gnu/system/examples/bare-hurd.tmpl):
> >
> > guix environment --ad-hoc qemu \
> > -- qemu-system-i386 -enable-kvm -m 512 \
> > -device rtl8139,netdev=net0 -netdev user,id=net0,hostfwd=tcp:127.0.0.1:10022-:2222 \
> > -snapshot -hda \
> > $(guix system disk-image -t hurd-raw bare-hurd.tmpl)
> >
> > it is telling me that the ’ssh’ service is not started. Therefore,
> >
> > ssh -p 10022 root@localhost
> > ssh: connect to host localhost port 10022: Connection refused
> >
> > What do I miss?
>
> I have no idea. This exact command works for me. Maybe you had bad
> luck/try again? Does `herd start ssh' work after you login as root?
>
> It could be that your "bad luck" comes from qemu networking -- maybe you
> could try running your foreign distro's qemu instead of guix's?
I do not know if it was bad luck or if "herd start ssh" does the trick
but here we go! \o/
--8<---------------cut here---------------start------------->8---
$ ssh -p 10022 root@localhost
The authenticity of host '[localhost]:10022 ([127.0.0.1]:10022)' can't
be established.
ECDSA key fingerprint is SHA256:iETZ8thOyFqk+35g02tRW9FRzLqilgYYlxWr/9xn/kI.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[localhost]:10022' (ECDSA) to the list of
known hosts.
This is the GNU Hurd. Welcome.
--8<---------------cut here---------------end--------------->8---
Thank you.
> > Last, I am confused:
> >
> > debian$ guix build hello --target=i586-pc-gnu hello
> > /gnu/store/09sz4qsqp3zgnbaxhzppspaxihwmfzll-hello-2.10
[..]
> It's tricky; --target is != --system: --target is a cross-build. IOW,
> --system => (%current-system), --target => (%current-target-system).
>
> So,
>
> guix build hello --system=i586-gnu hello
>
> should give the identical hash.
What is the target? i586-pc-gnu or i586-gnu? The blog post mentions
'i586-pc-gnu' at the beginning and then 'i586-gnu'. I suppose it is
'i586-gnu' since using this target produces the expected hash.
What do I miss?
All the best,
simon
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [BLOG] Childhurds and GNU/Hurd substitutes
2020-10-14 20:31 ` zimoun
@ 2020-10-14 20:57 ` Jan Nieuwenhuizen
2020-10-14 21:17 ` zimoun
2020-10-15 7:13 ` Tanguy Le Carrour
1 sibling, 1 reply; 8+ messages in thread
From: Jan Nieuwenhuizen @ 2020-10-14 20:57 UTC (permalink / raw)
To: zimoun; +Cc: Guix Devel
zimoun writes:
Dear Simon,
> Thank you for the help! I have fun. :-)
Good!
> On Wed, 14 Oct 2020 at 16:15, Jan Nieuwenhuizen <janneke@gnu.org> wrote:
> I do not know if it was bad luck or if "herd start ssh" does the trick
> but here we go! \o/
>
> $ ssh -p 10022 root@localhost
> The authenticity of host '[localhost]:10022 ([127.0.0.1]:10022)' can't
> be established.
> ECDSA key fingerprint is SHA256:iETZ8thOyFqk+35g02tRW9FRzLqilgYYlxWr/9xn/kI.
> Are you sure you want to continue connecting (yes/no)? yes
> Warning: Permanently added '[localhost]:10022' (ECDSA) to the list of
> known hosts.
>
>
> This is the GNU Hurd. Welcome.
>
> Thank you.
\o/
>> > Last, I am confused:
>> >
>> > debian$ guix build hello --target=i586-pc-gnu hello
>> > /gnu/store/09sz4qsqp3zgnbaxhzppspaxihwmfzll-hello-2.10
>
> [..]
>
>> It's tricky; --target is != --system: --target is a cross-build. IOW,
>> --system => (%current-system), --target => (%current-target-system).
>>
>> So,
>>
>> guix build hello --system=i586-gnu hello
>>
>> should give the identical hash.
>
> What is the target? i586-pc-gnu or i586-gnu? The blog post mentions
> 'i586-pc-gnu' at the beginning and then 'i586-gnu'. I suppose it is
> 'i586-gnu' since using this target produces the expected hash.
> What do I miss?
Yeah, this can be confusing. The target is a triplet
(https://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.69/html_node/Specifying-Target-Triplets.html),
e.g. i586-pc-gnu, x86_64-unknown-linux-gnu; system is specified by the
platform, or interpreter name; see e.g. gnu/packages/bootstrap.scm:
glibc-dynamic-linker for a list of platforms.
Greetings,
Janneke
--
Jan Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [BLOG] Childhurds and GNU/Hurd substitutes
2020-10-14 20:57 ` Jan Nieuwenhuizen
@ 2020-10-14 21:17 ` zimoun
0 siblings, 0 replies; 8+ messages in thread
From: zimoun @ 2020-10-14 21:17 UTC (permalink / raw)
To: Jan Nieuwenhuizen; +Cc: Guix Devel
On Wed, 14 Oct 2020 at 22:57, Jan Nieuwenhuizen <janneke@gnu.org> wrote:
> >> It's tricky; --target is != --system: --target is a cross-build. IOW,
> >> --system => (%current-system), --target => (%current-target-system).
[..]
> Yeah, this can be confusing. The target is a triplet
> (https://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.69/html_node/Specifying-Target-Triplets.html),
> e.g. i586-pc-gnu, x86_64-unknown-linux-gnu; system is specified by the
> platform, or interpreter name; see e.g. gnu/packages/bootstrap.scm:
> glibc-dynamic-linker for a list of platforms.
Ah ok! Sorry, you already told me: --target != --system. Just previously.
Well, the Zen of Python (python -c 'import this') seems appropriate
here: "Although that way may not be obvious at first unless you're
Dutch". :-) Even if it is only inherited from autoconf. :-)
Cheers,
simon
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [BLOG] Childhurds and GNU/Hurd substitutes
2020-10-14 20:31 ` zimoun
2020-10-14 20:57 ` Jan Nieuwenhuizen
@ 2020-10-15 7:13 ` Tanguy Le Carrour
1 sibling, 0 replies; 8+ messages in thread
From: Tanguy Le Carrour @ 2020-10-15 7:13 UTC (permalink / raw)
To: Jan Nieuwenhuizen; +Cc: Guix Devel
Le 10/08, Tanguy Le Carrour a écrit :
>Le 10/08, Jan Nieuwenhuizen a écrit :
>> We have just published a blog post on building your own Guix System with
>> GNU/Hurd and running it in a virtual machine; the road we traveled since
>> beginning of April and what is possible right now. Read it here:
>>
>> https://guix.gnu.org/en/blog/2020/childhurds-and-substitutes/
>> […]
>
>Thank you guys for all the time and energy you've put into the Hurd!
>Can't wait to run my own childhurd!
```
$ ssh -p 10022 root@localhost
This is the GNU Hurd. Welcome.
root@childhurd ~# uname -a
GNU childhurd 0.9 GNU-Mach 1.8/Hurd-0.9 i686-AT386 GNU
```
It's alive! \o/
Thanks!!
--
Tanguy
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2020-10-15 7:13 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-10-08 13:34 [BLOG] Childhurds and GNU/Hurd substitutes Jan Nieuwenhuizen
2020-10-08 15:27 ` Tanguy Le Carrour
2020-10-14 9:47 ` zimoun
2020-10-14 14:15 ` Jan Nieuwenhuizen
2020-10-14 20:31 ` zimoun
2020-10-14 20:57 ` Jan Nieuwenhuizen
2020-10-14 21:17 ` zimoun
2020-10-15 7:13 ` Tanguy Le Carrour
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/guix.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).