| 17 Mar 2025 |
Alex | Cross is impractical as soon as you try customising anything too, since that won't be in cache.
(I don't see how you could do "cross pkgs, native modules/configs" for a NixOS build.) | 21:47:44 |
Tristan Ross | In reply to @flx-:matrix.org What that be a reasonable option for the NixOS project to do? Wait for better hardware and software | 21:49:03 |
Tristan Ross | In reply to @alex:tunstall.xyz
Assuming that the package works in cross anyway.
Emulated is also fine, but there may still be a few bugs in QEMU's RISC-V implementation. Just a few months ago, someone found a build error only reproducible on emulated RISC-V. I've found that as well | 21:50:22 |
flx | I see. Well. | 21:51:53 |
flx | Thanks anyways :) | 21:52:37 |
Steven Keuchel | I got a milk-v megrez which seems surprisingly stable to me. What kernel do you run? | 22:01:39 |
Steven Keuchel | I'm using this https://github.com/rockos-riscv/rockos-kernel | 22:03:08 |
Tristan Ross | Ask Matthew Croughan lol | 22:04:36 |
Tristan Ross | It's his machine | 22:04:42 |
Tristan Ross | But I have remote build access | 22:04:51 |
| 19 Mar 2025 |
| Sergei Zimmerman (xokdvium) changed their display name from xokdvium to Sergei Zimmerman (xokdvium). | 21:12:14 |
| 24 Mar 2025 |
Kamilla 'ova | bugs in QEMU's RISC-V implementation
just use https://github.com/LekKit/RVVM :) it's jit is also faster than qemu tcg | 11:50:19 |
Kamilla 'ova | bugs in QEMU's RISC-V implementation
just use https://github.com/LekKit/RVVM :) its jit is also faster than qemu tcg | 11:51:10 |
Jake Hillion | How do you connect up RVVM with the build infra? I have the binfmt-misc stuff setup for doing builds on my EPYC machine (not much luck yet lol, needs some more work to get my VisionFive2 up and running), is RVVM the same deal or more of a standard VM setup? | 11:52:35 |
Kamilla 'ova | RVVM is mainly a full system emulator like virtualbox, but it also has (too much WIP, feel free to contribute!) rvvm-user
ofc it uses softmmu (which is slow), but there is some work on using hardware mmu (without kvm) via low-level mmu hacks, which are currently (experimentally) implemented for risc-v, but could also be implemented for x86 and arm, if you know (or know someone who knows) a lot about x86 ring0 assembly and mmu setup - feel free to help :) https://github.com/LekKit/RVVM?tab=readme-ov-file#%EF%B8%8F-support-the-project
https://github.com/LekKit/shadow_pgt | 12:10:37 |
Jake Hillion | Nice, thanks for the info! I'll have a go at setting up a VM on my EPYC machine tonight. Still getting started with RISC-V, and I want to initially get a good idea of what the bootstrapping experience is like when you combine emulation/small physical hardware like the VisionFive2. Already started having fun with packages that I previously couldn't build for armv7l either not building under QEMU emulation (mainly checks). I don't think I'm the ASM guy unfortunately, i'm a systems/bpf dev but nothing that low level. | 12:49:04 |
Jake Hillion | Do we have any experience so far with how well Nixpkgs takes changes like this for RISC-V?: https://github.com/NixOS/nixpkgs/blob/4d82b26c6a5da66d0c78407bff11562aa2118e89/pkgs/by-name/bo/boehmgc/package.nix#L64-L70 | 12:55:53 |
Kamilla 'ova | combine emulation/small physical hardware like the VisionFive2
what? canadian cross? | 13:06:19 |
Jake Hillion | Haha, worded that poorly. I mean I have a big x86_64 machine that can do emulation, and a small RISC-V machine that can do native builds. Hoping that between the two I can bootstrap properly. | 13:08:12 |
Steven Keuchel | you can cross-compile an sdcard first, and then do a native recompilation. I think it takes ~1w to natively compile a basic system on the VF2 only, 3-4days on the Premier / Megrez boards, and 1-2 days on the Pioneer. | 13:12:37 |
Steven Keuchel | qemu user mode emulation works for many packages and is ok performance wise. system emulation is comparable to the JH7110, so keep your expectations in check. | 13:14:51 |
Steven Keuchel | I had 8 VMs with 8 cores each running on a 64core threadripper at some point and it was a miserable experience :P | 13:15:37 |
Jake Hillion | Awesome, thank you! And hopefully last question for now, cross compiling the SD image comes from the instructions on https://wiki.nixos.org/wiki/NixOS_on_RISCV/VisionFive_2? I'm currently trying to bootstrap from their Debian but would be easier in NixOS. | 13:24:48 |
Steven Keuchel | did not know that wiki page existed. I started from https://github.com/NixOS/nixos-hardware/tree/master/starfive/visionfive/v2 but that seems to be the same thing | 13:26:44 |
Nick Cao | Shameless plug: I have vf2 sd image cached at https://hydra.nichi.co/job/nixos/riscv/visionfive2 | 13:27:11 |
Nick Cao | (I'm no longer sponsored to do this work so consider it a best effort thing) | 13:27:30 |
Nick Cao | src: https://github.com/NickCao/nixos-riscv | 13:28:10 |
| 25 Mar 2025 |
| aleksana (force me to bed after 18:00 UTC) changed their display name from aleksana (force me to bed after 18:00 UTC) to aleksana 🏳️⚧️ (force me to bed after 18:00 UTC). | 17:00:21 |
| 26 Mar 2025 |
| Li-ion changed their profile picture. | 03:50:17 |
| Sam O’nella left the room. | 07:00:42 |