Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
A decidedly non-Linux distro walkthrough: Haiku R1/beta2 (arstechnica.com)
83 points by Tomte on June 29, 2020 | hide | past | favorite | 46 comments


(Haiku developer here.)

This review misses or misstates some pretty key details about Haiku:

* The statement that "Haiku's design diverges radically enough from modern standards to make application porting very difficult" is just plain false. Haiku is extremely POSIX compliant and we have ports of Qt (as you may have noticed from Otter), etc.

The reason there is no Firefox or Chromium is not due to any technical limitation of the OS itself, but purely because none of us devs know a lot about those codebases (which are larger than Haiku itself!) and want to put the time in. We would be happy to help others port them.

* The "OS crash" on YouTube is not really an OS crash but rather a window manager / display server crash, which is much more recoverable than an actual kernel panic. Yeah, we probably should have caught that one before the release, but somehow we did not...

* It's also not the case that we do not support "any USB network interfaces whatsoever"; as the screenshot you have shows, we don't support USB WiFi adapters. We do support USB ECM ethernet dongles, USB Pegasus, and at least some USB ASIX ones.


> Haiku is extremely POSIX compliant

I once needed help compiling software with an unusual build system, on Haiku. The fix was trivial and purely to the app's build system, and the Haiku devs were friendly and helpful. It was a very positive experience that I remember whenever seeing an article about Haiku. Just donated $25, keep up the good work!


Yeah, harping on the browser situation seems a bit unfair. Chromium is phenomenally complex, almost an operating system unto itself. It’s not like porting a text editor.

https://www.chromium.org/developers/design-documents/display...


Yes, and then there’s Emacs…


Or VSCode or Atom... built on top of Chromium...


Actually, Emacs would probably be easier to port, given that a large chunk of it is implemented in Emacs Lisp.


GNU Emacs contains over a quarter million lines of C.


Right, compared to the 4.8 million lines of C++ in Chromium...


Years ago I used Haiku as a "different but compatible enough that it was easy to target" test point for packages that I worked on.

It caught a few linuxisms that hadn't been caught by testing on *BSD, but wasn't a pain to target.


I've always been curious, is security something that's been thought of from the start or is this something you plan on tackling after it's "mature"?


It definitely was not thought of from the start, no.

We have already made significant improvements in the past few years in the security department, with NX bit (DEP), ASLR (including KASLR), W^X (kernel only for now), and SMAP/SMEP all now functional and enabled by default.

However, there is still a long way to go. Not all syscalls do correct access checking (I started an audit here but I haven't finished it yet) and the GUI runs as uid 0 (you can run CLI apps and sign in via SSH as other users, though.) Slowly but surely...


I'm actually impressed that you've made strides with it thus far, I'm really looking forward to start using it as a daily driver for my laptop!


I have nothing to say, besides thank you for your amazing job!

Projects like Haiku put fun back in computing.


Jims review on Ars was a bit unfair, considering the enormous difference in man power involved with the Haiku community and the commercial support most other OS’s have - there is a factor of at least x1000. Yet Haiku is brave enough to tackle an integrated system of its own. For instance, Web+ is a beta browser purposely built to target only Haiku, whose primary goal is to use native features. It would have been easier to port Firefox, there even was a port 15 years ago when it was still called Mozilla. But it was sluggish then, and a more native solution was suggested.

Although Web+ is young, thorny and buggy (now), with every iteration it gets better, more stable, and faster. And the core OS functionality benefits with improvements other apps can utilise. For instance, lots of blending modes were added to AppServer to support web standards, so every native app gets these features as well. The net classes improved, media streaming improved. The article mentions a crash with YouTube by a refactored memory paging off-by-one error, which has been fixed 3 weeks ago, and this bug fix benefits all apps. All software has bugs, they get fixed eventually.

There are benefits to Haiku which most casual observers don't register in their brief sessions. It requires a bit more “miles” before the benefits are discovered. It’s a young system with potential. It’s a beta of R1. There will be more revisions in the future, more iterations, more quality.

Unlike the nix distros which are an amalgamation of various independant components with duplicate integration channels, Haiku is building a tailored unified system. The end benefit will be noticeable in component integration and efficiency, which the heterogeneous nix systems will struggle to match. Haiku is targetting the front end user, not the invisible back end.


> Jims review on Ars was a bit unfair, considering the enormous difference in man power involved with the Haiku community and the commercial support most other OS’s have

I get that context matters, but if you're going to write a review about a desktop operating system, you should be comparing it to the other desktop OSes that are available so that readers have a point of reference.

> It’s a young system with potential. It’s a beta of R1.

To be fair, it's taken almost twenty years to get to the R1 beta. I've been following its development on and off since the demise of BeOS. I remember reading about all of the in-fighting from the early days of OpenBeOS, so I'm glad that they've made all the progress they have.

What they've produced is indeed admirable, but you can't ignore the fact that the technology world is in a very different place since they started this project.

When I look at Haiku today, it is like opening up a time capsule of a late 90's era operating systems.

Even when I had BeOS, I still had to dual boot with Windows due to the lack of broad application support. So as a somewhat interested observer/follower of the OS's development since the project began -- once I get past that feeling of nostalgia -- it's even hard for me to see the potential that you talking about.


Well, a more interesting review would address not only what doesn't work well and what you can't really use it for; but also what you can use it for.

In other words, yes, it's fair to say "don't use this for surfing the web or if you have an EVOO laptap". But ideally you would then suggest what you could use it for and how it works in those areas. I would have expected at least to understand the state of desktop productivity software, music playing, networking, hacking, playing games, printing, etc.

And given that a lot of readers (unlike yourself) will never have used BeOS or be that familiar with it, what's it like? If you read an email and someone sends you a PDF, do you save it and open it in a PDF reader? Does something else happen? Is any of it interesting in some way?


"Web surfing" might seem easy to dismiss, but look at the original iPhone. Sure, it had a nice form factor, etc., but the thing that made the iPhone a game changer was mobile Safari, a modern web browser. Remember when Apple's response to "hey there are no apps" was to use "web apps"?

Well, I tend to consider the bare minimum for any desktop OS to be viable is the ability to run a modern web browser (which would let you do your email, desktop productivity, music playing, games and PDF viewing).

Hell, I'd even go so far as to say that Haiku's next major milestone should be to get Firefox or Chromium to run on it. With a working modern browser, all of a sudden it's at least as functional as a Chromebook. Which means you might actually be able to use the OS as a daily driver in spite of its other shortcomings.


> With a working modern browser, all of a sudden it's at least as functional as a Chromebook. Which means you might actually be able to use the OS as a daily driver in spite of its other shortcomings.

I find it sad that the sentiment is that a computer without a modern web browser is not useful for daily work. And also that those browsers are massively complex and can only be practically developed by entrenched corporations with stable revenue streams.

What's frightening is that soon this might actually become true, if it wasn't before.

And at the same time I see Web+ and wonder when it will ever be standards compliant, much less stable, given the size of the team behind it.


> I find it sad that the sentiment is that a computer without a modern web browser is not useful for daily work.

Maybe, but when there is a dearth of application support like there is with Haiku OS, the role of the modern browser becomes that much more important.


Understood: I agree with you. I'm not dismissing web browsing as if it's of secondary importance; I'm just saying it's not the only important thing. I believe you when you say it's of overriding importance to you, and all you really need to know about an OS is whether you can have a standard web browsing experience.

But that's not everyone, especially among people who might want to read about a "new" OS. I do more things with computers, for both fun and work, than use a web browser. I'm interested not only in what web browsing is like, but also what it's like to hack on a program, or configure the OS, or get a piece of hardware working, or produce digital art, or play a game, or make a game.

I'm not saying the review is wrong; I'm saying it's incomplete. I'm pointing out that a better (more complete, fairer) review would answer not just the question of what users an OS is wrong for, but also at least tries to examine who it's right for.


> The article mentions a crash with YouTube by a refactored memory paging off-by-one error

The memory paging refactor is not in the beta, so those bugs are not related.

I think the WebPositive "system crash" (really a display server crash) is the AlphaMask reference-counting bug, which a fix was pushed for on the "master" channel but nobody has reported back that it is definitively fixed yet (but I also have not heard any reports that people still encounter it, so that's a good sign.)


> Jims review on Ars was a bit unfair, considering the enormous difference in man power involved with the Haiku community and the commercial support most other OS’s have

Does that really matter to the person who uses the end product though?

I agree that Haiku has had a lot of work put into it by dedicated people and is something of a marvel because it's a non-Linux FOSS desktop OS that is actually usable, but I don't see why that need be a consideration of a review.


You are right regarding most people taking the path of least resistance and supporting the established players, but these players have the market to lose and there are a category of people who will support a quality underdog. Haiku is far from perfect but I’m frustrated with the behaviour of commercial OS vendors and I’m personally not aligned with the “Linux” road map (even though I professionally recommend Linux for my employers embedded products, I eagerly wait for Haiku to replace it, and it eventually will).


I'm in more or less the same position (but am less excited by Haiku), but as much as I am willing to overlook a lot of shortcomings for something that works the way I want and isn't beholden to corporate bullshit and desktop-hostile philosophies, I can't expect the same from someone reviewing the thing.


What advantages do you see Haiku having in the embedded space over Linux?


It will never replace Linux on invisible devices, but on consumer facing devices with a screen (ie. car info systems, heck even possibly an Android competitor). First of all, there is no GPL, second its an integrated system with a single path from kernel to any component so makes customising easier, third the design emphasis is on latency not throughput (so great for GUI but not for file serving). If Haiku was available in 2004, Playstation 3 would be Haiku based (not FreeBSD based), and Android would have also been Haiku based. Google are working on Fuschia to replace Linux in Android, whose core development team are ex BeOS engineers who built the kernel Haiku is based on and there is talk of Fuschia adopting BeFS from Haiku.


I remember first reading about BeOS and the BeBox in some 1994-or-thereabouts edition of WIRED (which featured an interview with Jean-Louis Gassee).

I was utterly amazed by the screenshots of the GUI and the thought of a computer with “parallel processors”. The slogan “one processor per person is not enough” absolutely smote me and I was hooked. BeOS looked like everything nineties non-dismal utopianistic science fiction looked like and the BeBox with its dual RISC CPUs and “blinkenlights” on the front to display workload and a “GeekPort” on the back for attaching random hardware were at the very least very exotic machines with a lot of presence and that made quite a statement.

At the time I also had my first interactions with NeXTStep, and I’m pleased how things went (overall) but back at the time, it seemed like “not choosing Plan Be” was going to have disastrous consequences. How wrong I was...


> it seemed like “not choosing Plan Be” was going to have disastrous consequences

Can you even imagine what that alternate reality would be like?

Given how Be did not come with Steve Jobs, the entire tech landscape could have been very different, and Apple may not be the powerhouse that it is today.


The mistake here is probably to consider HaikuOS from a linux perspective. This OS is especially interesting because it's designed only for desktop computers (not servers, not phones, not toasters) with fully integrated components to develop native applications (Application Kit, Game Kit, Media Kit, ...).


Is it really a distro? Surely a distro is a collection of tools, applications, and a kernel that form an operating system.

Haiku is a single project operating system, so when they make a release it's not a distribution as such, is it?

We wouldn't call Windows 10 a Windows distro.


> We wouldn't call Windows 10 a Windows distro.

Actually, that's a kinda interesting question; I think what makes a distro is that it's a combination of components, right? So FreeBSD isn't a distro, it's one single thing. But GhostBSD is a distro, because it takes a base OS and bundles it with packages and tweaks to make it a nice GUI system. So does the existence of Windows LTSC and [Windows] Server Core (or even Nano) not imply that Windows is a distro? They all take the NT base OS, and pack on various components to build different versions of the "Windows" product family. Or is that more like adding sets to a BSD; just because you can include or exclude the X tarball doesn't make OpenBSD not a single system. Maybe the distinction is who's making it; Windows isn't a distro because it's all Microsoft's parts; a GNU/Linux distro, in contrast, is a patchwork of parts from different organizations.


Technically, all the BSDs are distributions. That's what the "D" in BSD stands for. Historically they were distros of UNIX.

Edit: typos


Technically yes that is in the name, but it's like a "cellphone" being a small computer that may or may not make phone calls; BSD was indeed a distro (or at least patchset) on top of Unix™, but modern BSDs aren't distros in that sense.


Haiku considers itself the one true distro of Haiku.

https://www.haiku-os.org/community/guidelines_creating_haiku...


Oh how I wish there were Windows distros


ReactOS[1]?

[1] https://reactos.org/


There are (not legal to be distributed publicly though) and you can make one yourself.


Jim Salter has been doing a series of Linux distro reviews, so the title ties into that, even if Haiku being a BeOS distro (or Haiku distro?) is a little questionable.


I like the BeOS interface in that it has a nice feel of polish and integration similar to MacOS.

Also it doesn't pretend your computer is a tablet. Even MacOS succumbed to that trend with version 11. In 10 years someone in Silicon Valley is going to rediscover classic mouse UI and sell it as something new and advances.


"Why doesn’t the tilde key work properly?

The tilde ~ key is a dead key, used to type characters like ñ."


Haiku is beautiful. I wish it gained more traction (so I could run it on bare metal and use it for all my daily tasks once) without changing its look-and-feel.

Can I download the Qt theme by the way? I want to style my KDE system like Haiku.


Nope, you can't, because the Qt theme actually uses Haiku's native control-drawing APIs under the hood, just like the Qt Windows theme uses.


> Much like TempleOS, it's not very directly useful

I thought this part of the review was a bit over the top. The author seems to conflate "useful to me" with "useful to anyone" throughout. And in service of such a position, some very black and white conclusions are reached.

Where utility is concerned, we live in a world where bullet journaling on paper is still very popular and also a relatively recent development. It's not exactly the same experience as your brand new tablet may offer, but it's not expected to be. Similarly, in my experience, Haiku was very directly useful, but I didn't go into the experience expecting to surf the Ars website or watch videos on YouTube. I used Haiku on a netbook, and it was a terrific, appropriate, and even tranquil, environment for writing, organizing, planning, and reading.

In short, I found that Haiku was useful and desirable for getting away--and this includes getting away from the exact conditions the author of this review was trying to equate with a minimum bar for a personal standard of utility.


> The next browser we tried, Otter, did a better job with Ars—but Otter failed to render video in either YouTube or Vimeo.

That's a smidge surprising, since Otter on Haiku x86-64 (on my laptop) does indeed render at least YouTube videos fine (I'm playing "Pamela" by Toto on it right now), albeit not as performantly as I'd have hoped (long time to load, and some stuttering at the start of every video).


The comparison with TempleOS was a real low blow and it makes me wonder if the reviewer is being entirely serious or just sees all operating systems not immediately useful to him to be a total waste of time.


I used Beos way back in 2001 as my main OS. Compared to linux it was more stable and used less resources. Great to se it still exists.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: