Thursday, January 22, 2026

Upgrading Quickbar from SFOS 3 to SFOS 5

So the new Jolla phone has been announced! Its incredible! 13 years is an insanely long time in the world of Software; it has transformed, re-transformed, re-shuffled, re-painted, re-<enter your favourite "re-" thing here>. What has stayed? Jolla! Out of all things! To honor that, and due to my own masochism; I want to resuscitate Quickbar for the occasion! For the ones who don't know; Quickbar is a simple one-row mini-launcher app, that embeds itself at the bottom of the screen of your SailfishOS phone, tracking the most recently used apps, as well as favorites! It originated in the Meego times, back when Ovi Store was still a thing (yes yes don't worry, Ill skip the nostalgy ;) ).

But first, a bit of background. Quickbar had transitioned from MeeGo To SailfishOS; the idea back then, in the MeeGo days, was to learn about N9 and Harmattan. And for SFOS, the idea for me was to learn about Wayland, and what not of a better approach, to try to integrate a mini-widget into an operating system with a new model of Window manager (Wayland). However, maintaining Quickbar for SailfishOS has been more complicated than expected, for reasons we (might) re-face down the road. Mostly due to the simple Wayland protocol implemented in lipstick, the SailfishOS compositor; btw as we speak there is talks about redesigning the current approach by detaching the Wayland compositor from the acutal UI, this shows that SailfishOS is never static on everything. I love that, it gives the feeling of a "living" operating system!

So today I start with the basic. Getting back online my old svn (yes, svn!) repository,  checking out the sources. The svn repo was resting on an older diskstation. Luckily I still had the disks, so after plugging them into the usb to serial adapter, it was easy to recover. Getting the repo back online then was as simple as spinning up a docker container with svnserve in it. We are ready to dance!

Checking out the code took a bit since I didnt really remember the password (so had to look it up from old notes), but worked flawlessy. I then spun up SailfishOS Sdk QtCreator, opened the harbor-debota.pro project file, and gave a build and thought "here we go"; and even before I got to the end of that thought, an error popped up:

Project ERROR: gq-gconf development package not found 

Well that's a bummer. But the project was last built on 2020, so what was that, SailfishOS 3? A quick look at the SailfishOS Wikipage  revealed Rokua (3.2.0) and Pallas-Yllästuntturi (3.3.0). Feels like so long ago..Alot has changed since then (including Jolla who shifted to the Jollyboys team in the meantime! And let's not go back to how the world has changed in between...). The funny thing is, this package is _not_ a direct dependency of Quickbar; but of another project lancia (italian for launch), which is the really early and plain name for the app I had used for the harmattan version. Good times, Ovi store times..I heard they rebranded to "Apple store" nowadays. But perhaps it's just an internet meme....Aaaaanyways. 

So to go back on topic, the gq-gconf (where the hell do these names come from) package is something I have (honestly) almost never worked with. I do not recall using it, and there is no information around in SFOS. In fact, in 2026, even Gemini is clueless about it (surprise, but not really, given its information that probably has never been crawled):




(between you and me, I love the "preciseness" of the _alternatives_ that are provided) 

But perhaps the most interesting question here is, how comes the lancia project is built instead of the harbor-debota, the actual Quickbar? There is no connection between the two in any way (except for source file sharing), they sit in the same directory tree, in two separate folders...like this:

     debota \
            harbor-debota
            <more crap here in between we dont care>
            lancia

But that's really it! This will be the first knot to untie! 

So to go down the rabbit hole (just a bit), we find from the `Makefile` in the build directory : 

        SUBTARGETS    =  \
                    sub-lancia

So indeed the build tools seem to believe there is some kind of dependency between the `lancia` project as well as the harbor-debota one. This is something I havent seen around lately in the Qt World, so it _might_ be just a SFOS thing...Will have to check on the forums! But now it's late, and tomorrow is a working day! Have a good one, and stay tuned for part #2!

No comments: