| 24 Mar 2025 |
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 |
| Find me at aleksana:qaq.li 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 |
| Dr. Worm changed their profile picture. | 03:50:17 |
| @burntk:matrix.org left the room. | 07:00:42 |
misuzu |  Download 1000002138.jpg | 18:00:50 |
misuzu | In reply to @misuzu:matrix.org https://liliputing.com/orange-pi-rv2-is-a-single-board-pc-with-an-8-core-risc-v-processor/ Ordered one | 18:00:59 |
| Dr. Worm changed their profile picture. | 19:28:35 |
| 27 Mar 2025 |
implr | Anyone tried to build something without crosscompiling (so system=riscv64-linux; no crossSystem), via qemu-user or natively recently? | 20:40:33 |
implr | On current unstable, bison is failing doCheck for me, but it's in one of the bootstrap stages, so it's a huge pain in the ass to override | 20:40:58 |
implr | * On current unstable, bison is failing doInstallCheck for me, but it's in one of the bootstrap stages, so it's a huge pain in the ass to override | 20:42:42 |
Alex | NixOS compiled fine for commit 3a228057.
(See https://github.com/AlexandreTunstall/nixos-riscv/blob/6fc5181216631eaeec703fb09028b127c01d27a1/flake.lock#L9) | 20:42:47 |
Alex | So the regression has happened in the past month or so. | 20:43:11 |
implr | Let me double check if that commit works for me, maybe I did something dumb | 20:43:37 |
implr | hm, it does not, fails the same way | 23:13:52 |
implr | I'll try your flake as-is | 23:13:57 |
Alex | In reply to @implr:hackerspace.pl I'll try your flake as-is See the instructions in README. As-is, it requires some x86 cross-compilation for GHC (or you can edit out the Haskell dependencies). | 23:14:55 |
implr | I just want to see if the bootstrap builds, so I'm doing .#nixosConfigurations.nixos.pkgs.bash | 23:15:37 |
implr | if that passes it's already further than I got | 23:15:45 |