Conversation
Notices
-
Embed this notice
Pete Wright (pete_wright@nlogic.systems)'s status on Wednesday, 25-Oct-2023 03:34:35 JST Pete Wright Honest question for the #rust developers out there. I've observed several pretty high profile OSS projects recently, which are written in rust but are *not* cross platform. Well at least as far as Unix is concerned, it's Linux or nothing.
This is super unfortunate, not only as a #BSD user it locks me out from using these tools...but it also introduces a pretty big blind spot in terms of development which can lead to fragile and/or insecure systems. The whole "monoculture is bad" thing.
So folks hacking on #rust - what do you feel is lacking that makes it easier to write portable code?- Haelwenn /элвэн/ :triskell: likes this.
-
Embed this notice
Pete Wright (pete_wright@nlogic.systems)'s status on Wednesday, 25-Oct-2023 03:35:18 JST Pete Wright @ianthetechie
Yea don't get me started on docker 😂
I've probably lost more jobs than I care to admit because I looked at the hoops companies were jumping through just to tick the docker (and k8s frankly) box and asking what benefit that complexity is giving them.feld likes this. -
Embed this notice
Ian Wagner 🦀 :freebsd: :osm: (ianthetechie@fosstodon.org)'s status on Wednesday, 25-Oct-2023 03:35:19 JST Ian Wagner 🦀 :freebsd: :osm: @pete_wright this is not really specific to Rust but of most modern development in general.
Ironically, Rust actually makes it easier than ever (IMHO) to write cross platform code. While FreeBSD isn’t a common target, it’s not hard to make most crates work on FreeBSD, but it seems there just isn’t the effort to pay attention to BSD differences vs Linux.
Which is very sad as I’m a huge fan and daily user of both Rust and FreeBSD.
-
Embed this notice
Ian Wagner 🦀 :freebsd: :osm: (ianthetechie@fosstodon.org)'s status on Wednesday, 25-Oct-2023 03:35:19 JST Ian Wagner 🦀 :freebsd: :osm: @pete_wright same applies to projects that seem to think distributing a docker image is a solution to a bad build system 🙃 but now I’m ranting haha.
I also think C etc is mostly written by old school hackers that appreciate these differences more. Not because they are better. They just have more experience and historical context. Most devs my age only know macOS and Linux. Windows in some cases. Anything else is obviously irrelevant…. Until you look deeper.
-
Embed this notice
Pete Wright (pete_wright@nlogic.systems)'s status on Wednesday, 25-Oct-2023 09:02:16 JST Pete Wright @penryu
this tracks, and to be fair i've had some interactions with rust projects where they were definitely on the PR's welcome side.
i've also had a few experiences where it was straight up "nope" - which again is *totally* fine, it is their project and they do things as they see fit. -
Embed this notice
feld (feld@bikeshed.party)'s status on Wednesday, 25-Oct-2023 09:02:16 JST feld @pete_wright @penryu who are these people like "nope I don't want my code to work on more computers"? -
Embed this notice
penryu (penryu@hachyderm.io)'s status on Wednesday, 25-Oct-2023 09:02:17 JST penryu @pete_wright A project at work decided to use the terminal app ztop internally to monitor ZFS activity on Linux.
We realized that it was a FreeBSD-only program, and even though they both used ZFS, FreeBSD exposes statistics via sysctl, while Linux uses procfs.
The author had insufficient resources and/or interest to port it himself, so the porting fell to me.
I guess that makes ztop an example of (1), (2) _AND_ (3), where (3) is "PRs welcome"
-
Embed this notice
penryu (penryu@hachyderm.io)'s status on Wednesday, 25-Oct-2023 09:02:18 JST penryu @pete_wright In my experience, there are two things that affect intra-POSIX cross-platform Rust:
1. Rust often interfaces with the system at a lower level where differences are more noticeable.
2. Simple lack of interest/demand. Often structural OS similarities aren't enough to mandate more time, or resources porting in either direction.
-
Embed this notice
Pete Wright (pete_wright@nlogic.systems)'s status on Wednesday, 25-Oct-2023 10:07:15 JST Pete Wright @encthenet
that is a great point and had forgotten about that. its another "unfortunate, but understandable" thing.
the last time i remember reading about that was in like 2016 or 2017 and it seemed to be mostly CI related...which again goes back to tooling that is awkward to be cross platform. wonder if thats still the case... -
Embed this notice
feld (feld@bikeshed.party)'s status on Wednesday, 25-Oct-2023 10:07:15 JST feld @pete_wright @encthenet idk if it's understandable. Do they want the language to succeed as a systems language or not? -
Embed this notice
John-Mark Gurney (encthenet@flyovercountry.social)'s status on Wednesday, 25-Oct-2023 10:07:16 JST John-Mark Gurney One problem is that rust doesn't support any BSD as a tier 1 platform.