unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* GuixSD on the SoftIron OverDrive 1000 (AArch64)
@ 2018-10-20 13:20 Ludovic Courtès
  2018-10-20 16:40 ` Jan Nieuwenhuizen
  2018-10-20 18:29 ` GuixSD on the SoftIron OverDrive 1000 (AArch64) Efraim Flashner
  0 siblings, 2 replies; 9+ messages in thread
From: Ludovic Courtès @ 2018-10-20 13:20 UTC (permalink / raw)
  To: Guix-devel

Hello Guix!

Following advice and encouragements from Vagrant and Danny :-), I
successfully installed GuixSD on the SoftIron OverDrive 1000 machine
that was donated last January¹ (its PSU died a while back and I just
received a replacement from SoftIron, and I thought it was also a good
time to replace the distro.)

The device comes with openSuSE preinstalled and I had first installed
Guix from the binary tarball.  It’s a “normal” UEFI machine so we can
use ‘grub-efi’ directly.  I came up with this GuixSD config:

  https://git.savannah.gnu.org/cgit/guix/maintenance.git/tree/hydra/overdrive.scm

The main difficulty was to come up with the right combination of modules
for the initrd, without which we’d fail to mount the root file system.
Fortunately the OverDrive has a serial output that makes it easy to
debug boot failures.

With that config, I just run:

  guix system init overdrive.scm /

and that’s it!

On the first boot, the GuixSD activation snippets fail while trying to
install /etc, /etc/pam.d, and /etc/skel, and /etc/ssl because these
directories already exist (from openSuSE) whereas GuixSD assumes that
they don’t.  The solution is just to remove/rename them from the Guile
initrd REPL.  Once this is done, booting proceeds flawlessly and
happiness ensues.

Really nice to see that it’s this easy and fully functional with 100%
free software!

Cheers,
Ludo’.

¹ https://gnu.org/software/guix/blog/2018/aarch64-build-machines-donated/

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: GuixSD on the SoftIron OverDrive 1000 (AArch64)
  2018-10-20 13:20 GuixSD on the SoftIron OverDrive 1000 (AArch64) Ludovic Courtès
@ 2018-10-20 16:40 ` Jan Nieuwenhuizen
  2018-10-22 12:29   ` Ludovic Courtès
  2018-10-20 18:29 ` GuixSD on the SoftIron OverDrive 1000 (AArch64) Efraim Flashner
  1 sibling, 1 reply; 9+ messages in thread
From: Jan Nieuwenhuizen @ 2018-10-20 16:40 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: Guix-devel

Ludovic Courtès writes:

> Following advice and encouragements from Vagrant and Danny :-), I
> successfully installed GuixSD on the SoftIron OverDrive 1000 machine
> that was donated last January¹ (its PSU died a while back and I just
> received a replacement from SoftIron, and I thought it was also a good
> time to replace the distro.)

Ooh, nice!

> On the first boot, the GuixSD activation snippets fail while trying to
> install /etc, /etc/pam.d, and /etc/skel, and /etc/ssl because these
> directories already exist (from openSuSE) whereas GuixSD assumes that
> they don’t.  The solution is just to remove/rename them from the Guile
> initrd REPL.  Once this is done, booting proceeds flawlessly and
> happiness ensues.

We could do with a more powerful REPL ;-)

> ¹ https://gnu.org/software/guix/blog/2018/aarch64-build-machines-donated/

So...is there an opportunity for someone to start looking at a Reduced
Binary Seed boostrap for AArch64?

janneke.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: GuixSD on the SoftIron OverDrive 1000 (AArch64)
  2018-10-20 13:20 GuixSD on the SoftIron OverDrive 1000 (AArch64) Ludovic Courtès
  2018-10-20 16:40 ` Jan Nieuwenhuizen
@ 2018-10-20 18:29 ` Efraim Flashner
  2018-10-22 12:31   ` Ludovic Courtès
  1 sibling, 1 reply; 9+ messages in thread
From: Efraim Flashner @ 2018-10-20 18:29 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: Guix-devel

[-- Attachment #1: Type: text/plain, Size: 2483 bytes --]

On Sat, Oct 20, 2018 at 03:20:44PM +0200, Ludovic Courtès wrote:
> Hello Guix!
> 
> The device comes with openSuSE preinstalled and I had first installed
> Guix from the binary tarball.  It’s a “normal” UEFI machine so we can
> use ‘grub-efi’ directly.  I came up with this GuixSD config:
> 
>   https://git.savannah.gnu.org/cgit/guix/maintenance.git/tree/hydra/overdrive.scm
> 

Can I draw your attention to commits
64791eb7e1dceb0940cc881e84820f0170298b34 and
39d7fdce453b0ca23ecbed72048647debbaa58a6 ? :)

> The main difficulty was to come up with the right combination of modules
> for the initrd, without which we’d fail to mount the root file system.
> Fortunately the OverDrive has a serial output that makes it easy to
> debug boot failures.
> 
> With that config, I just run:
> 
>   guix system init overdrive.scm /
> 
> and that’s it!
> 

How did you figure out which modules you needed for the device?

Also, I'd suggest this diff:

diff --git a/hydra/overdrive.scm b/hydra/overdrive.scm
index 072c095..304acd6 100644
--- a/hydra/overdrive.scm
+++ b/hydra/overdrive.scm
@@ -72,7 +72,7 @@
                               `(("ludo" ,(local-file "keys/ssh/ludo.pub"))
                                 ("rekado" ,(local-file "keys/ssh/rekado.pub"))
                                 ("dannym" ,(local-file "keys/ssh/dannym.pub"))))))
-                   (dhcp-client-service)
+                   (service dhcp-client-service-type)
                    (service mcron-service-type
                             (mcron-configuration
                              (jobs (list gc-job btrfs-job))))
@@ -84,7 +84,7 @@
                              (term "vt220")
                              (baud-rate "115200,38400,9600")))

-                   (ntp-service)
+                   (service ntp-service-type)

                    (modify-services %base-services
                      (guix-service-type config =>
@@ -97,4 +97,4 @@
                                          (extra-options
                                           '("--max-jobs=2" "--cores=3")))))))

-  (packages (cons* screen openssh strace %base-packages)))
+  (packages (cons* btrfs-progs screen openssh strace %base-packages)))

-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* Re: GuixSD on the SoftIron OverDrive 1000 (AArch64)
  2018-10-20 16:40 ` Jan Nieuwenhuizen
@ 2018-10-22 12:29   ` Ludovic Courtès
  2018-10-22 19:17     ` GuixSD on AArch64 Vagrant Cascadian
  0 siblings, 1 reply; 9+ messages in thread
From: Ludovic Courtès @ 2018-10-22 12:29 UTC (permalink / raw)
  To: Jan Nieuwenhuizen; +Cc: Guix-devel

Hi,

Jan Nieuwenhuizen <janneke@gnu.org> skribis:

> Ludovic Courtès writes:

[...]

>> On the first boot, the GuixSD activation snippets fail while trying to
>> install /etc, /etc/pam.d, and /etc/skel, and /etc/ssl because these
>> directories already exist (from openSuSE) whereas GuixSD assumes that
>> they don’t.  The solution is just to remove/rename them from the Guile
>> initrd REPL.  Once this is done, booting proceeds flawlessly and
>> happiness ensues.
>
> We could do with a more powerful REPL ;-)

Using “,bournish” helps a bit, but it’s true that fiddling with this
from the Guile prompt is a bit, ahem, unusual.  :-)

>> ¹ https://gnu.org/software/guix/blog/2018/aarch64-build-machines-donated/
>
> So...is there an opportunity for someone to start looking at a Reduced
> Binary Seed boostrap for AArch64?

I think it’s a worthy goal!

On IRC earlier today Vagrant mentioned that the Pinebook AArch64 laptop
(see <https://www.pine64.org/?page_id=3707>) should be able to run
GuixSD when Linux-libre 4.19 and U-Boot 2018.11 are out, with 100% free
software.  That may give another incentive to work on AArch64.

Ludo’.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: GuixSD on the SoftIron OverDrive 1000 (AArch64)
  2018-10-20 18:29 ` GuixSD on the SoftIron OverDrive 1000 (AArch64) Efraim Flashner
@ 2018-10-22 12:31   ` Ludovic Courtès
  0 siblings, 0 replies; 9+ messages in thread
From: Ludovic Courtès @ 2018-10-22 12:31 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: Guix-devel

Hello!

Efraim Flashner <efraim@flashner.co.il> skribis:

> On Sat, Oct 20, 2018 at 03:20:44PM +0200, Ludovic Courtès wrote:
>> Hello Guix!
>> 
>> The device comes with openSuSE preinstalled and I had first installed
>> Guix from the binary tarball.  It’s a “normal” UEFI machine so we can
>> use ‘grub-efi’ directly.  I came up with this GuixSD config:
>> 
>>   https://git.savannah.gnu.org/cgit/guix/maintenance.git/tree/hydra/overdrive.scm
>> 
>
> Can I draw your attention to commits
> 64791eb7e1dceb0940cc881e84820f0170298b34 and
> 39d7fdce453b0ca23ecbed72048647debbaa58a6 ? :)

Oh, who did that?!  :-)

> How did you figure out which modules you needed for the device?

I could pretend I was smart, but it turns out it was a lot of
trial-and-error, looking at /proc/config.gz on the openSuSE kernel,
diffing configs, lsmod, and all that.

> Also, I'd suggest this diff:

I’m all for it, please push!

If you’d like to GuixSDify the OverDrive that you host, please let me
know if everything works according to plan!

Ludo’.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* GuixSD on AArch64
  2018-10-22 12:29   ` Ludovic Courtès
@ 2018-10-22 19:17     ` Vagrant Cascadian
  2018-10-24 13:01       ` Ludovic Courtès
  2018-12-12 10:36       ` Andreas Enge
  0 siblings, 2 replies; 9+ messages in thread
From: Vagrant Cascadian @ 2018-10-22 19:17 UTC (permalink / raw)
  To: Ludovic Courtès, Jan Nieuwenhuizen; +Cc: Guix-devel

On 2018-10-22, Ludovic Courtès wrote:
> On IRC earlier today Vagrant mentioned that the Pinebook AArch64 laptop
> (see <https://www.pine64.org/?page_id=3707>) should be able to run
> GuixSD when Linux-libre 4.19 and U-Boot 2018.11 are out, with 100% free
> software.  That may give another incentive to work on AArch64.

Looking like u-boot 2019.01 might be more likely, but modest patches
work with 2018.11-rc2. I'll probably bring the pinebook with me to the
Paris meetup in December... though with only 2GB of ram it might not
make the most exciting GuixSD system... :)

Very similar is the free open-source hardware Teres-I from olimex:

  https://www.olimex.com/Products/DIY-Laptop/

... Which is just a kit with all the parts you assemble yourself!


live well,
  vagrant

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: GuixSD on AArch64
  2018-10-22 19:17     ` GuixSD on AArch64 Vagrant Cascadian
@ 2018-10-24 13:01       ` Ludovic Courtès
  2018-12-12 10:36       ` Andreas Enge
  1 sibling, 0 replies; 9+ messages in thread
From: Ludovic Courtès @ 2018-10-24 13:01 UTC (permalink / raw)
  To: Vagrant Cascadian; +Cc: Guix-devel

Vagrant Cascadian <vagrant@debian.org> skribis:

> On 2018-10-22, Ludovic Courtès wrote:
>> On IRC earlier today Vagrant mentioned that the Pinebook AArch64 laptop
>> (see <https://www.pine64.org/?page_id=3707>) should be able to run
>> GuixSD when Linux-libre 4.19 and U-Boot 2018.11 are out, with 100% free
>> software.  That may give another incentive to work on AArch64.
>
> Looking like u-boot 2019.01 might be more likely, but modest patches
> work with 2018.11-rc2. I'll probably bring the pinebook with me to the
> Paris meetup in December... though with only 2GB of ram it might not
> make the most exciting GuixSD system... :)

Well, I know there’s still some way to go (in particular wrt. the Guile
compiler memory consumption), but we should aim to make Guix usable on
such systems.

> Very similar is the free open-source hardware Teres-I from olimex:
>
>   https://www.olimex.com/Products/DIY-Laptop/
>
> ... Which is just a kit with all the parts you assemble yourself!

Looks like a lot of fun!

Ludo’.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: GuixSD on AArch64
  2018-10-22 19:17     ` GuixSD on AArch64 Vagrant Cascadian
  2018-10-24 13:01       ` Ludovic Courtès
@ 2018-12-12 10:36       ` Andreas Enge
  2018-12-12 14:26         ` Vagrant Cascadian
  1 sibling, 1 reply; 9+ messages in thread
From: Andreas Enge @ 2018-12-12 10:36 UTC (permalink / raw)
  To: Vagrant Cascadian; +Cc: Guix-devel

Hello Vagrant,

On Mon, Oct 22, 2018 at 12:17:58PM -0700, Vagrant Cascadian wrote:
> Looking like u-boot 2019.01 might be more likely, but modest patches
> work with 2018.11-rc2. I'll probably bring the pinebook with me to the
> Paris meetup in December... though with only 2GB of ram it might not
> make the most exciting GuixSD system... :)

did you come to the meeting, and did you manage to install GuixSD
on your Pinebook?

Andreas

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: GuixSD on AArch64
  2018-12-12 10:36       ` Andreas Enge
@ 2018-12-12 14:26         ` Vagrant Cascadian
  0 siblings, 0 replies; 9+ messages in thread
From: Vagrant Cascadian @ 2018-12-12 14:26 UTC (permalink / raw)
  To: Andreas Enge; +Cc: Guix-devel

On 2018-12-12, Andreas Enge wrote:
> On Mon, Oct 22, 2018 at 12:17:58PM -0700, Vagrant Cascadian wrote:
>> Looking like u-boot 2019.01 might be more likely, but modest patches
>> work with 2018.11-rc2. I'll probably bring the pinebook with me to the
>> Paris meetup in December... though with only 2GB of ram it might not
>> make the most exciting GuixSD system... :)
>
> did you come to the meeting,

Yes! it was good fun.

> and did you manage to install GuixSD on your Pinebook?

Not yet... The substitutes were below 1% for aarch64 the last few weeks,
and only recently have started catching up. And building natively
was... astoundingly slow.

I did get the patched u-boot pinebook into Guix, and tested it
manually. I haven't yet checked current status of linux-libre on
aarch64, which might need some additional kernel configuration features
enabled compared to recent Debian kernel versions.


live well,
  vagrant

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2018-12-12 14:26 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-10-20 13:20 GuixSD on the SoftIron OverDrive 1000 (AArch64) Ludovic Courtès
2018-10-20 16:40 ` Jan Nieuwenhuizen
2018-10-22 12:29   ` Ludovic Courtès
2018-10-22 19:17     ` GuixSD on AArch64 Vagrant Cascadian
2018-10-24 13:01       ` Ludovic Courtès
2018-12-12 10:36       ` Andreas Enge
2018-12-12 14:26         ` Vagrant Cascadian
2018-10-20 18:29 ` GuixSD on the SoftIron OverDrive 1000 (AArch64) Efraim Flashner
2018-10-22 12:31   ` Ludovic Courtès

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).