zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
ky0ko has quit [Remote host closed the connection]
ky0ko has joined #nixos-aarch64
alp has quit [Ping timeout: 272 seconds]
<patagonicus>
misuzu++ Managed to build my system at the commit you gave me. Had to try a few times (mostly unrelated things, but bash-completion's tests still seem to be flaky).
<{^_^}>
misuzu's karma got increased to 5
ib07 has quit [Ping timeout: 260 seconds]
alp has joined #nixos-aarch64
__red__ has quit [Remote host closed the connection]
zupo has joined #nixos-aarch64
Darkmatter66_ has joined #nixos-aarch64
Darkmatter66 has quit [Ping timeout: 246 seconds]
<patagonicus>
Oh, fun. Now the other machines give me "Unexpected EOF" on nixos-rebuild boot. Haven't seen that one before.
<patagonicus>
Ah. Probably because they are still trying to use one machine as a remote builder that's offline. But that wouldn't be a great error message.
<patagonicus>
Hmm, no. Weird.
ib07 has joined #nixos-aarch64
alpernebbi has quit [Remote host closed the connection]
adisbladis has joined #nixos-aarch64
das_j has quit [Quit: killed]
ajs124 has joined #nixos-aarch64
das_j has joined #nixos-aarch64
ib07 has quit [Ping timeout: 256 seconds]
orivej has joined #nixos-aarch64
ib07 has joined #nixos-aarch64
orivej has quit [Ping timeout: 246 seconds]
ib07 has quit [Ping timeout: 272 seconds]
deadk has joined #nixos-aarch64
<das_j>
clever: Does the raspi foundation print the serial onto the board?
<das_j>
Probably no, right?
ib07 has joined #nixos-aarch64
ib07 has quit [Max SendQ exceeded]
ib07 has joined #nixos-aarch64
justanotheruser has joined #nixos-aarch64
<clever>
das_j: nope
<clever>
das_j: the serial# is randomly generated by the firmware, when it boots a special programming SD card
<das_j>
heck
zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<clever>
under normal conditions, going to a higher level (EL0->EL1) can only be done during an "exception" (syscall, hw irq, segfault)
<clever>
going to a lower level (EL1->EL0) is done with the "exception return" opcode (eret)
<clever>
when you go to a lower level, the bit-width can remain the same, or go smaller, but never bigger
<clever>
so a 32bit kernel cant run a 64bit userland
<clever>
the only way to go from 32bit->64bit, is to poke a higher power (EL2 or EL3), that is already in 64bit mode, and ask it to run something in 64bit for you
<gchristensen>
nice
<clever>
EL3 typically runs the firmware related to key management and DRM
<clever>
EL2 is the hypervisor, and it can add a 2nd level of paging tables, so EL1's "physical address" goes thru the MMU a second time
<clever>
EL1 is normal kernel space
<clever>
and EL0 is userland
<samueldr>
EL-1 is the javascript runtime
<samueldr>
(joking)
<clever>
samueldr: there is a dedicated opcode just for converting javascript floats back into 32bit ints, i'm not joking
<samueldr>
I know
<samueldr>
it matters because it needs to do the conversion "just like javascript does as implemented on x86_64"
<samueldr>
which is 1~4% improvement IIRC compared to the slow path
<clever>
gchristensen: in the case of something like an rpi, its possible to start EL3 in 32bit mode, there is no "higher power" to poke, so you are then permanently stuck in 32bit mode
orivej has quit [Ping timeout: 256 seconds]
orivej has joined #nixos-aarch64
<clever>
gchristensen: but to remain compatible with arm32 core's, from before EL's existed, you get the mess in the 1st image
<gchristensen>
make -j64 is nice.
<samueldr>
is this NixOS on armv7l again or something else?
<gchristensen>
yeah, nixos on armv7l
<samueldr>
nice
<gchristensen>
I need to be able to build for arm7l ( :( ) and so trying to resurrect it
<samueldr>
I feel that once we can get things evaluating / building, if we can make sure we have a machine that stays up to work through a limited subset of Nixpkgs the community can make it better
<samueldr>
the hardest part currently is probably build firepower
<samueldr>
having to build the world to fix one program isn't that nice :)
<gchristensen>
yeah
<gchristensen>
yeah.
<samueldr>
like, I think anyone could realistically run armv7l on their e.g. raspberry pi to fix _one_ thing... but getting to "running aarch32 NixOS on my pi" is not the easiest
<gchristensen>
+1
<gchristensen>
I'm starting with the armv7l expression in the packet-nix-builders repo
<srk>
I do run a bunch of armv7l rpis and one laptop. takes like a week to build from scratch (from cross compiled iso)
<samueldr>
yeah :) I don't have that patience
<samueldr>
if we get multiple contributors working on it, might it be relevant to make an armv7l branch on Nixpkgs that we can "stage" changes into a branch that changes less regularly? something that we could rebase / merge into master, etc?
<srk>
it went pretty well last time, only like one test failure
<gchristensen>
ideally we'd have a reliable arm7l builder for hydra too
<samueldr>
yeah
<samueldr>
I was assuming with such a builder
<samueldr>
not sure if there is any worth in what I was asking though
<samueldr>
maybe if things were woefully broken
<samueldr>
but srk seems to say it's not
<samueldr>
(and I didn't think it really was broken beyond belief)
<srk>
pi4 compute module cluster could work :D
<samueldr>
now that AArch32-capable big servers are identified, it might be less of an issue
<srk>
ah, true
<gchristensen>
I really, really, really don't want to be anywhere nearby to any quantity of rpis :P
<clever>
gchristensen: i'll make sure to bring 5 of em to the next nixcon :P
<gchristensen>
qemu-system-aarch64: can't apply global host-arm-cpu.aarch64=off: 'aarch64' feature cannot be disabled unless KVM is enabled and 32-bit EL1 is supported
<gchristensen>
seems like I get the system at EL2
<gchristensen>
so maybe that is saying the host just doesn't support 32bit EL1?
<gchristensen>
but [ 0.030443] CPU features: detected: 32-bit EL0 Support
monk has left #nixos-aarch64 ["Error from remote client"]
monk has joined #nixos-aarch64
<clever>
gchristensen: some arm chips have support for a 32bit userland, but no 32bit kernel
<clever>
so you must run a 64bit kernel with a 32bit userland
<gchristensen>
ah ha! I just found that on the opensuse docs