Not being an official supported OS by Libre Computer, I’m using NetBSD to have a stable server
foundation I need for my own software deployments.
I wanted just to mention that it is possible to get this OS up and running with outstanding performance.
One of the NetBSD contributors made it work a while ago but somewhere in the middle, the images stop working and we removed advertise support since we cannot maintain it ourselves due to limited knowledge and bandwidth. It’s good to know that it works. If you have information on how to make a working system, we can take a look at help prepare official support guide.
Omg, after a few hours of derping around… I finally got a way to get NetBSD 10 working.
The process works like this:
- Download the NetBSD pre-built image for the Le Potato at pre-built image list page:
NetBSD Arm Bootable Images - Download the libre-computer device boot loader from this address:
https://boot.libre.computer/ci/aml-s905x-cc - Flash your sdcard with a command similar to this:
dd if=NetBSD-10-aarch64-202501142100Z-libretech-cc.img of=/dev/da2 conv=sync bs=1m status=progress - Then flash the SD with the boot loader using this
dd if=aml-s905x-cc of=/dev/da2 oflag=sync bs=512 seek=1 status=progress
And DONE
The micro SD card should boot.
Makes me super satisfied that NetBSD is working. This means that it wouldn’t be much of a jump to get something like FreeBSD working. And to be frank, I no longer wanted to use the Le Potato after I got tired of all the Linux stuff and wanted to move my skills/career more into a BSD world. But now that I can use NetBSD on this thing, I don’t have to give it away! The joy.
The NetBSD website directs a user to a supported list of devices at this place in the code:
aychttpgithub.c0m (trying to get my post allowed, remove the link limit, that’s dumb) /NetBSD/src/blob/netbsd-9/sys/arch/evbarm/conf/GENERIC64#L20
One can see that they have a line entry and some sort of descriptor file for the Le Potato in there.
I hope we can more easily expand support given there is a working sample right now with NetBSD latest stable release.
I’d be interested in trying to get more involved even though I have a 9-5 job. Just going to throw that out there.
It is worth a note plugging in a usb keyboard while running seems to force a reboot of the board.
Also, on NetBSD 10 the usb keyboard doesn’t seem to work. However, on NetBSD 9 it does.
So it is entirely possible to use NetBSD 9.
NetBSD 10 has ssh enabled, and you can try to log in, but the root login doesn’t seem to work due to the PAM stuff not seemingly accepting a blank password.
Also for NetBSD 9, after the disk resize on boot-up the super blocks will be inconsistent. So if you just ignore that and drop out of the single-user mode shell and let it boot. It works.
From there one can administer the system and try to do other things.
Thanks for the update. We will give it a try.
Yeah, on NetBSD 9, the basic system is functioning. You can start up the X Window system with ‘startx’ at the CLI.
Also the network is working, so I’ve started trying to install packages, and set up users and stuff. Only bummer is that NetBSD 10 seems to detect the eMMC card. However 9 does not.
After adjusting the default sshd config to allow for root login and empty passwords and etc, the ssh works. So one can remotely manage the system.
It appears that @Donald_Duck is right, you can run this as a small server basically. It’s just too bad that NetBSD 10 doesn’t seem to have the USB working right.
I’ll see if in the future I can compile a NetBSD 10 kernel with the right drivers and etc to get it to work. That’ll have to be a project for a few weekends from now.
Godspeed. Made a page here: NetBSD for Libre Computer
I think they offer an Le Potato image: NetBSD Arm Bootable Images
You should still flash our bootloader because our bootloader is simply better.
Hello bro.
I’m a FreeBSD user. Do you want to install FreeBSD on the “Renegade Elite ROC-RK3399-PC” ? If yes,I want to do the same. Do you want to collaborate ? thanks.
I don’t know anything yet about how FreeBSD does its booting process or system setup on SD Cards. I’d be down to look into it, but I’m a typical works 9-5 for a company so my progress to anything is slow. I bought a ROCKPro64 from Pine64 and have been playing with FreeBSD on it. That runs the same CPU for the most part.
Recently I discovered that Rockchip’s u-boot stuff basically should work for any RK3399 CPU based board and in theory I can NetBSD to run on any board with a RK3399 CPU since I understand quite a bit now about their disk structure layout and where they put their boot loader stuff. Now whether the board will have its peripheral functionality is another story…
There are a few people in the FreeBSD forums looking into this:
Worthwhile update: NetBSD is about to release the 11th release. I took a moment to see if it can run on Le Potato, it has the same problems as the 10th release had. I’d discovered there were some major changes in the DTB regarding describing the USB ports and that seemingly meant they weren’t being initialized correctly at boot with the NetBSD Kernel. Just got a follow up from a random NetBSD dev type about “USB bindings” and driver code. So it’s a mixture of needing to update NetBSD kernel drivers to work with the latest DTB changes.
It’s worth a note that if you can tolerate not having working USB, you can edit the NetBSD configuration on disk before booting to allow for SSH and remote access with root. In this way you can manipulate and use the system supposing you get your network setup in configuration before boot.
So it is possible to run NetBSD 11 on Le Potato, just very non-user friendly. But I will continue to work on it as this has been a pleasurable endeavor compared to normal day to day work.
And it looks like it’s settled.
NetBSD 9 works on Le Potato.
NetBSD 10, the DTB changed, and C driver code broke.
NetBSD 11, we’ve fixed it Making sure you're not a bot!
I’ve setup and tested it locally. The final NetBSD 11 release cut will have the code fix.
This makes it so NetBSD 11 will be the latest release where support for Le Potato is fixed, which likely fixed other things too for other devices.
Key points: One needs to use the pre-built image from the feed for le potato, since the disk structure is setup with a u-boot installed image. NetBSD Arm Bootable Images
Then as stated earlier, one flashes the libre computer u-boot loader stuff. (Note: the existing u-boot stuff in the netbsd image doesn’t seem to boot, thus why we overwrite it with the libre computer boot loader image.
Then the system boots and works. USB ports initializing and all.
Thanks to Nick Hudson, a NetBSD developer for knowing/finding/fixing the code so quickly.
Awesome news! Thanks for taking the time to report and help fix/test it.