Skip to main content
  1. Posts/

p2k19 - my first OpenBSD hackathon

·829 words·4 mins· loading · loading ·
Rafael Sadowski
Author
Rafael Sadowski
Shut up and hack

When p2k19 was announced, I was quite happy that it was located in Bucharest. A quick check of flight connections, showed that there is a direct connection from Hannover. Without a second thought or planning a vacation, I booked the round trip. I guess I was the first person to put his name under the list.

Booked, signed and forgotten for a while.

Two months before p2k19, kn@ visited me in Hannover for a two person ports hackathon. Since he had already been to a few hackthons, I asked him lots of questions. He told me some stories. He told me to take it easy on the hackathon. “It’s gonna be cool!” After the conversations with kn@ I still did not really know what I would expect. Plus the nervousness. I decided to take kn@’s advice on and just let everything come to me in a very easy way.

After a long Monday working day, I took the train to Airport Hannover where my flight started at 22h. I reached the capital of Romania in time and grabbed a Uber to the hotel. It was my first Uber ride, because it is not allowed everywhere in Germany. I was surprised how easy and stress-free it was. Since then I have often used it in South-East Asia; Grap is more common than Uber which works just as well.

After a short night, I went straight to the hackroom at the University of Bucharest. The room was a Google-sponsored lab from the university. Typical Google colors and quite comfortable and very bright.

I welcomed pvk@ landry@ pirofti@ and immediately started my work. First on my list was deleting the unhooked kde4 ports and cleanup stuff. Then I looked at the ports@ mailing-list and searched for cmake/qt5 ports where I could help. I quickly found nextcloundclient and decided to give it a try. A lot of preparatory work has been done already. I just had to tweak all these little ports-qt5 improvements. After half a day we had a working and good looking port ready.

Besides I took care of the update from KDE4 ports to x11/kde-applications (KDE5). On day two sthen@ surprises me with an OK for the first bunch of KDE5 ports. The morning was spent mostly with cvs madness: cvs import, unhook, cvs commit, cvs remove. Long story short, a time intensive process to replace KDE4 with KDE5 in the CVS tree.

I am a big fan of the Qt5 framework for applications so I try to replace Qt4 applications by Qt5. These applications are mostly no longer being developed and there is often an actively developed Qt5 branch. By the way, I (we) want to get rid of this. So I looked into net/psi and quickly realized that it was broken. No TLS connection to a jabber server was possible. At first I thought psi itself is broken but then I tested other Qt4 programs that establish TLS connections and figured out that our Qt4 SSL runtime was broken. Good that tb@ was sitting at my table. He was able to reproduce the error. His first reaction: “Let’s delete x11/qt4”.

tb@ explained the Qtnetwork LibreSSL patches to me, but we found no bugs and were a bit perplexed at first. I found out that our security/qca port was already outdated and so I updated the qt4 and qt5 variant. The tests were again time consuming, as always by basic libs.

On the 3rd day I finally decided to work on my 5.1X update-diff again. It has been on my mind for a very long time. To my delight, tb@ found a fix for the TLS/Qt4 issue. During the last LibreSSL update something went wrong when merging in Qt4.

My goal for this hackathon was to get at least Qt5base 5.13 to build. A lot has changed between 5.9 and 5.13 in qmake. My biggest challenge was to tell qmake how to deal with the OpenBSD shared library pattern.

On Friday I made the breakthrough and was able to build Qt5base including LibreSSL patches. Since then a lot has happened and I can proudly announce that we can build the complete x11/qt5 subtree in version 5.13.2 and that the first applications are working with it.

It’s still a long way away, but we’re going. My hope is to port a stable state with Qt5.13.x once Qtwebengies. The benefit would be enormous, we could update all old qtwebkit ports.

I really enjoyed the days with the many new (in persona) people. I was able to concentrate completely on OpenBSD for one week, which was great. The good lunches and the events or walking through the city and taking pictures. Bucharest is a wonderful place!

Thank you very much to Paul Irofti, the University of Bucharest, and the OpenBSD Foundation for putting on this hackathon.

This blog post was also published on OpenBSD Journal - undeadly.org

Inspirations of a wonderful city…

All photos are unedited.
License: CC BY-NC 4.0