On Tue, 2023-03-21 at 00:34 +0100, Lionel Élie Mamane wrote: > Would an ARM-based machine be a good freedom-respecting computer to > run Debian on? I read the Raptor/Power guys saying modern ARM has > freedom problems in a, but I haven't seen them go into specifics.
It depends on what you mean by freedom-respecting. All of the major ARM SoC vendors now have libre GPU drivers (inc IMGTEC). There may be various minor drivers that aren't free though depending on devices. For example sometimes GPS on smartphones uses a proprietary daemon. Firmware on the other hand is a different matter and quite varied. For example, the RPi devices start the VideoCore GPU first, proprietary firmware then starts the ARM cores, then starts the ARM boot process. The LibreRPi folks are reverse engineering this firmware and maybe also the other cores on the SoC, which are all different ISAs. In addition there is some DRM but that turns out to be easily bypassed. https://github.com/librerpi/lk-overlay/ https://github.com/librerpi/rpi-open-firmware/blob/master/docs/cracking-rpi4-hmac.txt On lots of other devices (esp SBCs), the ARM core starts first and its bootrom loads libre bootloaders like u-boot, which load Linux. On other devices, especially laptops, use UEFI, which is usually a vendor fork of TianoCore EDK2, possibly not published. There are some devices that can run mainline libre edk2+edk2-platforms, but the latter is not available in Debian yet so you would need to package it. https://github.com/tianocore/edk2-platforms/ Outside boot firmware, most firmware will be proprietary on ARM, just as it is on x86 or any other platform except the ones where there have been intensive reverse engineering efforts like RaptorCS POWER devices. On mobile devices, look at PinePhone, Librem 5 or MNT Pocket Reform, other devices have less mainline Linux support or worse freedom issues. https://wiki.debian.org/Mobile On laptops, probably the Apple ARM devices are the fastest, but mainline Linux isn't yet suitable but is gaining ground quickly. I think there might be some blobs during the boot or something and the different page size for Apple ARM devices might be a challenge. Otherwise Lenovo and other vendors have some ARM laptops. Or there is the PineBook or MNT Reform for more esoteric devices. https://asahilinux.org/ Not sure about ARM desktops. ARM servers seem problematic, IIRC the arm64 ones Debian uses for buildds are unstable and the potential replacements are way too expensive. Not sure of the status here. > Will popular Debian software "generally work" There aren't many open bugs tagged as affecting ARM ports and most of them look like build related failures rather than not working. Probably folks don't bother to usertag their ARM-only bug reports though. https://udd.debian.org/cgi-bin/bts-usertags.cgi?user=debian-arm%40lists.debian.org https://wiki.debian.org/Teams/Debbugs/ArchitectureTags There are of course various build/test issues on ARM ports too. https://buildd.debian.org/status/architecture.php?a=arm64 https://udd.debian.org/cgi-bin/ftbfs.cgi?arch=arm64 https://ci.debian.net/status/failing/?arch[]=arm64 > I don't particularly want to get deep into being a porter Personally I think users of every non-amd64 port should consider doing porting work to keep their ports viable, since your personal package set might not be on the radar of vendors like ARM or other users. In case you do, we now have a document about the different ways to contribute to creating new ports (it applies to existing ports too). Some of the steps may be missing for existing ports, for example all of the ARM ports are missing a page based on the status template. https://wiki.debian.org/PortsDocs/New https://wiki.debian.org/PortTemplate -- bye, pabs https://wiki.debian.org/PaulWise
signature.asc
Description: This is a digitally signed message part