Haiku is a new 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.

Fundraising 2014

Goal: $35,000
  $13,754

WHAT'S NEW IN HAIKU DEVELOPMENT

The Haiku source is continually built and released for testing purposes nearly every day. You can download and install these latest snapshots to check out the latest features and bug-fixes.

Be aware that nightly images may be unstable. Additionally, some packages included with official releases need to be installed separately.

If you're OK with this, you can find further instructions at our Nightly image page.

Haiku is looking for Web Developers

News posted on Sat, 2012-12-22 21:28

The Haiku project is supported by various websites and web services, such as the main website, the development tracker and the translation tools. For all these services we have various short and long term goals and objectives, and we are looking for help to realize our plans.

Helping out means that you are contributing to the continued development of Haiku! We are looking for people with Drupal/PHP skills and people with Python experience.

Haiku Amongst 10 Open-source Organizations To Participate in Google Code-In 2012

News posted on Sun, 2012-11-25 21:16

What is Google Code-in ?

GCI is a contest for pre-university students (from 13 to 17 years old) with the goal to encourage young students to participate into open-source development. To achieve that goal, open-source organizations sets up various tasks and students are invited to claim them. Various prizes are awarded and, this year, each organizations are going to award two (2) grand prize winners amongst participating students.

When does the contest start ?

Students can starts claiming tasks on Monday, November 26 2012 at 9:00 AM PST / 17:00 UTC, to end on Monday, January 13th at 9:00 AM PST / 17:00 UTC.

What kind of tasks are available ?

A Task is a small amount of work, suitable for a 13 to 17 years old student, and should take approximately 2 hours to complete to the average participant. There are 5 categories of tasks :

  1. Code: Tasks related to writing or refactoring code
  2. Documentation/Training: Tasks related to creating/editing documents and helping others learn more
  3. Outreach/Research: Tasks related to community management, outreach/marketing, or studying problems and recommending solutions
  4. Quality Assurance: Tasks related to testing and ensuring code is of high quality.
  5. User Interface: Tasks related to user experience research or user interface design and interaction

Where do I sign-up ?

For more details about the program itself, and to register, please consult the contest's homepage :
http://www.google-melange.com/gci/homepage/google/gci2012

Haiku Release 1 Alpha 4.1

News posted on Wed, 2012-11-14 15:45

Due to the immediate testing efforts of HAIKU Release 1 Alpha 4, several critical bugs were detected by testers and reported on our bug tracker. On several hardware configurations, those issues prevented Haiku from booting properly. Since then, those bugs have been squashed and are resolved in this bugfix update, R1 Alpha 4.1.

There are two general issues fixed by this point release:

  • Deskbar can freeze at boot-up on read-only media.
    Issue: Potential kernel level deadlocking issue in the network stack.
    Solution: The cause of the deadlock was found and corrected.
    Change: hrevr1alpha4-44701
  • Users can see a kernel crash at boot-up on read-only media.
    Issue: Normalization never occurring on module image paths due to a bug in the hash table.
    Solution: Hash table code was fixed preventing duplicate module images from loading.
    Change: hrevr1alpha4-44700

We have replaced the R1A4 files on the website with R1A4.1 files to ensure these issues are thoroughly corrected. The archives are named "haiku-r1alpha4.1-*" and the image files contained within retain the "haiku-r1alpha4*" nomenclature.

If you have already installed R1A4, we recommend updating to R1A4.1. Thank you all for testing and supporting Haiku!

Haiku Release 1 Alpha 4

News posted on Mon, 2012-11-12 05:00
Haiku R1 Alpha 4 CD

The Haiku Project is excited to announce the availability of our fourth official alpha release. A year and four months have passed since the Alpha 3 and the Haiku Project has been busy. The main purpose of this release is to provide interested third party developers with a stable version for testing and development. To aid with that, Haiku includes a rich set of development tools.

Update: Contracts for Package Management

Blog post by mmadia on Sun, 2012-11-11 14:31

As you may recall during August, Ingo Weinhold and Oliver Tappe were each accepted for two-month development contracts relating to package management[1]. Originally, their start dates were slated for sometime around November or December. Due to their current contractual obligations with other employers, they will not be able to begin as early as planned. The revised start date is now around February or March.

Code Sprint 2012: Debugger

Blog post by anevilyak on Sat, 2012-11-10 14:44
As seen in Ingo's excellent presentation on Haiku's built-in debugging tools, our graphical debugger, while getting quite capable, is still missing a number of important features. As such, I made it my goal this week to try and resolve as many of those as I was able to.

ARM progress!

Blog post by ithamar on Fri, 2012-11-09 19:04

The ARM is moving

After porting the basic VM code from X86 to our ARM port, it has been pretty much 2 years since I worked on it. Last weekend, BeGeistert 026, gave me a chance to work on it again, for a couple of days (nights?) in a row, and I tried to make the most of it.

Besides working on Haiku/ARM it was great to meet up with many of the people I already knew but had not seen for a long time, as well as finally meet the new people behind the names and posts I had followed over recent times.

Anyway, with much help from the people around me I was able to bring Haiku/ARM to the point where it now boots, lights up a couple of icons, and then fails to boot as the boot disk is not found. This means that scheduling, interrupts, and basic vm operations all work!

However, in the process of getting it that far in fairly limited time I had to make a couple of shortcuts that really need to be cleaned up before trying to bring up userland, and see Tracker/Deskbar appear ;)

Hardware Variation

One of the obvious ones is the problem that currently, the kernel will only run so far on the Verdex (Gumstick) target. This is due to the fact that things like timers and interrupts are handled differently between different System-On-Chips. This means that even at this very low level, we'll need to introduce some type of abstraction to be able to run on more then just the Verdex/PXA270 SoC.

As people reading the commit list might have noticed, Francois has commited basic code to support Flattened Device Tree (FDT). This is a way of describing full hardware layout, in a standardized format. This format has been used by OpenFirmware implementations, like the PowerPC machines from Apple, the DEC Alpha machines, and many more.

FDT is becoming mandatory for Linux support on ARM as well, which means there are more and more of these board description files available for hardware we want to run on. The intent therefore is to implement FDT support, making it (theoratically) possible to support newer hardware with only a new FDT file, but also being able to build a single kernel that can run on any ARM device, assuming the necessary drivers are available ofcourse.

If I can find the time, I'll write up a post about FDT, if Francois does not beat me to it ;) In docs/develop/ports/arm/urls.txt Francois was so kind to store an extensive list of URLs about FDT, so feel free to browse if you are interested in helping out.

Where's that page?

Another thing that needs work is the ARM VM implementation. Currently, all it really does, is the page table bookkeeping, but permissions are not handled, memory/caching types are not handled, not to mention that ARMv6 and ARMv7 support will need more work as well. My idea is to finish the VM for ARMv5 first, and then implement v6 and v7 support in a proper OO manner, by making subclasses of the base ARM VM classes.

ARMv5 has no builtin support of tracking page status bits that our VM expects (dirty/accessed), so we'll have to work around that. However, ARMv7 (and some ARMv6) do have that, so there's a fair amount of work to do.

Drivers and Busses

No I'm not talking of public transport here :P For a properly usable embedded ARM target, there's a lot of things besides the kernel proper that will need implementing. There's SPI and I2C controllers to support, there's storage like raw NAND, or MMC/SD to support, many things that aren't support as of yet in Haiku for other architectures.

Some of these will present new features for our non-ARM targets too (SD/MMC support will make Laptop users happy, I imagine), but quite few will not but will be critical to get a seriously usable system on ARM devices...

Where to go from here?

As the current target is a QEMU supported platform, anyone who wants to can join in and help out. I invite anyone interested in helping out with Haiku/ARM to follow the guide for compiling for ARM and start poking at the code. I tend to have very little time in general, payed work taking up the most of my time, so don't just wait for me to complete the port!

However, feel free to contact me with questions/flames/anything if you want, as I'll try and help out as much as I can, there's nothing I want more then for this port to reach completion!

Syndicate content