Robbiedobbie has quit [Quit: ZNC 1.6.6 - http://znc.in]
Robbiedobbie has joined #nixos-aarch64
Robbiedobbie has quit [Client Quit]
Robbiedobbie has joined #nixos-aarch64
<Robbiedobbie>
So, I know this channel is for the Aarch64 version, but I saw that sometimes questions are asked related to armv6 or armv7 images for e.g. the raspi. For a project I'll have to create an sd image which will run both on the raspi zero (armv6) and raspi 3. Now I know that I won't ever be able to run aarch64 binaries because of the zero. However, it should be possible to run armv6 on the 3 (which is what
<Robbiedobbie>
raspbian does).
<Robbiedobbie>
Would it be possible to create a nix image that would run on both, just like raspbian?
<sphalerite>
Yeah, should be possible AFAIK
<sphalerite>
and yes this channel is used for all ARM stuff really, aarch64 is just the only properly supported arch for now
<sphalerite>
(and may well remain so)
<sphalerite>
I think the generic armv6 image should probably work on both. Haven't tried it though.
<Robbiedobbie>
I have, but that one won't boot on the raspi3, it will hang on the rainbow screen, flashing leds indicating a missing kernel
<Robbiedobbie>
From what I've found out, raspbian runs on the raspi2 and higher with a armv7 kernel and armv6 binaries otherwise
<Robbiedobbie>
So it would mean creating a special image containing a loader + kernel for armv6 and armv7 next to each other
<sphalerite>
that shouldn't be too hard in principle, but I don't know about practice
<Robbiedobbie>
And since my experience with nixos does not (yet) go that deep, I was wondering if someone has done this before, or how one would proceed
<sphalerite>
probably something based on nixpkgs/nixos/modules/installer/cd-dvd/sd-image-raspberrypi.nix
<Robbiedobbie>
Yeah I figured, but from what I've seen the firmware packages assert the platform for building to be the native one for the firmware, which means that they cannot be build on the same platform
<sphalerite>
Well what you can do for that is have one of each type and set one up as a remote builder forthe other
<sphalerite>
but that seems like quite a fuss
<Robbiedobbie>
hmmz, I'll look into that
<Dezgeg>
I am not sure if the armv6 kernel runs on the rpi2 or rpi3, at least raspbian builds a separate kernel for armv6 and armv7
<Dezgeg>
but it could be just for performance reasons as well
<Robbiedobbie>
the raspi 2 and 3 load the kernel from a different name on default, so I tried changing that manually, but the kernel would not boot. I suspect that it needs an armv7
<Dezgeg>
hmm, in mainline I see: ARM: bcm2835_defconfig: enable ARMv7 support
orivej has joined #nixos-aarch64
<Dezgeg>
so maybe it is possible to build a mainline kernel that works on all of the raspis
orivej has quit [Ping timeout: 240 seconds]
orivej has joined #nixos-aarch64
thefloweringash_ has quit [Quit: WeeChat 2.0]
<Robbiedobbie>
I was just checking the sd-image-raspberrypi.nix again, and it seems that the name of the uboot on each raspi version is different, so I might try to copy it by hand to try out if the armv6 kernel might run on raspberry pi 3 then :)