Re: [BLOG] Childhurds and GNU/Hurd substitutes

2020-10-15 Thread Tanguy Le Carrour
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



Re: [BLOG] Childhurds and GNU/Hurd substitutes

2020-10-14 Thread zimoun
On Wed, 14 Oct 2020 at 22:57, Jan Nieuwenhuizen  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



Re: [BLOG] Childhurds and GNU/Hurd substitutes

2020-10-14 Thread Jan Nieuwenhuizen
zimoun writes:

Dear Simon,

> Thank you for the help!  I have fun. :-)

Good!

> On Wed, 14 Oct 2020 at 16:15, Jan Nieuwenhuizen  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  | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com



Re: [BLOG] Childhurds and GNU/Hurd substitutes

2020-10-14 Thread zimoun
Dear Janneke,

Thank you for the help!  I have fun. :-)


On Wed, 14 Oct 2020 at 16:15, Jan Nieuwenhuizen  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-: \
> >  -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



Re: [BLOG] Childhurds and GNU/Hurd substitutes

2020-10-14 Thread Jan Nieuwenhuizen
zimoun writes:

Dear Simon,

> On Thu, 08 Oct 2020 at 15:34, Jan Nieuwenhuizen  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-: \
>  -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/-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  | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com



Re: [BLOG] Childhurds and GNU/Hurd substitutes

2020-10-14 Thread zimoun
Dear,

On Thu, 08 Oct 2020 at 15:34, Jan Nieuwenhuizen  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-: \
 -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/-hello-2.10

What do I miss?


(Sorry for these naive questions.)


Thank you!  All is really neat!

All the best,
simon



Re: [BLOG] Childhurds and GNU/Hurd substitutes

2020-10-08 Thread Tanguy Le Carrour
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