BeGeistert 030 report

BeGeistert Logo

Last week, 28th October to 1st November 2016, was the yearly meeting for European Haiku and BeOS people. BeGeistert 30th edition happened as usual, at the youth hostel in Düsseldorf.

Irrelevant bits of info about how I went there

As usual I took the night train from Toulouse to Paris. They say it takes only 2 hours: 1 hour to fall asleep, and 1 hour to wake up.

I then crossed Paris to change train stations, and boarded the Thalys train to Düsseldorf (after X-Ray scanning of my luggage, a new security feature this year). There was about 1 hour of delay because of people on the train tracks, but other than that the trip went fine (and there is free wifi and internet access in the Thalys now, so I could work on various Haiku things during the journey).

More relevant info about the event

Due to some mishaps and website issues at the Haiku Support Association, who manages the event, the registration for BeGeistert opened less than a week before the event. As a result, not much people registered. Unfortunately, this also affected the coding sprint, which ended up being shortened to just 2 days instead of the usual full week.

Due to the low attendance, there were also not any talks scheduled. So, the week-end was itself mostly a coding sprint for the people present. It is nice to see that some users have learnt C++ or recipe writing to help Haiku move forward.

I should also mention that Oco brought a birthday cake to celebrate the 30th edition of BeGeistert. With hope that this will not be the last one.

An interesting event during this edition was the rather important number of people equipped with MIDI hardware - about half of the attendance. This was the occasion to experiment with SynC Modular, MilkyTracker, Patchbay, and different sound fonts. Things seems to be working pretty well in that area.

BeGeistert 030 people

People present, work achieved

So, since there is not much to say about talks or other announcements, let’s look at who was there and what they were working on. In random order:

Andreas Herzig - PCShifter

Andreas joined BeGeistert for the first time, after failing to register for the previous years. You may remember him for his work on fRiSS, an RSS and Atom feed reader for BeOS and Haiku.

As a way to get back into Haiku development, he is currently updating his “PC Shifter” game. During the week-end, he got things building again and started working on improving the graphics for the game.

Initially it looked like this:

And the current version:

You can get the sourcecode on his github page.

Mark Hellegers - Web Browsers

Mark is mainly known for his work on Themis, a native web browser for Haiku and BeOS.

During the weekend he tracked down some issues in Haiku’s HTTP implementation, which led to failure to properly save cookies. He also nudged Haiku developers to finally merge two of his older patches. One of them fixes some problems with running the Haiku test suite, and the other fixes handling of HTTP authentication in WebKit. Both have been released during the week-end.

Olivier Coursière - FreePascal port, build on Windows

Olivier is a multitasking guy and always works with at least 2 (and some times even 3) machines in front of him.

With his left hand, he worked on getting Haiku to build using the new “Ubuntu for Windows” support in Windows 10. This is a compatibility layer (similar to Wine, but in reverse) to run Linux apps on Windows.

After getting Microsoft to implement case sensitiveness, the build failed with problems in attributes and resources. Initially thought to be a problem with xattrs management, it turned out to be the lack of support for the ‘:’ character in filenames. Of course Windows mistakes it for a volume separator (as in C:\Windows) and fails to create the files.

Another problem is that the build is very slow on this setup. It was a good occasion to try some profiling (mostly around the mimeset command) and investigate if it is possible to speed things up a little. However, the tools are not yet really available for this: Windows tools don’t give much info on Linux binaries, and Linux native tools require some specific kernel support which the wrapper does not implement yet.

With his right hand, on his other laptop, Olivier worked on updating and fixing FreePascal, Qt4Pas and Lazarus, getting them all to run again. He is now looking for help to write recipes for these and get them packaged and available in the Haiku Depot, opening a new way for people to write Haiku apps without first learning C++.

Jua - App_server profiling

Jua could only stay for a single day, but his time was not wasted with investigation of the AGG renderer and the way gcc manages - or does not manage - to optimize it into compact and fast assembler code. The main observation is that GCC 5 generates much faster code and makes WebPositive feel a lot smoother. This opens the question of whether we should switch more parts of the system to gcc5, including the app_server.

Korli - XHCI, ffmpeg, Terminal, and more

Korli tackled several issues in Haiku. Reviewing and merging some old patches, investigating problems with XHCI for USB3 support, fixing Terminal to get Nano and other ncurses apps working again, fixing our ffmpeg plugin for better compatibility with newer versions of ffmpeg.

It’s a bit sad that he couldn’t spare some time for the coding sprint, as that would probably allow even more bug fixes.

Humdinger - Applications

Humdinger is our “apps” guy at Haiku. During the week-end he worked on improving his own Clipdinger (clipboard manager), making it runnable using the launch daemon in Haiku. He also worked on cleaning up the package for Sequitur, making sure all the add-ons and documentations were available at the expected places.

Miqlas - Haikuports recipes

Miqlas is not a software developer, but he found a way to contribute to Haiku nonetheless. He is one of the people working actively at HaikuPorts to bring us new recipes and more ported software.

Miqlas worked on getting Vim 8 working, by updating the patch that brings the native BeOS GUI to it. That patch was developed from an initial work on Vim 6, and kept up to date over the years. Vim is an important tool for me, so many thanks for keeping it running and up to date!

After he was done with Vim, Miqlas also worked on porting Neovim, a fork of Vim whose goal is to cleanup the code from legacy things and bring new and exciting features. At the moment, he is stepping through all the dependencies required to build this fork, which is less self-contained than the standard Vim.

PulkoMandy - HTTP, WebKit, and package buildbots

Mostly because of lack of time, not much had been done on the HTTP code and on WebKit for most of the year. Some bugfixes had accumulated in the WebKit repository, however.

Spending some time revisiting this was a good occasion to get the WebKit test suite running more reliably. When we make changes in the future, this will help us catch regressions and notice bug fixes.

While reviewing some of the many failing tests, some bugs were fixed, with focus on things that caused crashes or deadlocks. Vidrep was very helpful in providing a list of websites not working as expected. Each of them took some time to investigate, but the bugs are now fixed (well, not all of them, but some).

A new WebKit release has landed in HaikuDepot, as well as several fixes to the HTTP backend code. There are some new features as well, for example the HTTP audio and video code now uses the Media Kit directly since that supports playing from HTTP now. The result should be smoother and more stable audio and video replay, with support for streamed sources.

There are still many bugs to fix, so please give it a test run and report all the problems you see on the Haiku bugtracker.

Perspectives for next years

Added to the low attendance this year, another things makes it difficult to continue the BeGeistert in its current shape. The youth hostel has raised the price for the rooms, making it difficult to organize the event on a reasonable budget.

Options are being examinated for next years. Maybe the event will move to Zurich or Toulouse, or somewhere else in Europe. Stay tuned for more info as investigation progresses.

Photos

Here are a (very) few photos of the event: Humdinger’s album.