27 ms·
The State of Rust on Haiku
- dorfsmay 8y agoFor others who like me have a hard time keeping track of which OS is what... "Haiku is an open-source operating system that specifically targets personal computing. Inspired by the BeOS, Haiku is fast, simple to use, easy to learn and yet very powerful." From: https://www.haiku-os.org/ https://www.haiku-os.org/
- giancarlostoro 8y agoWikipedia gives a nice overview too: https://en.wikipedia.org/wiki/Haiku_(operating_system) https://en.wikipedia.org/wiki/Haiku_(operating_system)
- slantyyz 8y agoSerious question - does anyone use Haiku for anything more than playing? I was a huge BeOS fan back in the day, and bought the Intel version when I had a Pentium ][ computer. I was so excited for OpenBeOS (now Haiku) after BeOS got acquired, but it's been something 17 years, and it looks they're still just a release candidate for 1.0. Back then, BeOS did some amazing stuff compared to Windows, but technology has come a long way since then, and I'd rather be using MacOS, Windows or a Linux Desktop like Ubuntu than Haiku.
- AnIdiotOnTheNet 8y agoApparently a few of the devs use it full time. I've tried it out a few times, it's really very responsive, but it lacks a lot of useful software and hardware support. If you have the right hardware for it and a relatively limited set of application needs, it might work.
- kitsunesoba 8y agoRight now they’re focused mostly on parity with BeOS R5 in terms of features/capabilities. Once that goal has been reached, the focus will shift to making Haiku a proper modern OS and addition of new features in the spirit of BeOS. I suspect that it’ll become much more interesting to a wider variety of people after a release or two with the latter focus. The one thing that makes Haiku intriguing and promising in my eyes is the fact that its developers want it to be a first class desktop/laptop OS above all else with no server/mobile/other kitchen-sink-isms muddying the water. There’s nothing like that out there today, save for maybe macOS (which is more desktop focused but still suffers from the various multipurpose compromises brought from its *NIX heritage).
- michaelmrose 8y ago"no server/mobile/other kitchen-sink-isms muddying the water" I'm not convinced that at present this is a meaningful benefit especially compared to the increased resources available for say linux. The one good example that I can think of cpu schedulers seems to be solved by running a kernel with alternative patches.
- kitsunesoba 8y agoThe benefit would be the ability to cherry pick only the most desktop-beneficial features rooted in non-desktop domains while also leaving behind the rest. One example would be the window server and compositor — on Linux/BSD, these services, being desktop oriented on a multipurpose system, must be wholly decoupled from the rest of the system introducing a ton of opportunities for latency, stutter, and other issues to find their way into the user experience. It’s not impossible to minimize these issues, but it’s much more difficult. Haiku doesn’t have to worry about this problem at all. It can simply implement the most effective and good-experience-conducive end to end design possible for its window management and compositing since it’ll never ever be a headless server.
- mikepurvis 8y agoBut doesn't that mandatory separation of concerns lead to good system architecture? Microsoft lived without it for years and then finally did the job when they needed a Core OS to be shared between laptops, servers, phones, and Xbox— in the process they discovered and cleaned up all kinds of super weird interdependencies between components which should definitely not needed to be talking to each other.
- st3fan 8y agoPentium II Apple ][
- dleslie 8y agoI have it on a few older laptops that I keep around for traveling - I don't care if they're stolen, and I only need them for SSH and a browser. Haiku runs circles around Ubuntu MATE on these devices; it may seem equivalent on benchmarks, but the UI just _feels_ much zippier and apps load quickly.
- inferiorhuman 8y ago> Serious question - does anyone use Haiku for anything more than playing? Doubtful. After seeing a few Haiku posts over the past few days I downloaded it and gave it a try. There's a lot of promise, but it's pretty darn glitchy (e.g. DHCP client works occasionally, mail client sees mailboxes but doesn't fetch messages). I'm in the opposite camp though. I'd love to find a viable alternative to macOS.
- waddlesplash 8y agoThose two things plus the web browser are indeed the glitchiest parts of the system :) I've finally found a consistent way to reproduce the DHCP glitches, so I might be able to spend some time debugging that. The mail client is another issue; for now you're probably better off avoiding it. (There are third-party mail apps in the depot, so maybe try one of those?) Glad to hear you can see the potential, though! :)
- iforgotpassword 8y agoI see it too, but am honestly quite sceptical it'll get there in time. Development is just plain slow, which isn't surprising with the comparatively low number of devs. It feels half the man power is "wasted" on just keeping up with new hardware. By the time haiku is done, i fear desktop pcs and laptops will be extinct. I liked beos so I was really thrilled when openbeos popped up. I download the latest haiku build every other year or so, but it just feels they are all the same.
- waddlesplash 8y agoSome of us developers use it almost full-time (I don't quite yet, but I've finally gotten WiFi working on this PC so hopefully I will do so shortly), and there are users in the community that do also. TuneTracker (http://www.tunetrackersystems.com/index.html http://www.tunetrackersystems.com/index.html) ships commercial radio broadcasting systems that run on Haiku.
- navjack27 8y agoI'm waiting for Haiku to actually have a modern web browser and built in support for kaby lake refresh wifi. I want to use this on bare metal so bad.
- navjack27 8y agoYou can pretty much put all other applications support on hold. If you get modern web browsing that opens up so many web apps. WebPositive is a joke. Otter isn't quite stable.
- waddlesplash 8y ago> built in support for kaby lake refresh wifi What chipset is that? I just merged new drivers for the Intel PRO wireless chipsets and Intel "Dual Band" chipsets; so if it's one of those it might work out of the box now. > a modern web browser Well, WebPositive can play YouTube and mostly works on major sites ... but yes, this is a difficult problem.
- zlynx 8y agoThis article is about Rust and Haiku, so maybe Haiku should look into building a Servo GUI layer. Rust and Servo are already good for massive multithreading, so that should fit into the Haiku expectations pretty well.
- waddlesplash 8y agoServo seems to depend pretty heavily on hardware acceleration, which we don't have, so it probably wouldn't work too well. We don't have time to implement that; but someone else is certainly free to put the time in...
- duxup 8y agoThank you. Sometimes we get new Linux distributions (I know Haiku isn't that), a language I've kinda heard of, or something, and i'll go to their site... I still don't even know what I'm looking at.
- davidkuhta 8y agoAnecdote: Haiku also had a minor role in the infamous xkcd 'Tech Support' webcomic. https://xkcd.com/806/ https://xkcd.com/806/
- neduma 8y agoSome reasons i was thinking Rust in Heroku. Need coffee!!
- abhiminator 8y agoThis is exciting -- Rust has already shown great results through its implementation in Firefox (made me dump Chrome for Quantum)[0], so building a whole new operating system using the language makes perfect sense -- a great test bed for the language, imo. And given the fact that Haiku OS team's goal is to build a 'unified' and well-fused OS for personal use [1], using a single language should greatly help with reducing complexity and improving robustness. [0] https://hacks.mozilla.org/2017/11/entering-the-quantum-era-how-firefox-got-fast-again-and-where-its-going-to-get-faster/ https://hacks.mozilla.org/2017/11/entering-the-quantum-era-h... [1] https://www.haiku-os.org/about/faq#what-is-haiku https://www.haiku-os.org/about/faq#what-is-haiku
- qwna 8y ago"Technically it is too late for beta, too early for R3, but send a PR with your changes nevertheless..." https://github.com/ansuz/RIIR/issues/35 https://github.com/ansuz/RIIR/issues/35 https://transitiontech.ca/random/RIIR https://transitiontech.ca/random/RIIR
- AnIdiotOnTheNet 8y agoHaiku is written in C++, as are most of its utilities I imagine. I don't see them redoing all that effort for such trivial gain. They're just talking about tooling and language bindings for people developing applications for Haiku. You might be thinking of RedoxOS [0]? [0] https://www.redox-os.org/ https://www.redox-os.org/
- adamnemecek 8y agoI wonder if Haiku could become the foundation for a new os. Haiku but based on Rust. It would be a match made in heaven, Haiku's secret sauce is the asyncness of the API. This was doable in C++ however Rust and haiku are a wombo combo!
- drb91 8y agoYou’re basically describing Fuschia. I believe they have some of the main haiku kernel (probably a bad description) developers.
- adamnemecek 8y agoWhat language is the fuchsia api in?
- drb91 8y agoIIRC there are native rust bindings for syscalls. The syscalls themselves are implemented in C++. I have no idea about the user space, but my impression is that rust is a first level language for things like the ui. EDIT: it looks like they have interface generators for their APIs, which includes rust support as a first class citizen.
- Apocryphon 8y agoI've always wondered what BeOS would look like as a smartphone platform. Even from a UX standpoint, similar to the Windows 95 Mobile concept video.
- chipotle_coyote 8y agoIt would have looked a lot like PalmOS 6, a/k/a PalmOS Cobalt. Palm bought Be's assets -- and many of their engineers -- when the company failed, and built their next generation PalmOS around it. For reasons as much due to internal politics as anything technical, though, they never shipped any Cobalt-based phones.
- 8y ago
- Teeer 8y agoWhen a language no one uses meets an OS no one uses: top of HN.
- e12e 8y ago> Rustc memory usage on Linux is also high, but it never runs out of memory. I would like to figure out the cause of this issue. Strange. I hope this isn't simply a case of wildly over-committing memory and getting away with it on Linux. But then I guess the bsd folks would have is yes too?
- civilitty 8y agoI believe it is a result of changes described here (the post is about thinLTO but it explains parallel codegen after the TOML config example): https://internals.rust-lang.org/t/help-test-out-thinlto/6017 https://internals.rust-lang.org/t/help-test-out-thinlto/6017 In order to parallelize the build process at the rustc-llvm codegen boundary, Cargo has to implement some orchestration between compiler processes (using jobserver-rs [1]) so that 10 rustc processes didn't all create 10 threads and codegen units each and blow up the system. I'm guessing that memory quotas are a part of that implementation. [1] https://crates.io/crates/jobserver/reverse_dependencies https://crates.io/crates/jobserver/reverse_dependencies
- mastrsushi 8y agoThe state of (Anything) on Haiku.