Running osu!lazer on NetBSD 9.0 as a KVM guest [part 1?]
I tried, as an experiment/curious endeavour, to run osu!lazer (2020.717.0) on a NetBSD 9.0 QEMU/KVM guest, on my machine. Here's the results:
- Follow the Linux Emulation NetBSD guides, installing the linux compatibility packages (
suse_*
) was good enough to continue. - FUSE is not included by default, but thankfully, the AppImage gives instructions to extracting itself into a folder.
- An AppRun file exists in the folder. Trying to execute it would give “Failed to initialize CoreCLR, HRESULT: 0x80070008”. It is related to
ulimit -n
, the default is way lower than 2048 - Raise the file descriptor hard limit using
sysctl kern.maxfiles
, then bring up the hard limit (ulimit -Hn
), then bring up the soft limit (ulimit -Sn
). If I recall correctly, I bumped it up to 8000. - Some other failure happened while running AppRun, upon further inspection via ktrace/kdump, a
sched_setaffinity
syscall failed because of permissions. - Running it as root fixed that.
- A traceback appeared regarding ICU libraries not being found, even though I have them installed.
- You can edit
osu!.runtimeconfig.json
to disable that requirement. More here - osuTK kept talking about unsupported platforms. Upon further investigation, it was because no valid GPUs were found. A very cryptic error, for sure.
- In the end and some more discussion, we blamed the fact I was running NetBSD as a KVM guest as the culprit. virt-manager only provides QXL, VGA, and virtio, and virtio gpu drivers aren't on NetBSD 9.0.
Maybe I'll run NetBSD as a host on one of my machines and keep this experiment running. Until then, that's what I got.
To be continued..?