Oxygen Icons 6 Released

Oxygen Icons is an icon theme for use with any XDG compliant app and desktop.

It is part of KDE Frameworks 6 but is now released independently to save on resources.

This 6.0.0 release requires to be built with extra-cmake-modules from KF 6 which is not yet released, distros may want to wait until next week before building it.

Distros which ship this version can drop the version released as part of KDE Frameworks 5.

sha256: 28ec182875dcc15d9278f45ced11026aa392476f1f454871b9e2c837008e5774

URL: https://download.kde.org/stable/oxygen-icons/

Signed by E0A3EB202F8E57528E13E72FD7574483BB57B18D Jonathan Esk-Riddell <jr@jriddell.org>
https://jriddell.org/esk-riddell.gpg

Ruqola 2.1.0

Ruqola 2.1.0 is available for packaging.

Ruqola is a chat app for Rocket.chat. This release can build with Qt 5 and Frameworks 5. It can also build with Qt 6 and the soon to be released Frameworks 6.

URL: https://download.kde.org/stable/ruqola/
SHA256: 65295cc39f24f046305bc73df4bcc6e561bd8b8b125537290ce5b5b62488fffd

Signed by E0A3EB202F8E57528E13E72FD7574483BB57B18D Jonathan Esk-Riddell jr@jriddell.org
https://jriddell.org/esk-riddell.gpg

British Canoeing Surf Kayak Leader Assessment

I did my Surf Kayak Leader assessment with Paul Bramble in south west Wales and pleasingly I passed. I booked on not quite knowing what to expect, there wasn’t much pre course information and it was mostly because because the date was convenient. Turns out Wales is beautiful and has great surf beaches, the geography allows for some more access to the Atlantic waves and it feels like there’s more of a community down there than in Scotland where surf can be so sporadic.

I had not done any formal training as none seemed to be available, this discipline is such a niche you just have to take your changes when you get them. But in the past I’ve done uncertified safety days with folks in Scotland as well as SLSGB training and of course whitewater leading is very similar you just have to be aware of the differences.

For revision it’s worth reading the SLSGB Beach Environment Training Aid available online.

I had one other person being assessed and together we reviewed the nearby beaches and picked the best one where the forecast was good, the weather was fine, the tides known, the parking available.

We had three students who were all sea kayakers but had done occasional surf and interested in more which is just the sort of person needed for this. I lead with introductions, experience, abilities, motivation, moving kit around, safety protocols. There’s not much safety protocols available in surf kayaking, generally if there’s a problem then folks need to get into the beach which can be hand signal, waving paddle in the air or single whistle. Otherwise if a paddler thinks they might crash into another person then they should capsize. We checked all boats had buoyancy bags in them and I did a warm up.

Fellow candidate Fran accompanied the students onto the water at first while I watched from the beach. I had suggested staying in the white waves at first but the students didn’t seem to want that and were happy going behind the waves straight away which was fine but I guess clearer discipline there would be better.

I took photos (the most important role) and watched for any swimmers but everyone seemed able to roll fine as needed.

I did run a brief mini-coaching session talking about take off on the waves, it’s supposed to be a lead day without coaching but all days will include some chat about what we’re doing and how to improve.

I did a rescue from the beach of an unconscious paddler from behind the waves which is very hard work. I chose to jump in my kayak for this which is risky as you might not do a smooth launch but I did and it allowed me to bring him back some of the way dragging with my sling and carabiner before I jumped out my boat to drag him back in and up the beach.

I did a deep water rescue of a swimmer, this is very tricky with surf kayaks which tend to be low volume. I managed it with having the swimmer step over my boat into his then two of us hold the front of his boat down to stop water entering his boat from the back.

At one point a confusing scenario happened where a student had a dislocated shoulder and we brought them in, it wasn’t expected and we didn’t manage it very well but it was sprung on us without any warning, although I suppose that’s real life.

I failed to bring my first aid kit or phone onto the beach which was a mistake. I also had lost my watch which was poor leadership although I worked out my camera could tell the time and nobody else seemed to have a watch.

A lovely day’s paddling for sure.

XWayland Video Bridge 0.3

# XWayland Video Bridge (xwaylandvideobridge)

The first stable release of XWayland Video Bridge is out now for packaging.

https://download.kde.org/stable/xwaylandvideobridge/

sha256 f8da6e8fe0ec3bd5ea797af8aad8fe1daab36fc3c77e2d36bb7443832cdfcffa

Signed by E0A3EB202F8E57528E13E72FD7574483BB57B18D Jonathan Esk-Riddell <jr@jriddell.org>
https://jriddell.org/esk-riddell.gpg

# About

By design, X11 applications can’t access window or screen contents for wayland clients. This is fine in principle, but it breaks screen sharing in tools like Discord, MS Teams, Skype, etc and more.

This tool allows us to share specific windows to X11 clients, but within the control of the user at all times.

# How to use

xwaylandvideobridge should autostart on login. It will run in the background. Next time you try to share a window a prompt will appear.
The previously selected window should now be available for sharing. The title will always be “Wayland to X11 bridge” no matter what window is selected.

The system tray icon provides finer control.

# Use outside Plasma

This should work on any desktop that supports the Xdg desktop portals and Pipewire streaming and have a working system tray.

# Future

Ideally this should be more automatic, but this tool aims purely to serve as a stop-gap whilst we wait for these clients to get native wayland support and for the surrounding wayland protocols to be better. How much more it gets developed depends on feedback and how the surrounding ecosystem evolves.

OpenUK Awards 2023 Open for Nominations

The OpenUK Awards are open for nominations for 2023.

Awards timetable

  • Nominations open 28th July 2023
  • Nominations close midnight UK 19th September 2023 (this will not be extended)
  • Shortlist of up to 3 nominees per category announced 18th October 2023
  • Winners Announced 20th November 2023: Black Tie Awards Ceremony and dinner at House of Lords sponsored by Lord Vaizey, 6-10.30pm, tickets limited 

Self nominations are very welcome. If you know fit into the categories or have a project or company which does or know anyone else who does then fill in the form and say why it’s deserved. You might get fame and glory or at the least a dinner in the house of lords.

Insulating a pre-1919 stone built Scottish House, Esk Tower

Here is a Twitter thread I posted in January 2021 about insulating a Scottish stone house. There’s seemingly no knowledge in the industry or in government agencies about how to do this so we had to research and project manage it myself including most of the labour (lockdown and budgets ment we could hire one guy to help but not all the time). You can’t get grants or loans for self build projects. The Scottish government plan for mass home insulation (the only proven way to reduce household greenhouse emotions) is pretty much a failure from my experience. Anywhere here’s how..

See also Esk Tower – Retrofit Insulating a pre-1919 Scottish Stone Built House video (YouTube) and Keeping Stone Dry, a French Drain on pre-1919 Scottish House Esk Tower blog.

This is my tower. It’s an old engine room for a coal mine to pump water out the mine. But these days it’s a house. The walls are 1m thick. How do you keep a house like this warm?
Start by removing the plaster board and frame. I’m sure everwarm are lovely when working with modern builds (and not breaking lock down) but their suggestion to add an extra 5cm boards inside it would block air flow and remove space.
We found an old fire place. We scrubbed the walls with metal brushes and an industrial hoover. It took an age

In one of the rooms we found an old fire place

The we lifted some floor boards and put gutex wood fibre around the edge of the outside walls. Can’t find a pic so you’ll need to imagine it

Gutex thermofibre goes between the skeilings which are the 45° roof slopes. It’s wood fibre which feels a bit like wool insulation.
And the Gutex Multitherm to cover the coombs
Next it’s time for the @lime_products
plaster, it needs two coats and a mesh cut and pushed into the first. Plaster can be smoothed after but if you don’t then it looks more authentic like a French farm house.
Buy an oak mantel piece, fancy wallpaper and lining, some classic furniture and a real wool carpet, use decent underlay but be warned it’s slow to fit it in. Voila, tower room now insulated and looks good and stone work will remain solid for many more years.

Keeping Stone Dry, a French Drain on pre-1919 Scottish House Esk Tower

Here is a Twitter thread I made in February 2021 about keep the stone on our house dry by digging a French drain. I don’t want to be locked into Twitter so I’m re-posting it here to keep it alive.

See also Esk Tower – Retrofit Insulating a pre-1919 Scottish Stone Built House video (YouTube) and Insulating a pre-1919 stone built Scottish House, Esk Tower blog.

This is my home. Esk Tower. Built as.a pumping house it’s now my house. Every new owner has added a new layer around the outside to make the grounds look more pretty. This is a story about a French drain we dug.
It has its own culvert which probably used to keep the pumping engines cool. It’s how water should be around a building, all channeled and not likely to affect the stone.
As the pandemic spread last march I was high above the world repainting the dormer windows looking down on the ground below pondering what was under it and how the stone was keeping.
So one day with nothing much to do except stay at home we took an SDS drill, pick axe and many shovels and dig around a corner. Layers of ornamental stones and plastic sheeting gave way to layer of brick, coal and finally clay. It was hard work.but the stone could breath again.
The next weekend we tried another corner, this was cemented in so the sds drill came out. It hardly touched it.
Fortunately we had got a Titan stone cutting circular saw with blades the size of dinner plates there is no arguing with this.
Having dug up the cement the stone could breath for the first time in a century and get a good wash down.
Then it needs lots of repointing. Using breathable lime from masons mortars or course, not the cement people in recent decades have used, that just traps in moisture damaging the stone.
I spent a weekend drilling under the doorway, full of rubble, glass and a frog under there.
All of which produces lots of waste, beware of telephone wires when stacking skips three high.
Ah now this corner was tricky, a clay sewage pipe from the neighbouring house, cracked of course so not surprising our stone was reading as more damp than you can burn firewood at. Emergency drains people came out and replaced the pipe.
Ease up ment we could get in help and we got the trench along the front of the house. I’d been wondering how the down pipes connected, it turns out the didn’t.
With the digging near the building done by hand we could hire a digger for the rest, this is a lot more fun than doing it by hand
Alas there a lot of utilities and a digger makes easy work of water pipes. And electric cables. And gas pipes.
There followed a panicked night of young men in yellow jackets and the following day digging in mud to find where water needed reconnecting and make sure electric was ok. This was very much type 2 fun. Maybe type 3.
At last we could replace the rest of the clay sewer and put in the French drain pipe to help water drain away from the walls.
Then make a bund of earth on the right and cover that in fabric to drain more water away from the building. Then connect up the rain water pipes from the roof. lots of measuring and cutting needed here.
Finally fill in above the new drain with pebbles and sort out all the dug up earth to remove stones and lay that back down ready for grass in the new year
And the random hole we cleared out earlier and in years past was a stair case we put a roof on and made into a wood store.
And that is the story of how we made the tower stay strong and dry, with lots of digging and lime and French drains and utilities all over the place.

Removing a Blocking Tree from the River Nith

Towards the end of the gorge in the River Nith, a commonly run whitewater section in south west Scotland, a large tree had blocked the course. Depending on the river level this was not easy to go round or cross and for over a year social media had a steady stream of people warning about it. Kyle Canoe Club even stopped running the section of river because of it.

So I set about trying to work out what it would take to remove it. The first task is to go to the site and assess, images on Facebook only show so much. It was 20m down a steep slope with no easy access and there were at least 4 trees stuck across in the same spot. They ranged from about 50cm to 80cm in diameter. This was not something that could be done with a hand saw and manual lifting.

I had to find someone who knew how to use a chainsaw and winch lifts in difficult environment and got hold of Scot Muir from the Forth Rivers Trust who I had trained up in white water safety the year before. Not only did he have winches and chains and axes, he knew the right fuesl to use in the chainsaw when near water so as not to cause a pollution incident.

I then visited the estate office for the site, which is Richie Scott’s large Buccleuch estate. The local head of forestry was happy for us to go ahead but understandably wanted a risk assessment and to know our qualifications.

Then I applied for money to pay for my travel and a day of Scot’s time from the Andy Jackson Fund for Access, a simple enough application but you do need to be mindful of who is paying and when and what happens if you don’t succeed on your first attempt.

Next it was a case of watching my webpage SCA Where’s the Water for low flows. When they arrived and my dates aligned with Scot’s we met up early in the morning and spent 8 hours with ropes, winches, chains and chainsaws. Every cut needed problem solving to work out what angles we could get a grip on and how we could cut it without ourselves ending up in the water or the trees just getting stuck again. The final trunk was so thick and so waterlogged we had to rotate it several times to be able to cut through and it needed pulled into an eddy when it sank rather than floating away. Some paddlers ascending the river stopped by to say hi and give us their thanks which was lovely.

So for anyone who comes across strainers on the river have a look and consider if you can help remove it. There’s funding available from the Andy Jackson Fund and we’re happy to help with pointers of how to do it, but it’s a process that takes some planning and problem solving and works best in the summer months so let’s get removing those trees pronto.

Getting KDE Apps to our Users

Some time ago, before the world locked down, I pondered that KDE wasn’t very good at getting our apps to our users. We didn’t even have a website that listed our apps with download links. If you were an open source app developer using our tech (Qt and KDE Frameworks) would you come into KDE to build your app or just start a project on Github and do it yourself? KDE has community which means some people to help look over your work and maybe contribute and translate and some promo and branding mindshare and there’s teams of people in the distros who specialise in packaging our stuff. But successful projects like Krita and Digikam and indeed my own Plasma release scripts still have to do a lot on top of what KDE communally gives them.

So I launched apps.kde.org and made the All About the Apps goal which was selected in the hope of getting KDE to support taking our apps to the users more slickly. I didn’t manage to make much progress with the goal which I will readily take the blame for. After some fighting I managed to get our announcements linking to the app stores directly but I didn’t manage to get much else slicker.

What my dream still is would be for apps to have a button that…

  • Bumps the version number in the source
  • Makes the tar and uploads it to a secret place
  • Tells the Linux distros to package it
  • Packaging for Windows/Mac/Android/Snap/Flatpak/Appimage would be in the Git repo and our CI would now build them and upload to the relevant test sites
  • OpenQA style tests would be in the git repo and our CI would now test these packages
  • Another button would make the source and packages public in Microsoft Store/Appimagehub/SnapStore/Flathub/download.kde.org and somehow tells the Linux distros and send the announce to the Discuss group and start off a blog post for you

I just released KDE ISO Image Writer (another project I didn’t make much progress with for too many years) and had a chance to see how it all felt

There’s no nice buttons and while we have a tool to make the tar and I have a tool to add the release to the AppStream file, there’s nothing to bump version numbers in cmake or add releases to AppStream or make templates for pre-announcements and announcements.

How’s the packaging and app store situation?

Windows and Microsoft Store

I had to go out and buy a laptop for this, there’s virtual machines available for free which should work but I didn’t trust them with the hardware needed here and they’re time limited so I’m a bit wary of setting up Craft then having to do it again when the time runs out. Craft does a lot of the hard work building for Windows and binary-factory and elite Craft dev hvonreth is often around to give help.

Getting access to the Microsoft Store takes a sysadmin request and working out what to ask for then working out what to upload. I uploaded the wrong thing (a .appx file) when it should have been a .appxupload file and that seemed to break the MS Store from accepting it at all. After lots of twiddling and deleting and generally turning it off and on again I got it uploaded and a day later it was rejected with the claim that it crashed. While the app had installed and run fine for me locally using this .appxupload thing to install it locally did indeed cause it to crash. We diagnosed that to the elevated privileges needed and after some Googling it turns out the Microsoft Store doesn’t seem to support this at all. So my dream of having it available to install there has not worked out, but you can get the installer from download.kde.org and use that.

There’s still only 9 KDE apps on the MS Store at a quick “KDE” search which seems far too few.

AppImage

These have been around for decades and KDE has always had fans of this format (it used to be called Klik at one point e.g. test KOffice). SUSE devs were a big fan at one point. In recent years its gained auto-update, daemons to manage the system integration, build tools, support from top apps like Krita and Digikam and a centralised place to get it in AppimageHub (not to be confused with the other AppimageHub). And yet mass adoption seems as far off as ever.

There’s two ways I found to build it, with appimage-builder which was easy enough to pick up and make a packaging file which uses packages from Ubuntu and neon.

Or you can reuse Craft (used earlier for Windows) to build on Linux for the AppImage. This also allows binary-factory integration but I don’t seem to have got this working yet. It might also be worth exploring openSUSE’s OSB which might allow for other platforms.

I tried to upload it to AppimageHub but that broke the website which needed some back channel chats to fix. Once uploaded it appears shortly, no further bureaucracy needed (which is a bit scary). It doesn’t appear on the KDE Store which seems to be about themes and addons rather than apps. And I put it on download.kde.org.

It’s hard to know how popular AppImage is within KDE, neither of the AppImageHubs seem easy to search and many apps publish their own in various ways. There’s about a dozen (non-Maui) KDE apps with appimages on download.kde.org plus a dozen Maui apps which are developed within KDE and used by the Nitrux distro. I hear complains that AppImage doesn’t support Wayland which will limit them.

Flatpak and Flathub

This format has lots of good feels and mindshare because it integrates well with the existing open source communities.

The flatpak-manifest.json file can be added directly to the repo (which I’m very jealous of, when I suggested it for Snaps it was rejected and caused me to grump off the whole Goal) and that can be added to binary-factory but also to invent.kde.org CI. There’s an active team around to help out. That gets uploaded to a KDE testing repo where you can install and test.

But to get it out to the users there’s a separate process for Flathub the main host for Flatpak packages. That takes a another week or two of bureaucracy to get published (bureaucracy when publishing software for people to install is necessary and important). There’s also a stats website which suggests it has 300 installs.

Searching for KDE on Flathub gives over 130 results.

Snaps

This works the smoothest if I say so myself. Add the packaging to the snapcraft repo and it builds on the invent.kde.org CI which actually just sends it off to the launchpad builders and it builds for ARM and AMD64. Then you get one of the KDE Snapcraft team (Scarlett, me, Harald) to register it and voila it uploads to candidate channel for testing. It needs manually moved into the stable release channel which can either be done by our team or we can share admin rights. The bureaucracy comes when you need to ask for permissions such ISO Image Writer needing access to disks, that took a week to be accepted. The packages are build using KDE neon for Qt and KDE Frameworks etc and we’ve had troubles before when KDE neon moves onto new versions of Qt but the content Snap has stayed on older ones, but we’re working out when to save a spare snapshot of it. The build tool Snapcraft also has a kde-neon extension which just adds in common parts used by KDE snaps but sometimes that gets out of date too so we’ve had to work out ways around it.

The Snapcraft KDE page has about 140 apps. From the admin page I can see ISO Image Writer has 920 installs around the world (not bad for two days old). The store doesn’t seem great at picking up the AppStream meta data so screenshot and icons are often out of date which I’ve brought up with the devs a bunch of times. It’s centralised around a single Canonical owned store which open source/free software fans can find a bad smell but it is what users want.

Others

I’ve not looked at f-droid, Google Play, Chocolately, or Apple’s App Store. With the probable exception of Apple’s store we should embrace all of these.

I couldn’t find any tools to add release data (the files to download) to AppStream file which is what ends up on apps.kde.org, that feels like a low-hanging-fruit fix. Building pre-release tars which aren’t available publicly seems tricky to do, we have that for KDE neon but none of the app stores have it. Similarly tools to make templates for release announcements can’t be hard, I do that for Plasma already.

So lots of work still to do to make KDE have slick processes for getting our software out there to the users, it’s social and technical challenges and cultural shifts take a long time. Loads of people have put in lots of work to get us where we have today but still lots to do. If you’re up for a challenge and want to help I hope this blog shows the challenges and potential for fixing them rather than sounding too negative. Let’s keep KDE being All About the Apps!

Paddlesport Safety and Rescue Course Provider

I did the training to become a provider of the British Canoeing Paddlesport Safety and Rescue Course (PSR or PSRC). This course is a new course which replaces the old Foundation Safety and Rescue Course (FSRT). The training was led by Calum Mcnichol at Pinkston. Here’s some notes for my own reference and anyone else who cares.

Remit is to train 8 people over 6 hours for safety and rescue in sheltered water. That means “Ungraded sections of slow moving rivers where the group could paddle upstream against the flow (not involving the shooting of, or playing on, weirs or running rapids).
Areas of open water (e.g. lakes and lochs) where the paddlers are no more than 200 metres offshore and the wind strength does not exceed Beaufort force 3, avoiding the
group being swept/blown out of the safe working area. Slow moving estuaries (less than 0.5 Knots)”.

This is a mixed craft course where a range of crafts should be available (kayaks, SUPs, open Candians, sit on tops etc of various shapes). However the trainees only need to use their preferred boat. So they might all want to use sea kayaks all day long but it should include trying to rescue other craft from the sea kayaks.

There’s no need for throwbags in this course. No mention of shout-reach-throw stuff. The use of the word “victim” has been replaced with “casualty” for self-team-casualty-equipment.

Point the trainees to the PDFs on British Canoeing Awarding Body website first and the videos on YouTube. Hopefully they will get ideas of what’s involved first which means less direct instruction and more improving their skills.

In the old UKCC coach syllabuses they always emphasises that demos should be given silently. This is nonsense and can be ignored but still be careful what language you’re using during the demos.

Get them to reflect after the course. Possibly not under pressure (he isn’t a fan of e.g. asking for top three learning points from each person).

Providers need an authentication before the event.

I ran a session on unconscious paddler rescues and I ran it in reverse, talking about what to do with unconscious paddler on the land, how to get them out the boat and finally how to get the kayak upright. I could also include how to get them on a SUP to float to the side and I suppose how to swim with an unconscious paddler. I discussed differences if they suspect a spinal injury and if they are not breathing.

Akademy 2022 the BoFs

Geeks on a mountain

After two days of talks we have moved to a week of BoF sessions. (I’m not a fan of the term BoF but I’ve never managed to think of anything better.) Here’s some notes I made incase anyone is interested.

The big news is the Frameworks 6 session had some Plasma people there too and voila we have a plan for 6. Most Frameworks and even most Plasma is already working with Qt 6. So the last Frameworks 5 release is due in December and then work will happen to finalise the porting to Frameworks 6 and once that’s solid releases will start again using Qt 6. And for Plasma we’ll make a final Plasma 5 release at the start of next year versioned 5.27. That will be LTS so we’ll stop the 5.24 LTS releases and make further 5.27 releases as long as they are useful. The finalising of the porting to Qt 6 will start in January and we’ll schedule a release whenever that becomes practicle which should be not too far into 2023.

Our BoF sessions are Covid secure

We had a session with App Stores looking at what are the most popular products and what methods are there to make money. My notes say we discussed charging some money on the Windows store for say Okular and monitor how well that goes down. There’s also ideas of bundling games together. Monitoring could be implemented with KUserFeedback. KStars could be worth asking money for but that’s already on the MS store for free. Automatic testing would be very useful for app deployment, possibly with OpenQA or other tech. I asked for help with packaging Kontact and Akonadi in Snaps (Flatpaks need it too).

Chillaxing between sessions

The translations, which have always been kept separate in KDE codebase, are now copied nightly into master by the Scripty script. This should make it easier to make tars although releaseme will continue to copy over the latest translations when run. Some apps need CMake updated for this change. Most importantly this means KTuberling can compile in KDE neon for the first time years.

Speaking of KDE neon, we had a KDE neon session. Nate suggested the idea of making a specification that could be applies to brand any distro spin which would require it to ship up to date KDE software, apply recommended patches prompty, use KDE’s Qt branches, use recommended software suite, not change wallpapers etc. We decided that using the neon branch for this was not the way to go but it could be e.g. a Plasma Distro Experience certified brand. Needs someone to make the spec and the test suite.

Back to neon proper we discussed the rebase on ubuntu 22.04 which is almost nearly ready and David Redondo was good enough to do a live upgrade in the BoF but it broke in various ways so I guess some more fixes needed here. The problems of invent gitlab rejecting our server for Git requests was dicussed, it’s the main thing that drags neon releases when we are slow, more debugging is needed. We pondered added RiscV and concluded “do it”. Moving our infrastructure into invent is still blocking on a service which orders the builds. kdeedu-data builds are still broken (because translations are funny here) and Albert has said he’ll write the code for this.

On Wednesday we had a nice hike up the mountain of Montserrat and then an even longer hike downwards.

KDE went up a mountain

On Thursday David Faure gave us a training on debugging and profiling as sponsored by KDAB. He took us through using strace. rr is for record and replay which lets gdb do a reverse run which is useful for non-deterministic tests that randomly fail. And for gdb he recommends using cgdb the ncurses frontend for it. He took us through gammaway which lets you see lots of interesting Qt goings on such as which signals and slots get run, which settings are set in widgets etc etc. radardoc is a good debugging tool for graphics calls. And he took us through compiler sanitizers which get more debug tooling into gcc and clang and works similar to Valgrid but with some different properties.

Later on we went for pizza on the beach.

My Photo Album

Akademy Talks Day 2

The sun is shining, the beach is busy, the cava is flowing, the record shops are full of hipsters. Akademy is in full swing here in Barcelona, Here’s some scribbled notes I took from some of the talks I went to incase they are any interest to anyone.

The keynote was from Ashai dev Hector Martin. Ashai Linux runs on M1 ARM macs. EFI is a security nightmare, it’s an operating system in itself. Linus said Apple Macs won’t be available for Linux unless Apple opens up its GPU. Macs have a permissive mode to boot custom kernels including XNU (Apple’s open source OS kernel). He got himself a patreon and github sponsorship and enough people fund him to do it as a job. He did lots of impressive things to get Linux working on ARM M1 Macs and voila his video shows a Plasma desktop on a Mac.

Neil Gompa on Fedora and KDE

Neil Gompa spoke on Fedora. See http://fedoraloveskde.org/ . Packages by Fedora KDE SIG. Fedora has Wayland by default (also RHEL). Better graphics performance, less resource usage. For gaming SDL is Wayland native (Simmple Direcmedia Layer), needed replaced with a shim library for SDL 1 to use SDL 2. Fedora is first distro for Pipewire for all audio routing (dropping Pulseaudio and JACK). Btrfs by default, optimised for flash storage, transparent compression, improves space efficiency and IO performance. The flagship variant is Fedora KDE Plasma Spin. It has some minor branding and usability tweaks, Firefox as browser, FirewallD and SELinux. Fedora Kinoite launched last year, minimal default experience, rpm-ostree immutable base, apps as Flatpaks. In RHEL Plasma is in Extra Packages for Enterprise Linux. CentIS Hyperscale and AlmaLinux have Plasma ISOs from RHEL. (AlmaLinux is a RHEL rebuilt and replaces much of what CentOS used to.) In the future they hope to make SDDM use Wayland (needs an SDDM release). Fedora workstation is shipped by Lenovo and more, he wants Fedora KDE on hardware. The out of box experience isn’t great for this yet but he’s working with Nate to do it. Plasma Mobile packages just integrated into Fedora Rawhide so maybe x86 tablets and then ARM device support.
Wayland downside are that it has quirkyness, multi monitor quirky, mixed DPI is quirky, Plasma Wayland is pretty much feature complete. Accessibility not there and input methods not there so no screen readers. Plasma LTS was horrible to maintain as a distro because underlying frameworks and apps not inline. He suggests to spend the energy of Plasma LTS dev fixing normal Plasma releases.

Volker Krause spoke about push notifications, they must be part of the platform and app does not need to run, there’s potential for apps to abuse them but they are crucial for some uses. On proprietary systems (Google, Apple, Windows) you are locked in, they can’t be removed. UnifiedPush standardises interface and DBus, Android etc. Push drivers are Ntfy, NextPush (for NextCloud), Gotify. Android distributors FCM bridge. DBus mostly proof of concept. He shows the distributor in the KCM. He shows an app subscribed to notifications of German weather warnings. There’s legal and privacy risks: storage, authentication and encryption is not standardised. We have all the blocks, the main challenge is hosting the provider service.

Lunch Time

Shyamnath Premnadh (Shyam) spoke on How C++ and Python can thrive together. He’s a Senior Software dev at Qt for Python team. C++ is loved, fast, control, mature etc. Python is also popular, at least from Stackoverflow rankings. You wouldn’t use C++ for something quick and dirty. He gives some exmaples of where Python is easier than C++. Qt for Python is an application suite. Pyside6qmlls, Shiboken, assistant, linguist and others. Shiboken makes the bindings, it uses libclang to parse the Qt headers. He shows a C++Papp with Python plugins which can change the themes and other settings in the C++ app. The code to make this is easy and he shows that too. He shows QtScrypt, a proof of concept for integrating Python inside C++ in the same file. He shows pyside-deploy making a Flatpak package for his app.

Volker Krause spoke about Frameworks 6 porting. At Akademy 2019 they made a plan, do the work in the Qt 5 codebase, branch late, actionable tasks. Now KF builds on Linux, BSD and Android. Windows has 30 of 55 building. CI coverage is good. Plasma platform integration builds and works. QtWidget apps work, QML ones need more work. He shows his desktop running Kate with KF6, then Konsole, then Systemsettings. And he reveals that the whole Plasma desktop and KWin is running with KF6. This is not the out of box experience it requires some modifications for QML. ToDo before we can branch is not much. Still to be decided the scope, just KF6 or Plasma as well.

Pleasingly I tested free of Flu and Covid. Masks are still needed though.

Lydia talks about fundraising with Jean-Baptiste. It was lots of work and not cool. They’re trying project specific fundraising starting with Kdenlive. Jean-Baptiste takes the stage, their workload is increasing, they want a sustainable project. That needs a CI for binaries. For 1 year he’s been working with the e.V. board on a fundraiser. Signed a contract in March for the new fundraising software. Launched September. After 12 days it has now raised over €12,000 which is amazing. Challenges: make it sustainable. Increase presence in schools. Keep having fun. Lydia says contact the board if you want to do the same with your app.

Albert Astals Cid talks about security, 9 people with history in KDE (3 of them accounts so old they don’t know when they started). Needs new blood. When they get an e-mail they reply to say “thanks we will look into it”. Then check if it’s a bug or a feature. Then contact with someone who might be able to fix it. Get a CVE and publish. But you need to be careful when else it’ll go on The Register. They would like help from oss-fuzz adding kfilemetadata, baloo, kmime etc. They want KAuth uses audited.

Healthy Mind Healthy Code talk with Harald

Harald talks about Healthy Mind Healthy Code. He became aware some people had problems and struggles with their KDE contributing. It’s important to have sleep. Learn to say no. Have friendships. Reflect on your state on mind, maybe you’re being stressed out by KDE. You should be mindful you should get something out of it. You don’t want to lose sleep over it. Know your limits, do not stress too much if you can’t fix all the bugs in the world (half might do). Sometimes its OK to take a holiday for a couple of years. Do not over plan your life. He points to a Gitlab activity chart showing gaps, gaps are a good thing as it means you did go on holiday.

Akademy Award Winners

Akademy Awards winners for winning app is KStars, winning developer is Harald, winning non-dev contributions is Aniqa.

Akademy next year will be in Greece! Now onto the week of Birds of a Feather Meetings!

Party Time at the Social Event

Akademy 2022 in Barcelona Day 1 Talks

Akademy Talks in Barcelona

Akademy is back, online and in person. FFP2 masks being the only sign of a pandemic having happened. Barcelona is warm and sunny and we’re meeting at the Universidad Polytechniqua de Catalunya in grand lecture theatres with high def projectors. It’s great to see some old faces and some new and discuss the progress of the last couple of years since we could last meet. Here’s some notes on some talks I went to.

Volker Hilsheimer gives the keynote aschief architect of Qt for last 6 months. We are 2 years into Qt 6 and stuff is still being ported. Qt 6.4 is now out and it adds QtLocation as the last major module to be ported to 6. Qt WebAssembly is an important development, zero deploy, near native performance, Web in Qt and Qt in Web, they consider it to be Docker for Apps. How will KDE use it? Lots of work is happening to make Qt prepared for C++20. C++23 is on its way, stuff like the stack tracing library will be valuable. There’s some C++ successor languages upcoming like cppfront and carbon which they want to see what’s relevant. Python is something they have invested in. People are asking about Rust, they’re not actively doing anything but it’s something they’ll need to look into. Many people think of Qt as a user interface library, that’s not the only aspect but it’s a big part of it. What controls are still missing? QtWidgets they won’t throw much resources at, they will keep it relevant and up to date but QtQuick is where they want to put effort. They have not spent a great deal of time making sure Qt apps look great on the Linux desktop in recent years – they are now looking at that again. HMI, Human Machine Interface, is relevant. Connectivity is interesting for Qt (it’s not just a UI framework). Community is important for the Qt project, there’s a long and good history with the KDE community. Qt now has a community manager Pedro Bessa (who takes the stage). Almost 100% of the real world problems being solved with Qt is done outwith Qt Company so your perspective is important to them. 1/3 of maintainers are outside the Qt Company. Having an ecosystem for Qt. A question about speed recognition in Qt? Yes, contribution was this summer to QtSpeech repo.

This big church looks familiar

Adam Szopa goals talk. Goals initiative was started in the distant past of 2017. In 2019 Wayland, Consistency and All About the Apps kicked off. Then Covid happened.

Aleix talks about Apps: if humanity used more of our apps we would have less wars. It’s hard for us to do all the work. Are we as good as it gets to getting the last mile? On all the stores and all the platforms? We always have a one to one relationship with the app and the user. Snapcraft has most apps and 350k base users, 60,000 installs of Krita and Kdenlive. Flathub has 120 apps with Krita and Kdenlive most popular at about 25,000 installs. On Google Play Krita has 1m active installs (Android and ChromeOS) which KDE Connect has 300k installs. The Craft SDK now works for Android. KDE Connect uses native Java-style code in Android. Windows store has lots of users, 1M Krita installs but otherwise only 8 apps. Apple not convenient, incompatible with GPL in the store.

Snaps give us some stats. 350,000 active installs of the base. 60,000 active installs of the most popular apps Krita and Kdenlive.

Niccolo and The Dawn of Consistency. He gives the example of KHamburgerMenu which should have a similar widget which is a panel, having a common component was something he kept talking of but it was never done. App redundancy, one part of the goal was removing multiple applications. This depends if KDE is an umbrella for any app or if it’s a brand that promotes a set of apps. For example Maui is very much doing the wrong thing with their own design with their own Kit and they have their own shell but MauiShel isn’t part of KDE even though MauiKit is. Maybe we should have a requirement for KDE look and feel as part of being KDE. Some apps are a bit stagnant, in general I’d like to move them to Kirigami because that helps consistency. Kate and KWrite use the same code so congratulations. Band consistency, many apps had their own website, there has been a lot of improvement for this. Consistency within applications has improved.

Méven talks about Wayland goal. In Plasma 5.24 we got the Overview Effect, improved NVidia support (where the distro uses the patches), improved stability too. In Plasma 5.25 we got touch mode for better tablet support and a tonne of stability improvements. In Plasma 5.26 we got improved virtual keyboard support, improved graphical tablet support, xwayland and DPI improvements and a lot of stability improvement. But showstoppers are still missing colour profiles, blurry rendering with fractional scaling and many more. Virtualisation and screen recording still needed before people can switch from X.

Announcing the New Goals for 2022:
KDE For All: Boosting Accessibility with Carl
Automate and systematize internal processes with Nate – make sure people’s processes they know about are automated so when they move on that knowledge is still there, e.g. bug triaging, CI checks, document knowledge, doing off-boarding when people leave,
Sustainable Software with Corelius, see eco.kde.org

Barcelona goes hipster with record store cocktail bars

Tomaz spoke on Terminals. Unix users will use a shell, but terminals are difficult. He got some users to use different terminals with various tasks: how to change text size, how to open another program etc. 5 different universities took part. Changing text size. For xterm etc 0%, gnome-terminal 90% could but the name of option is “zoom”. Konsole 100%. Kitty is a new terminal based on Rust got 70%. Copy and paste didn’t work well as everyone used control-c (except on MacOS) maybe we should allow control-C for copy. One student cried in despair. Thankfully Konsole has sane defaults but we are still far from good. He demos the SSH session panel and the quick commands

Devin Lin and Bhushan spoke about Plasma Mobile. Within Plasma Mobile there’s over 40+ projects, 300+ tickets and 6+ active downstreams (opensuse, fedora, manjaro, postmarketOS etc). He showed the new shell as it will be in Plasma 5.26. He shows the quick settings. In the middle is the pin view with notifications, the same tech as desktop. He shows the audio applet and lock screen notifications. For telephony they switched from ofono to modemmanager. Plasma Dialer is for calls. Spacebar app is for SMS and MMS. callaudiod from Mobian for audio routing. There’s convergent apps like Discover, Elisa, Koko, Kasts, Neochat, KClock etc. Some mobile specific apps like Angelfish, QMLKonsole. Supports Pinephones and postmarketOS supporter devices such as OnePlus 6. It can also be installed anywhere on Linux distros. But there is more vendor lock in coming, a fragmentation between open mobile communities. Coming up: Kontact. Improved tablet support. And a great feature would be full convergence – you can walk up to monitors and plug in mouse and keyboard and get a desktop.

Bhush and Devin talk Plasma Mobile

KDE Snap Packages now on ARM and KDE Invent CI

KDE’s apps are available to install from the Snap store. 110 of them are packaged there ready to run on pretty much any Linux distro out there.

There’s 350,000 devices with KDE snaps installed in the last week. The most popular Snaps are Okular, Krita with 50,000 devices this week. Kdenlive has nearly 44,000. Kolourpaint is popular at over 20,000.

Thanks to the help of Maximilian Federle they are now built on KDE’s Invent CI. In turn this farms off the build to Launchpad which means they get built for both AMD64 and ARM64, great for running on your Raspberry Pi.

Take a look at the packaging repo. Come talk to us in the KDE neon chat room. Read the packaging guidelines. All app developers should get familiar with at least the basics of getting apps onto the stores so come and say hi. Lots more Snaps need updates and testing and various fixes.

Krita running from a Snap on a Raspberry Pi

OpenUK Awards 2022

OpenUK is the non-profit body which promotes Open tech in the UK.

Nominations are now open for the OpenUK Awards 2022.

We’ve run our annual awards ceremony to recognise great Open tech contributions for the last two years with great success and this year nominations are open for you to join or point is to the best people, organisations and projects that need rewarded.

Two years ago it we had dinner sent to your door during Covid. Last year we dined at the centre of the world at COP26. This year we’re Lording it up with a ceremony and dinner in the House of Lords on 30 November.

House of Commons

Last week we had a preview of the event, a delayed Burns supper in the House of Commons. One of the wonderful aspects of Open tech is how it gets you to exciting places and meet interesting people. In this case SNP MPs hosted and we got to promote KDE and tech freedom.

So please nominate yourself, your project, your company or your org. Or if you know someone else who should be nominated go and nominate them. We have three fine judges lined up who will go over the entries so remember to give a good writeup of what the work done is and why it deserves recognition along with links to code repos etc so we can research it.

Categories are: software, sustainability, data, belonging, young person, finance, individual, hardware and security.

Nominate now. And take a look at the 2021 OpenUK awards for more inspiration.

Midlothian Council Election 2022 Voting Green and SNP etc

I’m a postal voter for Midlothian South ward. There’s three spaces up for taking and none of our existing Councillors are renewing their terms. None of the existing councillors have written anything easily accessible about what they have been doing for the last five years so it’s no great loss there. When I last looked the pro-Johnson Tory boy of Kieran Munro wasn’t even turning up for council meetings.

I looked through the national council manifestos. These are strange vague documents because they can’t talk about anything concrete, I’m not sure why they don’t include priorities for each area. The SNP one is about how the SNP councillors will work with the Scottish government. The Tory one is about how the Tory councillors will work with the UK government. The Green one is about nice green stuff. The Labour one seems to be about long term Scottish government issues.

Ballot Box Scotland has a useful background summary. Spokes has some analysis of the Edinburgh manifestos but nothing on Midlothian.

I couldn’t find many local party manifestos when I Googled and looked on their websites. Labour has some stuff on their Facebook page about community police teams and against the congestion charge for Edinburgh, I’m all for the congestion charge although I do think it needs implemented to charge people in Edinburgh as well as out. They currently run the council and proposed to raise council tax this year which is probably no bad thing but they were voted down. Their national manifesto says they’ll get rid of the council tax which is interesting as it’s the first I’ve heard of that policy from them but that’s not relevant to this election.

The SNP Midlothian Manifesto is mostly also about national policies. I delivered some leaflets for our local candidate Ellen Scott who is a well kent community figure running the Gorebridge Hive so certainly her actions are concrete.

The Greens seem a nice bunch when I had a beer with them, I can’t find a manifesto and the only concrete policy seems to match my view on the Edinburgh congestion charge.

The Conservatives also don’t seem to have a manifesto for Midlothian, their twitter feed is busy but only about Scottish and UK issues and they seem to go on about voting against the SNP when we have a Labour run council.

All a bit disappointing, I’d want to hear policies on the Gladhouse reservoir parking but neither of the candidates I asked seemed too fussed (probably because it needs a big car park which is expensive and nobody wants to be seen to be attracting cars). I’d want policies on getting a useable cycle path into central Edinburgh. I’d want to know if Gorebridge will get a senior school any time soon.

Balancing the candidates and my preference for parties I’ve gone:

  1. Malcolm, Green (nice guy, lives locally, not much chance of getting in)
  2. Ellen, SNP (very useful local person)
  3. Douglas, SNP (I don’t know him but SNP seem competent to run the council)
  4. Hazel, Labour (generically uninteresting from what the leaflets say but mostly harmless I guess)
  5. Kelly, Labour (as above)
  6. Alba (the less mad of the wee parties)
  7. Libertarian (the most mad of the wee parties)
  8. Robin, Tory (tactical vote last for the high-tax high-inflation low-freedom British nationalist corrupt party)

Local democracy seems not very functional around these parts. I suppose if I want it to be better I should get more involved but y’know, reasons.

Remember to use all your votes cos you never know which ones will count!

BC Advanced White Water Coach Training with Matt Haydock

I did an BC Advanced White Water Coach Training with Matt Haydock overseen by Ken Hughes.

We started with Ken doing a session on paddling in a ~10m wide circle using constrains based coaching to limit the possible options of the person being coaching until they got the right answer. Turns out that when turning in a circle you use your inside stroke much more than the outside stroke.

We did a varied practice session on eskimo rolling with Matt. Go and roll. Go and roll after paddling about. Go and roll without any setup. Go and roll in the moving water by the fall. Roll and do Bren’s helicopter under the water then roll up. The point is that we rarely practice rolling in the river but on a not-too-cold day it’s fine to do if you have a drysuit and it doesn’t ruin the rest of the day and it’s well worth doing rather than just a roll at the end of the day when you are cold and tired.

We did some sessions on the first two drops of tripple step at the Ettive looking at attentional focus to get a clean line through the section. It does help a lot to look ahead of you where you’re going.

We practiced some boofs off the last drop.

The next day we had three students come and we coached them in the pool at the bottom, the bottom drop and then I did the top two drops. Using video to review and watching each performance to review who got the slickest. The aim is to do it, do it cleanly then do it so it looks good on Instagram.

OpenUK Awards 2021 Looking for Nominations

Do you know a person, project or organisation doing great work in open tech in the UK? We want to hear about it. We are looking for nominations for people and projects working on open source software, hardware and data. We are looking for companies or orgnisations working in fintech with open, helping achieve the objectives of any of the United Nations Sustainable Development Goals. Nominations are open for projects, organisations and individuals that demonstrate outstanding contribution and impact for the Diversity and Inclusion ecosystem. This includes solving unique challenges, emphasis transparency of opportunities, mentorship, coaching and nurturing the creation of diverse, inclusive and neurodiverse communities. And individuals who you admire either under 25 or of any age.

Self nominations are welcome and encouraged. You can also nominate in more than one category.

Nominations may be submitted until 11.59pm on 13 June 2021.

Awards Event 11 November 2021.

Those categories again:

Hardware – sponsored by The Stack
Software – sponsored by GitLab
Data
Financial Services – sponsored by FINOS
Sustainability – sponsored by Centre for Net Zero
Belonging Network – sponsored by Osmii
Young Person (under 25) – sponsored by JetStack
Individual – sponsored by Open Source Connections

Read more and find the nomination form on the OpenUK website.

Winners of Awards 2020, First edition

Young Person • Josh Lowe
Individual • Liz Rice
Financial Services and Fintech in Open Source • Parity
Open Data • National Library of Wales
Open Hardware • LowRISK
Open Source Software • HospitalRun

Culture Wars: Gender Recognition Reform Bill and Hate Crime

It’s election time in Scotland and one aspect of recent elections from the populist parties such as the Johnson Tory party is to use emotive social media to create Fear Unnerving and Doubt (FUD) around cultural issues. I took a quick look at the two main ones which people bring up, knowing that I write from a position of privilage as a white straight middle aged well off landed voter.

The Hate Crime and Public Order bill was recently passed by parliament and supported by all the non-Tory parties.

https://www.parliament.scot/-/media/files/legislation/bills/current-bills/hate-crime-and-public-order-scotland-bill/stage-3/bill-as-amended-at-stage-3.pdf

This creates the idea of aggravated offences where if you’ve broken the law it’s even more broken if you do it based on the victim’s membership of a group:

And it create a new offence for threatening or abusing someone or communication threatening of abusive material to someone to stir up hatred against a group.

All of this seems very sensible, it doesn’t crimialise people for making flippant remarks, doesn’t criminalise anything except what a reasonable person would consider to be abusive, the next parts of the legislation set a high standard of proof, and it’s followed by a load of defenses around human rights and of freedom of speech and religion.

In normal leadership the Tories would want to be seen as the party of law and order and fully support this, but under Johnson they just want to support threatening and abusive behaviour.

The other issue is the Gender Recognition Reform proposed bill which never did make it through parliament, but may come back in the next session. I’ve never seen anyone explain this properly, not even SNP ministers, but it’s all set out in the government notes.

https://www.gov.scot/publications/gender-recognition-reform-scotland-bill-consultation-scottish-government/pages/11/

It de-medicalises legal gender recognition for transgender people. This is the same as being gay has been de-medicalised for many years, being gay isn’t a psychological problem that should be dealt with by doctors and it was degrading back when it was treated as such. The current law is degrading by forcing transgender people to be medicalised when there’s no need and should be tidied up.

But nothing in the proposed law affects equal rights, nor could it. Those are governed by the Equalities Act 2010 and reserved to the UK government. Single sex services such as toilets or refuges against domestic abuse can exclude trans people as needed in line with a risk assessment. This has worked well for over a decade and it’s very puzzling that the SNP leadership don’t just point that out.

Instead we have an essay by Joanna Cherry (https://www.thenational.scot/news/19101924.joanna-cherry-possible-support-rights-trans-people-women) which starts with unrelated lies: “Lesbians are same-sex attracted. We are attracted to women’s bodies not to male bodies. To say we must be attracted to male bodies is homophobic” nobody has ever suggested this but this is writing which is clearly designed to put fear into people worried about the unrelated issue of Gender Recognition.

There’s also an article by Joanne Rowling (https://www.jkrowling.com/opinions/j-k-rowling-writes-about-her-reasons-for-speaking-out-on-sex-and-gender-issues/) where she similarly wrongly conflates gender recognition with the unrelated, reserved and decade old Equalities Act “When you throw open the doors of bathrooms and changing rooms to any man who believes or feels he’s a woman – and, as I’ve said, gender confirmation certificates may now be granted without any need for surgery or hormones – then you open the door to any and all men who wish to come inside. That is the simple truth.” This is a lie, as the Equalities Act doesn’t require surgery or hormones for transgender inclusion. Rather the Equalities Act has a much wider definition of transgender protection which doesn’t involve the Recognition which the SNP are proposing to de-medicalise:

“ A person has the protected characteristic of gender reassignment if the person is proposing to undergo, is undergoing or has undergone a process (or part of a process) for the purpose of reassigning the person's sex by changing physiological or other attributes of sex.” Equalities Act 2010.

It’s easy to blame this on social media, it is perfectly made for incomplete arguments to be thrown around and raise emotions rather than truth, but I guess it was no better back in the section 28/clause 2a days when equally the media seemed incapable of reporting normally on the topic and politicians were scared to defend it properly. It’s creating quite the toxic politics, I had to remove a trans-phobic sticker from a lamp post recently. There are real issues around that need dealt with in this election: why is England the worst country in the world for Covid deaths, with Scotland not far behind? why is the UK government taking away freedoms and breaking international agreements? would a goods border with England be worth the gains of independence?

In summary: Hate Crime Bill limits abusive behaviour but only when unreasonable and does not affect free speech or religion. Gender Recognition Reform de-medicalises being trans gender but does not affect Equalities legislation which is reserved to Westminster and a decade old.

KDE Gear 21.04 Apps: Send us Your Features

KDE Gear is the new name for the app (and libraries and plugins) bundle of project that want the release faff taken off their hands. It was once called just KDE, then KDE SC, then KDE Applications, then the unbranded release service and now we’re banding it again as KDE Gear.

We’re working on an announcement now for 21.04 so if you have a project being released as part of KDE Gear send us your new features on this merge request.