5 ms·
My first thought was that rust doesn't target as many platforms as FreeBSD (at least not well), but looking at https://www.freebsd.org/platforms/ https://www.fr
by yjftsjthsd-h 3y ago
My first thought was that rust doesn't target as many platforms as FreeBSD (at least not well), but looking at https://www.freebsd.org/platforms/ https://www.freebsd.org/platforms/ apparently the answer is that FreeBSD doesn't support many platforms anymore so I guess that's no longer a problem.
- loeg 3y agoYeah, but Rust tier 1 is only x86, x86_64, and arm64. And only Linux. That excludes MIPS, PPC, and arm32, all of which FreeBSD continues to support to varying degrees. x86_64-FreeBSD is a Rust tier 2 "it might work" target, as are arm6/7 and PPC. MIPS is Rust tier 3 "we don't build for it or test on it."
- vlovich123 3y agoSurely that's not set in stone right? Like FreeBSD could contribute money & resources to hook up CI machines to make it a tier 1 target?
- loeg 3y agoI don't believe FreeBSD has the money, resources, or (sufficient) interest as a project to do so for the foreseeable future.
- bluejekyll 3y agoMy understanding of the tiers of support is based on the level of commitment from the community. That is, if the FreeBSD folks wanted to make it a Tier 1 target, they can, “If running the testsuite requires additional infrastructure (such as physical systems running the target), the target maintainers must arrange to provide such resources to the Rust project, to the satisfaction and approval of the Rust infrastructure team.” — https://doc.rust-lang.org/nightly/rustc/target-tier-policy.html#tier-1-target-policy https://doc.rust-lang.org/nightly/rustc/target-tier-policy.h... This seems very much within the realm of the FreeBSD’s capabilities.
- loeg 3y agoI don't think FreeBSD has the resources (money/hardware/volunteer hours) or interest in providing that level of support.
- ijustlovemath 3y agoFrom that link, it looks like FreeBSD is beginning to phase out MIPS and PPC entirely, and 32-bit ARM is nearing phase-out. It seems entirely reasonable that over the next few years it takes to integrate a Rust core that the "blessed" architectures of both projects will be aligned
- midmagico 3y agoFreeBSD can't really be said to support native-hardware PPC. Also don't forget riscv. Which it also doesn't really support in native hardware.
- tialaramex 3y agoYou may have been thinking of NetBSD. NetBSD prides itself on a very broad platform support.
- midmagico 3y agoMaybe in the 1990s. Now, try getting it running even on a network edge platform like those from Netgate. NetBSD's hardware support is singularly unstable and unusable. Most new platforms port to Linux, commit drivers to the Linux kernel, and ignore the other platforms. The other platforms don't really seem to bother anymore, unfortunately. Things have bit-rotted to such an extent that FS will destroy large amounts of data and.. nobody seems to notice. Kernel panic reports are ignored. Debuggers fail to set functional breakpoints on native hardware. CPU quirks that need workaround to prevent panics are never committed. Meanwhile, developing this kind of expertise is about as far from the minds of younger experimenters and hackers now as baking cakes and permaculture gardening were from the 00s hardware hackers decades ago. Not only is it far from the minds of younger experimenters, but even attempting to develop it hits a hard wall of hardcore, draconian behavioural purists, secops fashionistas who deride essentially any burgeoning attempts at writing drivers, and language revolutionaries who rage extensively at people for writing any new code in any language but their own favourite. The situation is pretty harsh and it's likely not going to get any better anytime soon.
- yjftsjthsd-h 3y agoNo, I meant FreeBSD, though NetBSD is (much) further on the same spectrum. If I read that Darwin or NT were looking at using Rust, I'd figure that was easy enough; they more or less only target x86 and ARM, which are mostly well-covered by Rust. If NetBSD said they were moving to Rust... I dunno, I'd assume that either Rust had really changed their approach to platform support, or that NetBSD as I knew it had ceased to exist. OpenBSD is actually also on that far end of the spectrum, because they care even more about self-hosting, which means that the inability of rustc to actually run (or at least self-host) on 32-bit x86 is a hard blocker. FreeBSD is in the middle; I knew they don't intend to hit as many hardware platforms as their siblings, but I still thought they had broader coverage than rustc. And (per the page I linked) they used to, but as of the latest releases they've been really cutting down their targets. Which... I dunno, it's practical, but still sad. I guess there's at least still OpenBSD and NetBSD to cover portability.