Skip to content

Saturday, 14 September 2024

Akademy is this yearly thing where bunch of KDE people go to talk about and work on KDE software. I had never been in one before, but this year I managed to make it there! This year Akademy was held at the city of Würzburg. This was also my first time in Germany, which is the furthest I've ever been from home.

I also had my wife Jenny with me, since if I had gone alone I would have gotten lost in some random mountain somewhere, or started a new life at the dark corners of Frankfurt airport, completely confused.

Friday, the day of flying (or so I thought)

On Friday the 6th, we left from Oulu to Helsinki first. Hop on plane at 14.30 and- Oh, a small delay.

Eh, it's fine, we hopped on the plane at 16.00 and-...

The flight was canceled.

So, we wait til like 19.30 or something to get to Helsinki. But of course, our flight from Helsinki to Germany had already left! No worries though, the next flight to Germany would leave soon.

Wait, what do you mean it leaves at 7.00?

Aaaaaaaaaahhhhggggggggggg....

Well, we got paid airport hotel room with paid dinner and breakfast. So we slept at Helsinki the first night. We were supposed to be at Würzburg at 23.55 or something, but of course not. Oh well, with some effort I might be able to make to the event, although I would miss the first few talks.

I had the most saddest (but still good) slab of lasagne at very sad and empty airport hotel restaurant. Very frustrated by everything. Sure it'll get better, right?

Saturday, the day of sleep deprivation

This time the airplane actually started to fly, instead of getting canceled for scandalous airplane activities, and we were on route to Frankfurt pretty soon. I spent some time in the airplane just working on my never-ending game project.

At Frankfurt, we got our luggage and went to the funny ICE train, which was a bit late. Apparently being late is some German train thing, I don't really understand it, but we have similar thing at Finland so it wasn't that shocking.

At the train, we were exhausted with our 4h of sleep due to stress not allowing us to sleep, so we just find some seats and sit down. Five minutes later some chap tells us to go away, so we stay up standing for the next 1h 30min next to the exit doors in some midcabin thing.

I wanted to watch some of the Akademy streams at this point, but I was mostly focusing on staying up.

Eventually, we finally reach the Burg of Würz. First impressions were that it looks really nice and.. What the hell is that? A.. mountain? Wow, they can be THAT tall??? (Authors note: Finland is very, VERY flat).

Also it was hellishly hot. The most I saw was 32 celsius. It was painful, I was sweating all the time and it was not fun.

We walk to our hotel room at Mercure hotel, which was really nice by the way. At this time, Akademy was having an incredible luncheon together, so me and Jenny decided to find something to eat. We found this place that was all about avocados, and I had something called powerbowl, which was brilliant.

After that, we began to study the incredibly complex thing that is the German bus system and started our trip towards the Akademy venue.

Aktually at Akademy

Me and my blurry sleep deprived brain walk to the venue and first off I meet familiar people. A lot of familiar people. Many hugs and "Oh you finally made it!"-s were shared. Jenny was with me there as well and it was fun to introduce her to my friends.

I honestly don't remember much about the day. It was quite a blur. But it was cool and I talked a lot.

I stole a lot of stickers and listened some talks, which I can barely remember... But I do remember which ones:

  • Arjen's talk about Union KDE styling theme thing, that is super cool.
  • Harald talked about of our own new possible shiny OS called KDE OS. Or 🍌 OS. I found this really exciting.
  • A lot of lighting talks, where Nicole's talk about teaching lil kiddos how to install Linux with KDE software on old PC's to bring them back alive.
    • I think this talk was my favorite. It was very wholesome, motivating and I'd like to have similar kind of teaching event at home. No promises, but.. Maybe!

During this day I also began to give out salmiakki to people, since I had been well prepared. It was kinda fun to see peoples reactions, especially if they had never heard of it before.

Then it was back to sleep at the hotel.

Sunday, I managed to do things

On sunday I was at Akademy pretty much the whole day. Again, I listened bunch of talks, met more people and we had many good chats about LTS distros, KDE PIM, Kwin, Flatpak... And many other things I can't remember.

I listened Carl's KDE Apps Initiative talk which was very motivating for me, since I've wanted to make a KDE app for a while. A gaming related lil thing.

After the fun group photo and delicious lunch, I chatted more and wandered about the venue.

There was a talk about daily driving Plasma Mobile and I found it very cool, and we had a chat about the Plasma Mobile afterwards. Apparently my Fairphone 5 could run PostmarketOS with Plasma Mobile pretty well already, but I am not yet ready to commit to such a change with my mobile device.

Last I listened Xaver's talk about what color is in computers. I learned that sRGB is a lie and gasped audibly, then heard a lot of words related to color systems I didn't really always understand.. But I found the talk still quite interesting and informative.

The evening was then again a bit of a blur, with sponsors lightning talks and Akademy Awards (congrats to winners btw).

Very interesting day, but I've always been bad when it comes to learning from listening. I learn by doing.

Of course the day wasn't complete without me going to wait bus with my t-shirt and shorts (since it was hot again), and it started pouring like heck. I was soaked when I got to the bus, then at the last stop I had to walk 1km to the hotel in the rain. Ah well, it was warm so I didn't mind too much.

Monday, I skipped the class

On monday I was so exhausted by Everything:tm: I decided to just chill with my wife and we went around Würzburg, buying food and chocolate.

I spent that day just recharging my social batteries. And I ate some Flammenkuchen, which was delicious!

At some point when Jenny is done editing and uploading her video, I will make separate post for it. Then you can see what Würzburg is like, and hear what she did during the trip.

Edit: Am lazy but heres the link to the video: https://www.youtube.com/watch?v=05qexeiHNeY

Tuesday, I flocked together with the birds

Like on monday, on tuesday as well Akademy had these events called "BoFs" which is abbreviation of Birds of a Feather. Because "Birds of a Feather Flock Together". I don't know why it's called that, but anyhow, I participated a few of them:

  • New design system bof
    • Very interesting discussions and ideas even I know nothing about design
    • I was mostly hoping to help people there with my programmer side of knowhow, as someone who has touched the Breeze styles codebases
  • Tiling in kwin bof
    • We mulled over what we could do to make tiling in kwin even better
    • I have this mini task for myself where I try to make tiles split automatically when a window is dragged on top of the other
  • Fedora KDE bof
    • I was just mostly curious whats up with Fedora KDE at the moment
    • I also wanted to give my praise for Fedora KDE, it's been my daily driver for many months now and it's been really good
    • Couple of my friends use it too due to my recommendation and they're having good time gaming on it! :)

To wrap up the evening, I had a fancy dinner with my friends. What was quite a culture shock to me was that after 22.00 the streets were practically completely empty. It was eerily quiet. At home we would have had few drunks about making noise, but at Germany there was just.. Silence.

Wednesday, to home again

Due to having two lizards and them needing a petsitter, and said petsitter not being able to be there the whole week, we left a bit early so we missed the daytrip and the last bof day.

Bit early being our flight from Frankfurt was leaving around 7.00. So we woke up at 5.00.

And when I wake up I saw a message in my phone saying: "Hi your flight is canceled"

Ah. Fun. If all had gone to plan, we would've been at home around 17.00. But instead, we were home at ~2.00.

We had to live at Frankfurt airport for ~7 hours, saw a lot of police with weapons (it was really scary to me, I've never seen weaponry like.. that openly), there was some suspicious luggage that got a whole McDonalds covered in "dont go here" tape and more police.

Urghgfhklfg. Scary.

Eventually we luckily made it to Helsinki and then back to Oulu and I didn't need to type out this blogpost from some corner of the airport.

Conclusions

Akademy was really fun event. I can hardly describe how fun it was. It's been quite a blur due to traveling issues and thus me being completely stressed and exhausted, but I still had many fun chats with everyone.

It was really nice to finally see who the people behind the internet names are and have talks with them, be it just random topics or KDE topics. I met people who I had never met before and shared many chats, laughs and information with them.

I learned quite a lot about what's going on in our KDE ecosystem and even outside of it, how we all interact. But I think the biggest thing I learned was that events like Akademy are crucial for the motivation and wellbeing of the KDE community. It helps us stay together, keep our bonds strong, be it KDE folk itself or people working with us, and keep us being awesome at what we do: Making computers do cool things, for free, for productivity and for fun.

Sorry about no photos, I have basically nothing: I am very bad at taking photos because I simply don't remember.

I love KDE and if you love KDE too, and if it's at all possible, visiting Akademy is well worth it!

See you at the next one, and apologies for the all-over-the-place-rambly-travel-post. Hope you find it a good read anyway.

Thanks for reading!

This year I went to Würzburg, which is a nice small German city famous for its wine. But I didn’t only go there for the wine, but also to attend Qt Contributor Summit and Akademy.

Qt Contributor Summit

The travel to Würzburg didn’t go as planned as Deutsch Bahn had some technical issues with their train and couldn’t reboot our train. We still managed to get in Würzburg on time and even had the change to get a small touristic tour from some locals.

Würzburg Residence and the Wine briget
Würzburg Residence and the Wine briget

The event itself was great and was the first time I attended fully a Qt Contributor Summit. Last year, I only attended a few session since the event was 20 min away from home.

There was many breakout rooms focused on some spcial topics, for me the most interesting sessions were about Qt for Python, how to hate QML, qt-project.org, Vector Graphics in Qt.

It was great to see how the KDE community still plays a big role in Qt and the Qt developers really appreciated what KDE finally moved to Qt6. They reported that the flow of contributors and bug reports increased.

Qt Chief Maintainer Volker Hilsheimer even stressed out how important it was for some of their customers to see KDE ported to Qt6, as it shows what Qt6 is stable and mature enough. Qt6 is indeed a hugo improvement over Qt5 and I am very happy how good the transition was.

Qt Contributor Summit
Qt Contributor Summit

I think it was a great idea to have Qt Contributor Summit just before Akademy. This allowed to have many KDE Contributor to the Qt Contributor Summit and many Qt developers to Akademy. It would be great next year to do the same next if possible and encourage more people from the Open Source Qt ecosystem to join too.

Akademy

Once the Qt Contributor Summit ended, we started a few hours later with the Akademy welcome event for some KDE beers. But before that, I had some bubble tea and spent some time with some friends exploring the city.

The weekend was full with a lot of great presentations. I presented a small report about the Accessibility Goal and the Fundraising working group. I also gave a bigger talk about the KDE Application Ecosystem, which I am really passionate about. The whole slides ware made with Calligra.

 

I was also very happy to see the new elected goals.

Sunday was also my birthday, thanks to everyone for congratulating me. I also received a super fancy special birthday sticker and some amazing cake.

Cake and stickers
Cake and stickers

Day Trip

We had our yearly day trip too, this time at Rothenburg ob der Tauber. A charming small town in south Germany.

Day trip Rothenburg ob der Tauber
Day trip Rothenburg ob der Tauber

BoFs

The next few days were filled with BoFs and many informal discussions. During the Promo BoF, we decided to create a “This Week in KDE Apps” blog posts. Paul volunteered Tobias, Joshua, and me as the initial team for this.

I also hosted a BoF about a future replacement of KWallet. There were some discussions about the scope of this effort. Should we just focus on storing OAuth2 tokens as a background service what the normal users should never interact with or do a full-blow password manager like macOS Keychain. I presented my work toward the latter around based on KeePassXC and the KeePass format (see my old blogpost) as it would allow to use a standardized file format that also work on other platforms. The KeePassXC developers are working on providing a reusable library, so we don’t need to fork their code. There will likely be more discussion about this in a separate gitlab issue. The lack of a good story around passwords is not unique to KDE but to the whole Linux ecosystem. If you have some opinions about this, feel free to reach out.

I discussed with Ben, Lydia and Aniqua the infrastructure for newsletters for our supporting members. Ben managed to get an instance of Listmonk in a matter of minutes and this seems to be the right way for us to manage a newsletters or at least way better than using a mailing list for this.

Kieryn hosted the best BoF: the Sticker BoF where we shared stickers and had a competition to see who had the best decorated laptop. I won!!! and received another special sticker. Thanks Kieryn for organizing this BoF and generally making Akademy this year such an awesome event!

Stickers
Stickers

I also ended up finishing a lot of work. I finally ported the last Drupal 7 website to Hugo: dot.kde.org which was a quite massive website with more than 20 years of history. I migrated the Hugo version used by KDE from 0.110.0 (which was more than a year old) to 0.134.0 and I am happy to report that the Hugo folks care a lot about stability and there was only some very small breaking changes. If you are working on some KDE websites, don’t forget to download the latest version of Hugo and to run the following command to update the KDE Hugo theme.

hugo mod get invent.kde.org/websites/hugo-kde@master

With Volker, we finally merged the status bar integration for Android apps so that KDE apps running on Android and now use breeze colors in their status bar, which looks much more integrated and like on Plasma Mobile.

Itinerary on Android with the new statubar
Itinerary on Android with the new statubar

I also got some improvements ideas during Akademy, and I already started implementing some of them: https://invent.kde.org/pim/itinerary/-/merge_requests/324

Finally I started rewritting the Calligra launcher to Kirigami based on the old Gemini UI. Still a bit far away from a being in a mergable state but it already looks quite good.

Calligra text document templates selection
Calligra text document templates selection

Calligra new document
Calligra new document

Conclusion

This was a great Akademy again. Thanks a lot for all the organizers for all their work. I hope to see some KDE contributors again soon at the Nextcloud Conference and Matrix Summit both in Berlin this month. And to the Linux Days in Dornbirn.

Friday, 13 September 2024

If you're using Plasma/KWin 6 i suggest you disable the Morphing Popups effect, it has been removed for Plasma 6.2 https://invent.kde.org/plasma/kwin/-/commit/d6360cc4ce4e0d85862a4bb077b8b3dc55cd74a7 and on X11 at least it causes severe redraw issues with tooltips in Okular (and i would guess elsewhere).

“Heather, Heather, Heather; what did you do now!” and both me & Fenris started laughing with Till, as we’re discussing about the thunderbird snap during the conference dinner.

Yup, this is from UbuCon Asia, my

  • First conference
  • First flight journey
  • First travel out of my state
  • First solo travel out of my state
  • First solo stay at a hotel

Huhhh, a lot of first timers! I can’t think actually where to start with… I met so many people out there, got so many mentors! Thanks Till , for introducing me with so many mentors! I met Guruprasad sir (the launchpad guru 😄), Kierthana mam and Dimple didi (both are the documentation gurus). A lot of suggestions, tips, guides from them! Thanks a lot 🥹! BTW, How can I forget my OG Bhavani bhaiyaa!

Akademy 2024 in Würzburg - it was a blast

My second Akademy and has ended just yesterday. It was an amazing and productive time again! Apart from familiar faces I know from last year’s Akademy or the Plasma sprint last year in Augsburg, I met plenty of new faces. Some of which I of course had contact in KDE before, but only in the digital world.

One of the best parts was again the day trip with the KDE Community. While it was a bit rainy, we for sure made the best of it and saw the beautiful city of “Rothenburg ob der Tauber”. The view from the town hall tower was very beautiful:

The talks were also quite interesting and highlighted how many facades the KDE Community has. Apart from the lightning talks being great again, the “QML in Qt6” talk was quite valuable, because I did not manage to follow up closely on the latest improvements.
The talks and BOFs related to the KDE goals were also quite beneficial in getting a good impression in what direction we want to go.

Since we had so many interesting talks, it was not possible to join all of them. What I will follow up on later are the talks “Pythonizing Qt” and “C++, Rust and Qt: Easier than you think”.

Albert Astals Cid and I gave a lightning talk together about JSON linting (my part) and QML linting (his part). We were only able to touch the surface in the given time, but had some productive discussions and follow-up questions afterward. I will create a post about the JSON validation/JSON schema topic in the future, since I am still working on some aspects of this.

It has been great again to also do some hacking together and discuss ideas in-person. I will miss being able to say “Let’s discuss this at Akademy?” on merge requests ;).
I did quite a bit of hacking on KRunner, linting/formatting related tooling and also Clazy.
This can also be seen on my GitLab history that has turned a bit more blue and thus active:
GitLab activity

What was a great improvement over the last Akademy were the chicken noises to make sure people stay within the time of their talk! To better improve on that, we should maybe get some real chicken next year 🥚🐣🐔. The talks on how to apply for funding in KDE might contain useful info when working towards this ;) PS: My life-long profile picture on GitHub/GitLab is of the super cute chicken I had 🥰.

Chicken picture

Thursday, 12 September 2024

I reverted my name back to Jonathan Riddell and have now made a new uid for my PGP key, you can get the updated one on keyserver.ubuntu.com or my contact page or my Launchpad page.

Here’s some pics from Akademy

KDE Akademy is meeting this week in Würzburg.

We just had a BoF session where we discussed..

  • The current progress to rebasing on Ubuntu 24.04
  • The current state of KDE neon Core our amazing forthcoming Snap based distro
  • Fixing up broken and bitrotting infrastructure
  • Moving to KDE invent
  • Issues with Plasma 6 upgrades and looking at integrating more QA tests
  • How the proposed KDE LinuxTM distro fits into the mix

Plasma Wayland Protocols 1.14.0 is now available for packaging.

This adds features needed for the Plasma 6.2 beta.

URL: https://download.kde.org/stable/plasma-wayland-protocols/
SHA256: 1a4385ecfc79f7589f07381cab11c3ff51f6e2fa4b73b78600d6ad096394bf81 Signed by: E0A3EB202F8E57528E13E72FD7574483BB57B18D Jonathan Riddell jr@jriddell.org

Full changelog:

  • add a protocol for externally controlled display brightness
  • output device: add support for brightness in SDR mode
  • plasma-window: add client geometry + bump to v18
  • Add warnings discouraging third party clients using internal desktop environment protocols

Tuesday, 10 September 2024

https://openuk.uk/openuk-september-2024-newsletter-1/

https://www.linkedin.com/feed/update/urn:li:activity:7238138962253344769/

Our 5th annual Awards are open for nominations and our 2024 judges are waiting for your nominations! Hannah Foxwell, Jonathan Riddell, and Nicole Tandy will be selecting winners for 12 categories. ?

The OpenUK Awards 2024 are open for nominations until Sunday, September 15.. Our 5th Awards again celebrate the UK’s leadership and global collaboration in open technology!

Nominate now! https://openuk.uk/awards/openuk-awards-2024/

Up to 3 shortlisted nominees will be selected in each category by early October and each nominee will be given one place at the Oscars of Open Source, the black tie Awards Ceremony and Gala Dinner for our 5th Awards held at the House of Lords on 28 November, thanks to the sponsorship of Lord Wei.

Monday, 9 September 2024

Today, we bring you a report on the brand-new release of the Maui Project.

We are excited to announce the latest release of MauiKit version 4.0.0, our comprehensive user interface toolkit specifically designed for convergent interfaces, the complying frameworks, and an in-house developed set of convergent applications.

Built on the solid foundations of Qt Quick Controls, QML, and the power and stability of C++, MauiKit empowers developers to create adaptable and seamless user interfaces across a range of devices, and with this release, we have finally migrated to Qt6 and made available the documentation for the frameworks.

Join us on this journey as we unveil the potential of MauiKit 4 for building convergent interfaces, and finally discover the possibilities offered by the enhanced Maui App stack.

Community

To follow the Maui Project’s development or to just say hi, you can join us on our Telegram group @mauiproject

We are present on X and Mastodon:

Thanks to the KDE contributors who have helped to translate the Maui Apps and Frameworks!

Downloads & Sources

You can get the stable release packages [APKs, AppImage, TARs] directly from the KDE downloads server at https://download.kde.org/stable/maui/

All of the Maui repositories have the newly released branches and tags. You can get the sources right from the Maui group: https://invent.kde.org/maui

Qt6

With this version bump the Maui team has finalized the migration over to Qt6, which implies more stability and better performance coming from Qt upgraded QQC engine; but also means that some features have been removed or did not make the cut and still need more time to be brought back in posterior releases.

MauiKit 4 Frameworks & Apps

Currently, there are over 10 frameworks, with two new ones recently introduced. They all, for the most part, have been fully documented, and although, the KDE doxygen agent has some minor issues when publishing some parts, you can find the documentation online at https://api.kde.org/mauikit/ (and if you find missing parts, confusing bits, or overall sections to improve – you can open a ticket at any of the framework repos and it shall be fixed shortly after)

 

A script element has been removed to ensure Planet works properly. Please find it in the original post.

Core & Others

MauiKit Core controls also include the Mauikit Style, which along with the core controls has been revised and improved in the migration. New features have been introduced and some minor changes in the API have been made.

A good way to test the new changes made visually is via the MauiDemo application, when building MauiKit from the source, just add the -DBUILD_DEMO=ON flag and then launch it as MauiDemo4

All of the other frameworks have also been fully ported and reviewed, and some features are absent – for example, for ImageTools the image editor is missing for Android due to KQuickImageEditor problems.

Comic book support is missing in MauiKit-Documents, due to a big pending refactoring.

Finally, TextEditor new backend rendering engine migration is yet to be started.

Most of these pending issues will be tackled in the next releases bit by bit.

More details can be found in the previous blog posts:

Maui Release Briefing # 4

Maui Release Briefing #5

 

Archiver & Git

MauiKit-Archiver is a new framework, and it was created to share components and code between different applications that were duplicating the same code: Index, Arca, and Shelf.

The same goes for MauiKit-Git, which will help unify the code base for implementations made in Index, Bonsai, and Strike, so all of those apps can benefit from a single cohesive and curated code base in the form of a framework.

Archiver is pending to be documented, and Git is pending to be finished for its first stable release.

A script element has been removed to ensure Planet works properly. Please find it in the original post.

Known Issues

  • MauiKit-Documents comic book support is stalled until the next release due to heavy refactoring under Android.
  • MauiKit-ImageTools under Android does not include the image editor, since KQuickImageEditor is not working correctly under Android
  • Clip is not working under Android due to issues with the libavformat not finding openssl.so when packaging the APK, this is still under review
  • MauiKit-Git is still being worked on, and due to this Bonsai is not included on this stable release as it is being ported over to MauiKit-Git

 

A script element has been removed to ensure Planet works properly. Please find it in the original post.

Maui Shell

Although Maui Shell has been ported over to Qt6 and is working with the latest MauiKit4, a lot of pending issues are still present and being worked on. The next release will be dedicated fully on Maui Shell and all of its subprojects, such as Maui Settings, Maui Core, CaskServer, etc.

That’s it for now. Until the next blog post, that will be a bit closer to the 4.0.1 stable release.

Release schedule

The post Maui Release Briefing #6 appeared first on MauiKit — #UIFramework.