5 ms·
Hello HN, I'm the developer that has been hired. Happy to answer questions! Or you can go make a (tax-deductible) donation to Haiku, Inc. directly to support m
by waddlesplash 5y ago
Hello HN, I'm the developer that has been hired. Happy to answer questions!
Or you can go make a (tax-deductible) donation to Haiku, Inc. directly to support my contract: https://www.haiku-inc.org/donate/ https://www.haiku-inc.org/donate/
- cpach 5y agoKudos! What are the top three features that you like the most with Haiku?
- waddlesplash 5y agoThe single biggest thing for me is the unified system design and implementation. That is, it's not like Linux/BSD desktop environments where the kernel, display server, window manager, desktop shell, file manager, distribution ... are all developed by separate teams in separate code repositories with separate goals, schedules, standards, etc. In Haiku, you can change the UI toolkit, display server, and init system all in a single commit to one repository. This has a massive array of advantages. It means we never go back and forth about where responsibility for a bug lies, only where it should be fixed. It means we can decide to go with or against trends and standards as it makes sense to (our package manager is probably the biggest example of this.) Virtually everything else I like about Haiku stems from this, whether it's the timeless UI, the overall system architecture, or even the code itself (which is a genuine pleasure to just read, not something that one can often say about any project.)
- em-bee 5y agois there a roadmap? there is mention of R1 and R2. what are the goals for R1? any time estimates when R1 will be ready? what's in store for R2? there is discussion of multi user support for R2. what other interesting goals are there?
- dleslie 5y agoThe roadmap is actively updated here: https://dev.haiku-os.org/roadmap https://dev.haiku-os.org/roadmap
- waddlesplash 5y agoR1's original goal was "feature-complete replacement for BeOS R5". I think we have at this point achieved that, but we also have a vague goal of "usable, stable, daily-driver OS" which we are not quite there for (mostly on the stability and daily-driver front; there are users who use it as a daily driver, but in a limited fashion.) The Haiku kernel and CLI already supports multiple users, you can add them and SSH into them already. Permissions checks aren't quite there yet, and the GUI is totally non-multiuser-aware. It is a R2 requirement, but it could come sooner...
- dleslie 5y agoI want to start using Haiku _outside_ of a VM. What sort of hardware should I be looking at, considering mostly that I need stable WiFi available?
- waddlesplash 5y agoWe reuse FreeBSD's WiFi drivers (I assumed responsibility for that port some years ago), so most things that work on FreeBSD work on Haiku. FreeBSD has fallen behind a bit, so you may want to check model numbers carefully before buying something. Intel hardware of the "9200" series and anything before it generally works (though it may not have all features enabled.) Atheros hardware is the next best, with anything before the "Killer" series especially well supported. Slightly older ThinkPads tend to do very well. I have an E550 (from 2015) and a T60 (I dunno, 2009?) that are pretty great. My main machine is a custom Ryzen desktop where I carefully picked out hardware that I knew either was already supported or would soon be (e.g when I bought it, the NVMe driver was still in an unstable state and I had more work to do on it, but now it's pretty solid.)
- Klonoar 5y agoBut then I take it that means the wifi is relatively slow, no? FreeBSD IIRC lacks 802.11ac support still.
- waddlesplash 5y agoYou are correct, unfortunately. FreeBSD has one WiFi driver ("iwm", or on Haiku we call it "idualwifi7260") that supports 802.11ac hardware, and supposedly the 802.11 stack is ready for ac (there is an out-of-tree driver that crashes a lot but does get ac speed), but nobody added ac support to the "iwm" driver. Actually both my laptop and desktop use that driver, so who knows, maybe I'll poke at adding 802.11ac support to it one of these days.
- squarefoot 5y agoAre there any problems preventing the adaptation of Linux ac drivers, I mean are they technical or licensing etc?
- dharmatech 5y agoHello waddlesplash! C++ finally has modules as of C++20. Do you think there's any chance that the Haiku source code will be organized around modules instead of header files at some point?
- desi_ninja 5y agoI think they would prioritise basic issues first before refactoring the code
- waddlesplash 5y agoHonestly, I have no idea, because I have not even so much looked at what the actual implementation of modules is like in C++20 yet. Haiku uses almost none of the STL as it is, we write almost all our own containers and use C++ merely as "C with Classes" more than anything else. I think if we had sufficient time and energy, we might have started our own programming language that takes a lot from C++ but would diverge sharply after the "C with Classes" part (we have joked about it before, at least.) For one, some of the paradigms we use a lot in Haiku might serve well as baked-in language features, or could be taken further with compiler support. Memory safety is also another big one; I know Rust is now the "C++ successor with memory safety," but at least to me I think it does not quite fit the bill; though we have an especially esoteric view of what "C++" is (notably I haven't put in the time to really learn Rust, honestly, though some of the other Haiku contributors are fans, and the Rust port to Haiku is sufficiently solid at this point) The biggest thing I think we would ultimately change in any wildly hypothetical programming language we might come up with, though, would probably be ABI stability. C++ is just a huge pain to keep ABI-stable (C is as well, to a lesser extent), and there are all kinds of tricks that are clearly possible now in compilers, in ELF, etc. that there is clearly room for a slightly different language design coupled with a radically different language ABI to make ABI stability much less of a chore to maintain. (We are very big on dynamic linking and stable ABIs, something Rust seems to have basically given up on if it ever really tried, and the same in Go and other newer languages.) I would imagine that modules instead of headers might come about as some kind of development along with ABI stability if nothing else.
- 5y ago
- batch12 5y agoCongrats on the job It seems to be well deserved Good luck and have fun!
- em-bee 5y agohttps://dev.haiku-os.org/wiki/HardwareInfo https://dev.haiku-os.org/wiki/HardwareInfo lists a bunch of filesystems being supported. which one do you recommend for a dual boot system to share data with linux? i booted haiku on a linux laptop that is using btrfs and it wasn't able to mount the linux partitions. (mounted it as almost empty with some broken entries, so it looks like btrfs needs more work) i would expect that ext4 is most popular and thus more likely to be stable
- waddlesplash 5y agoLinux can at least read BFS, and Haiku can read at at least theoretically write ext4 but you may want to check the bugtracker to double-check that, I think the ext4 write support being fully functional is a recent development.
- em-bee 5y agogreat. as long as both OS can read the whole disk, i can make a usable dual-boot system. the worst irritation with dual-boot is having to reboot to access data that's on the other OS disk. but this way i can boot and test haiku without having to move all my data over