guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [BLOG] Childhurds and GNU/Hurd substitutes


From: Jan Nieuwenhuizen
Subject: Re: [BLOG] Childhurds and GNU/Hurd substitutes
Date: Wed, 14 Oct 2020 16:15:07 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux)

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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]