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 2015

Goal: $35,000
$7,637

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.

Icon Facts

News posted by stippi on Mon, 2006-11-06 22:19

With this article, I want to introduce you to some interesting facts about the new Icon format that Haiku is using. At first sight, they are just scalable vector icons, and Haiku is not the only operating system to have them. But the interesting bits are in the implementation details which should make Haiku stand out from the rest.

The first unique feature is that Haiku uses a special vector storage format, that has been specifically designed to store icons; we call it the Haiku Vector Icon Format, or HVIF for short. Haiku is not using the SVG format. Support for that is available through SVG import and export features in the Haiku icon editor "Icon-O-Matic". HVIF saves so much space, that icons are typically even smaller than the BeOS bitmap icons, which use 1280 bytes. The average Haiku vector icon uses about 500-700 bytes, with some icons slightly over 1000 bytes and some even below 250 bytes. This means that an icon stored as an attribute of a file will fit in the so-called small data region, which resides within the inode of the file. When Tracker reads information about a file to display it, its name, size, date and also the icon are all read within a single disk operation, when the files inode is fetched. Obviously, this is very beneficial for speed, since the hard disk remains one of the slowest components of a computer. The only performance hit is rendering the icons, which is fast compared to the disk operation. If Haiku were to use SVG icons, we would need at least one extra seek after fetching the inode (as the icon is too big to fit in there), and this would have a severe impact in performance. To put the size of the Haiku icons into perspective, Windows Vista icons can use around 80Kb, as they use PNG images to store an icon at different sizes. SVG icons in ZETA can be stored compressed, and use 2-10 KB.

Another unique feature of the new icon format is that rendering is done in a single pass, touching each pixel only once. Typically, vector shapes are rendered in multiple passes, on top of each other if they overlap. With the Haiku icons, the geometrical information of every shape is collected all at once, solving the problem of visible seams between shapes that can often be observed with traditional multi-pass rendering. This comes through new features in the Anti-Grain Geometry rendering library that Haiku uses already for its on-screen drawing. The way it is done in AGG is also more efficient than multi-pass rendering.

Most of the vector icon code sits in a static library called libicon that is linked into libbe. As of yet, the classes it contains are not intended for widespread usage, as the implementation might still change and improve. But there is a new class available called BIconUtils, similar to BTranslationUtils. The purpose of this class is to give unified access to icons, and for loading them into BBitmaps. It handles old BeOS icons and the new vector icons transparently. BNode, BNodeInfo, BAppFileInfo and BMimeType have all been adjusted to load and save icons through the BIconUtils class. There was a lot of code duplication before that too. The vector icons are loaded through the same API that was available before. For example BNodeInfo::GetIcon(BBitmap* bitmap, icon_size size). The size argument is unfortunately a bit redundant, since the bitmap, which the caller must preallocate, provides a size anyways. In BeOS, the bitmap size must match the icon_size given. In Haiku, which icon an application gets, is determined by the colorspace of the provided bitmap. If it is B_RGBA32 (in which case the bitmap may be of any size with the icon_size argument being ignored), the vector icon is preferred. If the bitmap is B_CMAP8, the old BeOS icon is preferred. If only one type of icon is available from a file, it will be put into the provided bitmap with the necessary conversion. Unfortunately, BeOS will return just a white bitmap if you pass a B_RGBA32 bitmap to the icon loading functions - without returning an error. This means you need to take a bit of extra effort to write applications that use truecolor vector icons when running on Haiku and BeOS icons otherwise. If BeOS returned an error, you could have simply tried to pass a 32 bit bitmap first, and if that fails try again with 8 bit. Bummer.

Best rated Stippi icon set by Stephan AssmusBest rated Stippi icon set by Stephan AssmusMost applications in the Haiku tree already support the new vector icons. But Tracker and Deskbar have not received any special icon code. They have just been adopted to use B_RGBA32 bitmaps instead of B_CMAP8 bitmaps, and most problems have been fixed related to drawing icons with alpha blending. Where Tracker reads icons from its own resources, it has been adopted to prefer flat vector icon data which it passes through BIconUtils. Other than that, Tracker and Deskbar use the normal system API available to any other application. So in that sense, the vector icons are completely integrated with the system and thoroughly implemented in all API classes dealing with icons.

As of yet, the work on HVIF is not 100% complete yet. There are a few bugs to iron out, and support has yet to be added to device drivers which return icons. The biggest chunk of work is designing all the other icons in the system. An icon design guide is also currently in the works, which will explain the artistic rules of Haiku icons. Another document will explain how to use Icon-O-Matic, which is at the moment in quite a rough state. Hopefully, both document will encourage other artists to help us complete the Haiku icon set.

Icon Contest: And the Best Rated Icon Set Award goes to...

News posted by koki on Fri, 2006-11-03 07:33
Stippi's Icon SetStippi's Icon Set

The community has spoken, and as project leader Michael Phipps recently announced at WalterCon 2006, we have a winner for the Best Rated Icon Set Award: the honor goes to Stephan Assmus, for his Stippi icon set. Stippi came in first place with the highest average rating, closely followed in second place by the Honey, Zumi and Mc Clintock icon sets.

With the results of the open rating in hand, there is now work left towards creating the final icon guidelines. We want to remind everyone that the rating was carried out as a means to give the community a chance to make their voice heard, and while you can expect to see a heavy influence from the best rated Stippi icon set, chances are that the final icon set to be used as the default in Haiku will also see an influence from the other submitted icon sets as well.

The overall quality of the submitted icon sets was superb. The valuable contributions from the talented authors of these icon sets will help make a great UI for Haiku, and for that we are endlessly grateful.

On a related note, we are also pleased to announce that Stephan has also implemented support for vector icons in OpenTracker, and his work is expected to be committed to the Haiku repository in the near future. Thanks for your great work Stephan!

My Experience at WalterCon 2006

News posted by leavengood on Thu, 2006-11-02 04:55

Since I live in South Florida I had to take the opportunity to attend WalterCon 2006 since it was only three hours away in Orlando. My involvement in Haiku has not been tremendous at this point, but it and BeOS have always had a special place in my heart. I hoped attending the conference would bring back some of my passion for developing on Haiku. I'm glad to report this was the case.

Friday, October 27, 2006

I drove up to Orlando Friday morning and since Michael Phipps was flying in early Friday afternoon I picked him up at the airport around 3 PM. We had some appetizers at a Thai restaurant and got to know each other a little better. We then drove to the hotel and checked in.

I must say I was really pleased with the hotel. The rooms were all suites with a living room, kitchen, bedroom with two double beds and of course a bathroom. Though most of us did not make much use of the kitchen, it was nice to have just in case something needed to be put in the refrigerator or warmed in the microwave. Every room had ethernet internet access, and we had wireless downstairs in the conference room and lobby. Unfortunately something about the DNS servers being used by the hotel caused problems on BeOS for name resolution, but my Windows XP (boo boo, hiss hiss) laptop worked fine. Other guys with Linux did not have a problem either. I'm sure the new Haiku netstack won't have this problem once it is fully operational.

Michael and I were the first people to arrive, so we got settled in our rooms and then Michael got his "Tupperware" BeOS box set up so he could test out Haiku Inc's new projector. Everything worked fine (except the internet as mentioned) and it was cool to see BeOS projected on the wall in a 5 foot square area. In what I considered a fascinating metaphor for BeOS and Haiku being small and efficient, Michael packed everything he needed for the weekend in three small pieces. The projector was in its own box, an LCD monitor box was recycled for the "Tupperware" computer, and then there was a very small carry on bag containing ALL the WalterCon t-shirts and Michael's own clothing for the weekend. Since I tend to over pack I was pretty impressed.

By about 7 PM five more attendees had arrived and congregated in Michael's room, 518. In order of arrival it was Mike Summers, Jonathan Thompson and his friend Ron, Alexander G. M. Smith, and Eric Carte. At this point we took Eric's infamous Hummer H3 and Ron's infamous yellow Neon to a nearby Mexican place called Chevy's for dinner. We all pigged out and then headed back to the hotel, where we all went our separate ways.

I spent some time by the pool and in the hot tub, then went back to my room, surfed the web a bit, then hit the sack. The beds were really comfortable so I slept well.

Saturday, October 28, 2006

I got up around 8 AM, took a shower then headed downstairs to the buffet breakfast. I was really impressed with the selection of food, especially the "make your own waffle" station, where you literally take some waffle batter and pour it into a hot waffle iron to make yourself a fresh waffle in about two minutes. Add some eggs, bacon, a biscuit, fruit, yogurt and orange juice and you have one heck of a breakfast. Yes I ate all that and needless to say my hunger was satisfied.

By now the rest of the attendees had arrived, including Bill Lawson (and his girlfriend), Gabe Yoder (DarkWyrm's brother), Rene Gollent (the author of Vision), and our special guest for the day, Jem Matzen from The Jem Report (whose story on WalterCon 2006 can be seen here.)

After breakfast we all congregated in the conference room, Michael got the equipment set up, and the conference officially kicked off around 9:30 AM when Michael gave his welcome speech. He gave us an overview of the latest updates on Haiku as well as plans for the future, and then we had the infamous t-shirt toss.

We then had some more discussion and took a break. After the break we watched DarkWyrm's "Haiku Rocks" video, which was cool and well done.

Soon after we headed to lunch at the same Thai restaurant that Michael and I ate at Friday. Since there were more people my car was enlisted to join the pool of WalterCon transport vehicles. In fact since I knew the way I took the lead driving the few miles to the restaurant. My dish was delicious and I think everyone else enjoyed their meals as well, even Michael with his "Fireman Hot" dish (though I had to wonder with all the sweating he was doing.)

After lunch we surprised Axel Dörfler by calling him up to make his presentation on writing Haiku drivers, which was scheduled for Sunday. Still he quickly stepped up to the plate and made a nice remote presentation with Michael helping him on this side by changing slides. This was a pretty technical presentation (which is fine by me) and I am now interested in writing a small driver or two so I can get more experience in this area. Axel's presentation will definitely give me a good head start.

Soon after Axel's presentation was complete Michael started reviewing his file which showed some of the ideas collected from the Glass Elevator list for new features in Haiku R2 and above. Some of these were pretty esoteric but many would be very useful and could help set Haiku apart from other desktop operating systems.

Michael also talked about how he doesn't like ports very much (which I agree with.) To quote him directly: "Ports are evil (though sometimes necessary.)" Though it may seem pointless to re-invent the wheel again and again, I think a native Haiku application will fit in the system better, use more native features, and would doubtless be easier to use given the UI of many open source applications which might be ported.

Around this time we got a surprise visit from an actual BeOS user, Jerry Ringewald. To make matters more interesting he is the brother of Erich Ringewald, former CTO of Be Inc. Apparently he lives on the East Coast of Florida and decided to come visit and while he was here get some technical help on BeOS. I didn't talk to him personally, but I believe Michael Phipps and a few others did. I'll let them comment further on Jerry.

After the talk about Haiku's future feature-set, Jem left and then the rest of us headed for dinner at Chili's. Our big party was split up into tables of four and seven (with me at the table of seven), so I can't say what was discussed at the table of four, but at my table I talked with Gabe, Rene, Bill and his girlfriend. Also in a rather low probability incident Bill, Gabe and myself all ordered the same hamburger, one right after the other. It was a good burger though and we all cleaned our plates. Great minds think alike.

After that Rene, Bill, his girlfriend and myself headed to "Marble Slab Creamery" for a late night ice cream snack. This is an interesting ice cream chain in Florida where you choose an ice cream base and then add in various candy and cookie choices which are mixed in with the ice cream on a very cold marble slab. I had "Birthday Cake" flavored ice cream with Snickers candy, which was tasty but one heck of a jaw workout chewing the semi-frozen Snickers pieces.

After that we headed back to the hotel, went to our rooms and called it a night.

Sunday, October 29, 2006

Today I got up bright and early at 7:30 AM, which actually ended up being 6:30 because of the removal of Daylight Savings Time here in the US. That extra hour of sleep would have been nice, but oh well, I was able to enjoy a long conversation at breakfast with Eric, Jonathan and Ron.

After breakfast I checked out, loaded my luggage in the car and then got to the conference room by about 9 AM. There was some general discussion and then Jonathan Thompson gave a talk about the C++ "Fragile Base Class" problem and his suggestion for how to fix it in Haiku R2. It was an interesting idea though I personally was not completely sold on the approach he was describing. Of course Jonathan has been programming in C++ for about 13 years whereas my C++ experience is minimal at best. But I was "born and raised" on object-oriented programming so I'm pretty well versed on that technology and its use in any language. I felt his approach was stepping back into a more C-style pseudo-OO approach that in my mind is not in the C++ style, especially what has been espoused by Bjarne Stroustrup in the last five years or so. But regardless it was an interesting idea and I think this problem definitely needs to be considered and possibly addressed in Haiku R2 to avoid future problems with API backwards compatibility.

We had a break and then Rene gave a very cool presentation about the media kit and adding media support to Haiku/BeOS applications. This was particularly interesting to me because I want to create a Haiku Media Center type application to scratch one of my own itches. So far this has been a "secret project" of mine which I have not told anyone about, but I talked about it some in the conference and got a lot of good feedback. There is definitely a need for a good, easy to use media center application, and Haiku/BeOS is the ideal platform for such a thing. For now I don't want to say too much about it because it is in the very preliminary stages, but the basic idea is an application which makes it very easy to manage and track the video files on your computer, with eventual PVR functionality and integration with other media applications such as SoundPlay, etc. I am also very eager to have excellent infrared remote control support in a separate but related application which will tie in with the media center application. So the idea of having a Haiku/BeOS media center computer in your entertainment center may soon be reality.

After Rene's talk we called an end to the formal WalterCon 2006 and headed off for our final group food outing, this time at Uno's Pizzeria. It was another good lunch and after dropping off my other passengers at the hotel I drove Rene to the airport and then went back to the hotel. Here I hung out with Michael, Alex and Mike S. for an hour or so before going with all of them to the local Outlet Mall. We walked around, had ice cream, I bought some fancy designer blue jeans on the cheap and then we left. Mike S. stayed behind to catch his bus back home, and after I dropped Michael and Alex at the hotel I start my drive back home.

And that was my experience at WalterCon 2006 (in excruciating detail, haha.)

Ryan Leavengood

WalterCon 2006 Report

News posted by koki on Tue, 2006-10-31 19:29

WalterCon 2006 was held this past weekend in Orlando, Florida, and for those who have been waiting to know what it was all about, the wait is over. Jem Matzan of The Jem Report was at WalterCon, and he has written an interesting article on the conference that gives an overview of the event, and also makes some insightful observations as someone new to the project and the platform.

Jem also recorded video footage of the State of Haiku address by Michael Phipps, and a few walk around interviews; the video is being edited, and is expected to become available for download shortly. Additionally, the WalterCon 2006 photo library already has a good number of photos and a few short video clips too, so head over and take a peek.

A promo video produced by DarWyrm titled "Haiku Rocks" was also shown for the first time at WalterCon. This two minute video shows Haiku in action, and is a nice means to showcase how far Haiku has come so far.

We want to thank all the attendees, the members of the community who helped make WalterCon happen, our sponsors, and to Jem Matzan for taking the time to attend and report on WalterCon. A special thank you goes to Michael Phipps, who did most of the work to make WalterCon a reality.

Networking Status Update

News posted by axeld on Sat, 2006-10-28 11:15

Work on the networking stack is making slow but steady progress. UDP and IPv4 protocols are mostly done, TCP can send out data, but receiving is not yet implemented.

Current work is concentrating on getting TCP ready, and to implement a network server. This server is responsible for configuring the stack when it's started, and to take over inetd services and similar things that can or even should live in userland.

Once the foundation is done, we're moving on to fill in some holes, like an UI for configuring the stack, and porting our existing PPP solution to the new stack. We hope to have something usable by the end of the year.

Haiku Lecture at Open Source Event in Brazil

News posted by koki on Sun, 2006-10-01 08:24

Under the sponsorship of Google, BFS Team lead engineer Bruno Albuquerque is scheduled to give a Haiku-related lecture at the upcoming Encontro Mineiro de Software Livre 2006 (Minas Gerais Open Source Forum 2006) to be held on October 10, 11 and 12 at the Ouro Preto City Convention Center. Titled "Haiku OS -- Challenges of Creating an Operating System", the lecture will introduce Haiku with a focus on the technical challenges and the motivations behind the creation of the project. The talk is scheduled for October 12 at 10:00 AM (auditorium #1).

Encontro Mineiro de Software Livre is an annual open source event with an estimated attendance of 500 people that gathers students, users, and developers, as well as private and public companies that offer open source software solutions.

Overview

Icon Contest: What's Next?

News posted by koki on Thu, 2006-09-28 05:51

September 23 was the last day of the rating period for the Haiku Icon Contest. We want to thank the authors of the great artistic work submitted to the contest, as well as those who took the time to rate the icons. Interest in the contest was very high, as reflected by the more than two thousand unique visitors that made their voice heard during the three week rating period.

We are now going to review the results of the rating, and also evaluate the feedback received from the community via the mailing list, in order to come up with the official Haiku Icon Guidelines. It is our intent to showcase the new Haiku icon set for the first time next month at WalterCon 2006, where we will also announce the winner of the Best Rated Icon Set Award. Stay tuned.

Syndicate content