Now with the help of mara I was able to get this to boot and “run”. However a lot of things on this system don’t make any sense to me and I can’t find any information about it either (trying to google search this system at best leads to the patreon page which ranks higher than the homepage itself )
So anyway I went with the irradium-3.7-riscv64-xfce-visionfive_2-6.6.16-build-20240210.img
image and it started up with the same errors mara showed in the example given (nice!).
Now to the issues I’m facing:
- none of the provided scripts like /boot/rebuild-initrd.sh or transfer-to-disk actually work
- since it is based on CRUX I tried to use their documentation for an initial setup which doesn’t work since the default scripts aren’t included
- the CRUX documentation on their own package manager is rather lackluster I think
So to dive into more detail:
/boot/rebuild-initrd.sh
This command fails with
# ./rebuild-initrd.sh
select kernel: 6.6.16
kernel: 6.6.16
select modules: ext4:xfs:btrfs
modules: ext4:xfs:btrfs
Started build uInitrd-6.6.16
Creating initrd.img-6.6.16...
WARNING: missing module ext4
modprobe: FATAL: Module xfs not found in directory /lib/modules/6.6.16
WARNING: missing module
WARNING: missing module btrfs
modinfo: ERROR: Module xfs not found.
cp: target '/tmp/initrd-work.qufhvJxZuM/lib/modules/6.6.16': No such file or directory
depmod: ERROR: could not open directory /tmp/initrd-work.qufhvJxZuM/lib/modules/6.6.16: Not a directory
depmod: FATAL: could not search modules: Not a directory
done.
./rebuild-initrd.sh: line 60: mkimage: command not found
so mkimage seems to be missing or isn’t configured in PATH? Hard to tell since the package management is still a mystery to me.
transfer-to-disk
Now this one has even more issues. First it tries to use the wrong device to transfer the data to. It tries to point to /dev/nvme0 while it should point to /dev/nvme0n1
Furthermore it also seems to expect a command msginfo iirc that isn’t present.
Also also, I simply tried to hardcode the device name into the script since all the regex went a bit over my head on a late evening which then kind of works, however it created a weird effect in the boot process in that it’d mount the SD cards /boot/ to load the kernel and then mount the nvme0n1 partitions for the rootfs (now that might have been purely on me though ^^')
Package Management
as I’ve said I did go through the CRUX documentation on their package management and while the repo layout is simple enough CRUX itself seems to use a setup script to guide the user through the initial setup. Furthermore they seem to expect to have a “full distribution” on a removeable media much like old days Slackware did which obviously isn’t present here since we’re missing a couple of tools.
They also don’t spend a minute to explain if this package management system is able to pull from remote mirrors which I’d hope since trying to keep their own stuff + a whole ports repository on an SBC sounds like a rather impossible task. (I suspect ports here is like pkgsrc on netbsd? Sounds like it at least).
Now I hope I’m not too annoying, but this is the first time ever I’ve been completely lost in a Linux System compared to just a little bit lost when things I didn’t think about happen
Greets,
DesRoin