Jump to content

Haiku (operating system)

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 85.64.76.29 (talk) at 01:14, 3 February 2023 (Release history: Corrected mentions of 32-bit x86 from "x86" (family of ISAs) to "IA-32".). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Haiku
DeveloperHaiku, Inc.
OS familyBeOS
Working stateBeta
Source modelOpen source
Initial release2002; 22 years ago (2002)
Latest previewR1 Beta 4 / 23 December 2022; 23 months ago (2022-12-23)[1]
Repositorygit.haiku-os.org/haiku/
Marketing targetPersonal computer (desktop user)
Available inMultilingual
Update methodSoftware Updater and pkgman
Package managerhpkg
PlatformsIA-32, x86-64[2][3]
Kernel typeHybrid
Default
user interface
OpenTracker
LicenseMIT License and Be Sample Code License
Official websitewww.haiku-os.org

Haiku is a free and open-source operating system application level compatible with the discontinued BeOS. Its development began in 2001, and the operating system became self-hosting in 2008.[4] The first alpha release was made in September 2009, and the last was November 2012; the first beta was released in September 2018, followed by beta 2 in June 2020, beta 3 in July 2021. The fourth beta was released on December 23, 2022, still keeping BeOS 5 compatibility in its x86 32-bit images, with much increased number of modern drivers, GTK3 apps and Wine ported, as well as Xlib (X11) and Wayland compatibility layers.[5]

Haiku is supported by Haiku, Inc., a non-profit organization based in Rochester, New York, United States, founded in 2003 by former project leader Michael Phipps.[6] In the recent release cycle, Haiku, Inc. employed a developer.[5]

History

Haiku began as the OpenBeOS project in 2001, the same year that Be, Inc. was bought by Palm, Inc. and BeOS development was discontinued. The focus of the project was to support the BeOS user community by creating an open-source, backward-compatible replacement for BeOS. The first project by OpenBeOS was a community-created "stop-gap" update for BeOS 5.0.3 in 2002.

Branding and style

In 2003, the non-profit organization Haiku, Inc. was registered in Rochester, New York, to financially support development, and in 2004, after a notification of infringement of Palm's trademark of the BeOS name was sent to OpenBeOS, the project was renamed Haiku. Original logo was designed by Stuart McCoy (nick "stubear") who was apparently heavily involved in the early days of the Haiku Usability & Design Team, and created mockups for Haiku R2.[7] Haiku developer and artist Stephan Assmus (nick "Stippi"), who co-developed graphic editing software WonderBrush for Haiku, updated it and developed the HVIF icon vector format used by Haiku, as well as Haiku icon set chosen by popular vote in a contest in 2007.[8]

Milestones

Haiku reached its first milestone in September 2009 with the release of Haiku R1/Alpha 1. In November 2012, R1/Alpha 4.1 was released while work continued on nightly builds.[9] After years in between official releases, Haiku R1/Beta 1 was released on 19 September 2018,[10] followed by Haiku R1/Beta 2 on 9 June 2020.[11] Haiku's latest release, R1/Beta 3, was released on 26 July 2021.[12]

In between official releases, 'Nightly' builds (mainly meant for developer testing) are regularly listed on the Haiku Nightly page in both 64-bit and 32-bit (x86) editions.[13]

Beyond R1

After the initial full BeOS 5 compatibility as target, in 2009 community decision updated the vision for R1 with more ambitious support for modern hardware, web standards and compatibility with FLOSS libraries.[14]

Initial planning for R2 has started through the "Glass Elevator" project (a reference to the children's novel Charlie and the Great Glass Elevator). The only detail confirmed so far is that it will switch to a current GCC release.

A compatibility layer is planned that will allow applications developed for Haiku R1 to run on Haiku R2 and later. This was mentioned in a discussion on the Haiku mailing list by one of the lead developers, Axel Dörfler. Suggested new features include file indexing on par with Unix's Beagle, Google Desktop and macOS's Spotlight, greater integration of scalable vector graphics into the desktop, proper support for multiple users, and additional kits.[15]

Release history

Current release
Version Release date OS name Architecture
Haiku R1/Alpha1 September 14, 2009 hrev33109 IA-32
Haiku R1/Alpha2 May 10, 2010 hrev36769
Haiku R1/Alpha3 June 20, 2011 hrev42211
Haiku R1/Alpha4 November 11, 2012 hrev44702 IA-32, X86-64
Haiku R1/Beta1 September 28, 2018 hrev52295
Haiku R1/Beta2 June 9, 2020 [16] hrev54154
Haiku R1/Beta3 July 26, 2021 [17] hrev55182
Haiku R1/Beta4 December 23, 2022 [18] hrev56578

Technology

Haiku is written in C++ and provides an object-oriented API.

The modular design[19] of BeOS allowed individual components of Haiku to initially be developed in teams in relative isolation, in many cases developing them as replacements for the BeOS components prior to the completion of other parts of the operating system. The original teams developing these components, including both servers and APIs (collectively known in Haiku as "kits"), included:

  • App/Interface: develops the Interface, App and Support kits.
  • BFS: develops the Be File System, which is mostly complete with the resulting OpenBFS.
  • Game: develops the Game Kit and its APIs.
  • Input Server: the server that handles input devices, such as keyboards and mice, and how they communicate with other parts of the system.
  • Kernel: develops the kernel, the core of the operating system.
  • Media: develops the audio server and related APIs.
  • MIDI: implements the MIDI protocol.
  • Network: writes drivers for network devices and APIs relating to networking.
  • OpenGL: develops OpenGL support.
  • Preferences: recreates the preferences suite.
  • Printing: works on the print servers and drivers for printers.
  • Screen Saver: implements screen saver function.
  • Storage: develops the storage kit and drivers for required filesystems.
  • DataTranslations: recreates the reading/writing/conversion modules for the different file formats and data types.

A few kits have been deemed feature complete and the rest are in various stages of development.

The Haiku kernel is a modular hybrid kernel which began as a fork of NewOS,[20] a modular monokernel written by former Be Inc. engineer Travis Geiselbrecht. Like the rest of the system, it is currently still under heavy development. Many features have been implemented, including a virtual file system (VFS) layer and symmetric multiprocessing (SMP) support.

Package management

As of September 2013, Haiku includes a package management system called "Haiku Depot", enabling software to be compiled into dependency-tracking compressed packages.[21] Packages can also be activated by installing them from remote repositories with pkgman, or dropping them over a special packages directory. Haiku package management mounts activated packages over a read-only system directory. The Haiku package management system performs dependency solving with libsolv from the openSUSE project.[22]

Compatibility with BeOS

Haiku R1 aims to be compatible with BeOS at both the source and binary level, allowing software written and compiled for BeOS to be compiled and run without modification on Haiku. This provides Haiku users with an instant library of applications to choose from (even programs whose developers are no longer in business or have no interest in updating them), in addition to allowing development of applications to resume from where they had been terminated following the demise of Be, Inc.

This dedication to compatibility has its drawbacks though — requiring Haiku to use a forked version of the GCC compiler, based on version 2.95, released in 2001, which is now 23 years old.[23] Switching to the newer version 7 of GCC breaks compatibility with BeOS software; therefore Haiku supports being built as a hybrid GCC7/GCC2 environment.[24] This allows the system to run both GCC version 2 and version 7 binaries at the same time. The changes done to GCC 2.95 for Haiku include wide characters support and backport of fixes from GCC 3 and later.[25]

This compatibility applies to 32-bit x86 systems only. The PowerPC version of BeOS R5 is not supported. As a consequence, the ARM, 68k, 64-bit x86 and PPC ports of Haiku use only the GCC version 7 compiler.[26]

Despite these attempts, compatibility with a number of system add-ons that use private APIs will not be implemented. These include additional filesystem drivers and media codec add-ons, although the only affected add-ons for BeOS R5 not easily re-implemented are those for Indeo 5 media decoders, for which no specification exists.

R5 binary applications that run successfully under Haiku (as of May 2006) include: Opera, Firefox, NetPositive, Quake II, Quake III, SeaMonkey, Vision and VLC.

Driver compatibility is incomplete, and unlikely to cover all kinds of BeOS drivers. 2D graphics drivers in general work exactly the same as on R5, as do network drivers. Moreover, Haiku offers a source-level FreeBSD network driver compatibility layer, which means that it can support any network hardware that will work on FreeBSD. Audio drivers using API versions prior to BeOS R5 are as-yet unsupported, and unlikely to be so; however, R5-era drivers work.

Low-level device drivers, namely those for storage devices and SCSI adapters, will not be compatible. USB drivers for both the second- (BeOS 5) and third- (BeOS Dano) generation USB stacks will work, however.

In some other aspects, Haiku is already more advanced than BeOS. For example, the interface kit allows the use of a layout system to automatically place widgets in windows, while on BeOS the developer had to specify the exact position of each widget by hand. This allows for GUIs that will render correctly with any font size and makes localization of applications much easier, as a longer string in a translated language will make the widget grow, instead of being partly invisible if the widget size were fixed.

System requirements

R1/beta1

  • MINIMUM (32-bit) // RECOMMENDED (64-bit)[27]
  • Intel Pentium P5 (microarchitecture) // Pentium 4
  • Memory: 256 MB // 512 MiB (2 GB needed to compile Haiku within itself)
  • Hard disk: 1.5 GB // 2 GiB

R1/beta4

  • MINIMUM (32-bit) // RECOMMENDED (64-bit)[5]
  • Processor: Intel Pentium II; AMD Athlon // Intel Core i3; AMD Phenom II
  • Memory: 384MB // 2GB
  • Monitor: 800x600 // 1366x768
  • Storage: 3GB // 16GB

Reception

Recent reception

Thom Holwerda from OSnews wrote on R1/beta4 release:[28]

The improved support for HiDPI looks amazing, and definitely a must-have in today’s world of 4K displays...

The number of ports has increased by a lot thanks to X11, Gtk+, and even Wayland compatibility...

Wine has also been ported to Haiku, using a Haiku-native windowing and input backend. And much, much more.

Pretty good way to start Christmas.

Historic reception

Jesse Smith from DistroWatch Weekly reviewed Haiku in 2010:[29]

Upon booting from the CD, Haiku starts up a graphical environment and asks if the user wishes to run the installer or move on to the live desktop. Selecting the latter option deposits the user at a fairly standard-looking desktop.

Rebecca Chapnik wrote a review of Haiku for MakeTechEasier.com in 2012.[30]

Haiku doesn’t seem quite stable enough for everyday use, especially for a production environment, but I still recommend trying it from a live medium. If anything, it presents an interesting type of anachronism to ponder. If you’re into retro computing but want things like modern websites to render properly, definitely give Haiku a shot.

Dedoimedo.com reviewed Haiku Alpha 4 in September 2013.

Like its predecessor, it begins with a language & keyboard selection. Nothing fancy, a plain blue desktop, some icons stolen straight from 1993, and the overall feel of a workstation running on nostalgia, from before the CDE was hip, and even the world itself was two-dimensional. However, you can try the live edition or installation.[31]

Jeremy Reimer wrote a review for Ars Technica in 2013. His review of Haiku Alpha 4 mentions that:[32]

The last computer I tried was an ASUS P5K-VM motherboard with a Core 2 Quad Q6600 CPU running at 2.4GHz and 8GB of RAM. This is my Media Center PC, hooked up directly to my television. Fortunately, Haiku booted on this hardware without any issue. Startup was very fast and took less than 15 seconds to get to a fully functional desktop. By default, the system booted into a resolution of 1024x768. Unfortunately, there was no option to switch to a widescreen resolution.

Jesse Smith reviewed Haiku again in 2016.[33]

I am of the opinion the Haiku project is doing a good job of creating an operating system in the modern image of BeOS. It took me a while to get used to the way Haiku does window management and to navigate the unfamiliar waters of the software available, but generally speaking I think Haiku performs well.

In October 2018, Jack Wallen reviewed Haiku with an extensive coverage of community statements in Linux.com: "To BeOS or not to BeOS, that is the Haiku"[34]

...BeOS seemed to live in a perpetual state of “alpha release.”

Now we have haiku
Bringing BeOS to life

An AfterStep joy.

As of 2018, the Free Software Foundation has included Haiku in a list of non-endorsed operating systems. They state the reason being because: "Haiku includes some software that you're not allowed to modify. It also includes nonfree firmware blobs."[35]

See also

References

  1. ^ "Haiku R1/beta4 has been released!". Haiku Project. 2022-12-23. Retrieved 2022-12-23.
  2. ^ "x86_64 port: final report". 28 August 2012.
  3. ^ "Haiku OS Ported To 64-bit, Picks Up OpenJDK Support". Phoronix.
  4. ^ Bruno Albuquerque (2008-04-01). "Haiku self-hosting". Retrieved 2008-06-25.
  5. ^ a b c "R1/beta4 – Release Notes". Haiku Project. Retrieved 2022-12-24.
  6. ^ "What is Haiku?". Haiku, Inc. Retrieved 2014-08-05.
  7. ^ "What do You Know About the Haiku Logo?". Haiku Project. 2009-11-25. Retrieved 2020-11-01.
  8. ^ "Haiku Desktop Visualizer". 2008-04-09. Archived from the original on 2008-04-09. Retrieved 2020-11-01.
  9. ^ "Home". Haiku. 2016. Retrieved 9 May 2016.
  10. ^ "Haiku R1/beta1 has been released". Haiku Project. 2018-09-28. Retrieved 2021-05-22.
  11. ^ "Haiku R1/beta2 has been released". Haiku Project. 2020-06-09. Retrieved 2021-05-22.
  12. ^ "R1/beta3 – Release Notes". Haiku Project. 2021-07-26. Retrieved 2021-07-26.
  13. ^ "Haiku Downloads". Haiku. 2021-05-22. Retrieved 2021-05-22.
  14. ^ Pearce, Rohan (2018-09-07). "Beta release nears for BeOS-inspired open source OS Haiku". Computerworld. Retrieved 2020-10-21.
  15. ^ "R2 Ideas – Glass Elevator Summaries". Archived from the original on 2007-05-17. Retrieved 2007-03-07.
  16. ^ Larabel, Michael (9 June 2020). "Haiku R1 Beta 2 "Open-Source BeOS" Operating System Released". Phoronix. Retrieved 15 November 2021.
  17. ^ Larabel, Michael (26 July 2021). "Haiku R1 Beta 3 Released As Spiritual Successor To BeOS". Phoronix. Retrieved 15 November 2021.
  18. ^ "Haiku R1/beta4 has been released!". Retrieved 23 December 2022.
  19. ^ "Haiku: BeOS for the 21st Century". 31 December 2012. Retrieved 2015-09-29.
  20. ^ "Haiku Kernel & Drivers Team". Archived from the original on 2008-06-09. Retrieved 2008-07-17.
  21. ^ "Package Management now live". 27 September 2013. Retrieved 2013-11-04.
  22. ^ "The libsolv Open Source Project on Open Hub". www.openhub.net. Retrieved 2015-09-29.
  23. ^ The GCC team (2007-07-25). "GCC Releases - GNU Project - Free Software Foundation (FSF)". Free Software Foundation. Retrieved 2007-08-16.
  24. ^ "Haiku Hybrids". Haiku Project.
  25. ^ "Haiku legacy build tools sourcecode history".
  26. ^ "Configure Options". Haiku Project.
  27. ^ "Frequently Asked Questions | Haiku Project". haiku-os.org. Retrieved 2019-12-22.
  28. ^ "Haiku R1/beta4 released – OSnews". www.osnews.com. Retrieved 2022-12-24.
  29. ^ "A first look at Haiku (alpha)". DistroWatch Weekly.
  30. ^ "Haiku: BeOS for the 21st Century". MakeTechEasier.com. 31 December 2012.
  31. ^ "Haiku Alpha 4 - So what's next?". Dedoimedo.com. September 25, 2013. Retrieved August 5, 2019.
  32. ^ "1998's most intriguing OS, 15 years later: Hands-on with Haiku alpha 4". Ars Technica.
  33. ^ "Haiku in 2016". DistroWatch Weekly.
  34. ^ Wallen, Jack (2018-10-19). "To BeOS or not to BeOS, that is the Haiku". Linux.com. Retrieved 2020-10-20.
  35. ^ "Explaining Why We Don't Endorse Other Systems". Free Software Foundation. Archived from the original on 2018. {{cite web}}: Check date values in: |archive-date= (help)

Template:Haiku Software