Muon Suite 2.0.1 released

May 30, 2013

I am glad to announce the first bugfix release for Muon Suite 2.0. The Muon Suite is a set of package management utilities for Debian-based Linux distributions built on KDE technologies.

The 2.0.1 release fixes several hot stability issues in shared Muon components. Additionally, several UI glitches in Muon Discover were fixed.

Packages for Kubuntu 13.04 are from the QApt repository, and in the main repositories for the development version of Kubuntu 13.10. Packages are set to be available as a release update in Kubuntu proper soon.

Further technical information about the release, including source tarball downloads and a detailed changelog, can be found at the project pages here and here.

QApt/Muon Suite 1.1 Beta released

December 5, 2010

As promised, this weekend I am proud to present QApt and Muon 1.1 Beta. Most of the major changes can be found in the 1.1 alpha release announcement. But, of course, the major feature for version 1.1 of the Suite is the new Muon Software Center, which you can read all about here.

Prerelease packages are available for both the development version of Kubuntu 11.04 via standard means, and for Kubuntu 10.10 via the QApt PPA. Please test them so that the 1.1 release can be great!

The Muon Software Center can be installed by installing the “muon-installer” package, or by clicking here, as long as the PPA is already added and you’ve checked for updates.


Here is a detailed changelog of what has happened since 1.1 alpha:

QApt 1.0.80


  • Added a new QApt::History class. It provides an interface to the APT history    log(s). It provides a list of all entries in the logs, with each entry providing    a start date, a list of packages acted upon as well as any errors that may have    occurred during the transaction.


  • Update authorization code to work with Polkit-Qt-1 0.98.1 and above.  (Affects users of KDE 4.6) An API break in Polkit-Qt-1 caused the QApt Worker to crash whenever it tried to run a command that needed authorization. Support for Polkit-Qt-1 versions older than 0.98 is still present.


Muon Suite 1.0.80



  • Added a common history log viewer to libmuon.


  • Fix a bug with the new DownloadModel where items from previous downloads would remain if the user cancelled the download.

Muon Package Manager


  • Avoid a l10n reverse-lookup for package status by using the UserRoles available to us in QStandardItem to store the QApt::Package::State, and emitting this state when passing it to the PackageView


Sonic 4

February 4, 2010

Sonic 4 has me in a froth. I am frothing.

If they could make a solitary boss room as epic as that of Lava Reef Act 2, but in HD, I could die happy. In fact it would be so awesome it would probably kill me.

Seriously, this crap be epic

Update on KDE-ish stuff

May 29, 2009

KDE/Kubuntu stuff

Hmm, it’s been a while.

Right off the bat I’d like to say that I failed at getting user-defined wallpapers in shape for KDE 4.3. 😦 Things have been pretty busy for me; Kubuntu 9.10 was opened for development and we were knee-deep in package merges. Then I went on a trip the week before string freeze and was unable to do any development work whatsoever. By the time I got back school took up the remaining time I had left, and as a result the Weather Wallpaper is not sporting user-definable weather/wallpaper pairings.

I do have a patch now that re-inserts the pushbutton for the advanced dialog where all that is configurable (it was lost in the port to libplasmaweather) but it’s way past string freeze now. There is also a fiddly problem where the custom wallpapers only work in the preview in the Desktop Settings dialog or inside the plasmawallpaperviewer. I’m going to have to just revisit this in 4.4 I suppose.

On the brighter side of things, I’m really enjoying developing for Kubuntu 9.10. Our “Universe” packages for third-party KDE-related software are looking good so far, and we have some really neat ideas for this next release. In fact, most of the guys are away at the Ubuntu Developers Summit as we speak, further formulating these evil plans. After having an at-home UDS sprint of my own, I had some time to work on QuickAccess.

QuickAccess 0.9 news

When I first took over QuickAccess development when the author disappeared and the widget was in an uncompilable state for KDE 4.2, one of the first things I noticed were that:

  • It used a lot of custom code
  • A lot of this custom code could be replaced with proper stuff from KDE

Unfortunately, I took over development right before Kubuntu 9.04 was released, and due to time constraints and Kubuntu being in every freeze imaginable, there wasn’t time to cruft-crush. But now with everybody away at UDS leaving nobody to sponsor my packages to Main and now that I’ve done pretty all that I see needs done in Universe, I’ve had time in the latter portion of this week to finish my early attempt at cleaning up QuickAccess.

The main cleanup came in replacing the ResizeDialog class. It’s basically a Plasma::Dialog with resizing implemented by itself. All that I can assume is that back in the day Plasma::Dialog’s weren’t resizable? Anyway, the bulk of the work in this refactoring came from porting QuickAccess over from an IconWidget that presented a ResizeDialog when clicked to a proper Plasma:PopupApplet . A PopupApplet remains as a normal widget on the desktop but turns into an icon that presents the widget when clicked in the panel.

This, unsurprisingly, fixed a ton of bugs:

  • We now get resize handles when hovering over the corners of the applet
  • Plasma no longer crashes when you drag a folder or file to the desktop
  • The keyboard shortcut settings now work
  • The applet now remembers its size on the desktop. (and is actually an applet instead of a little icon!)

This, also unsurprisingly, introduced a few new regressions that I have yet to figure out/fix:

  • Opening the “properties” dialog of a file while the widget is in the panel causes the entire dialog to go empty
  • The same disappearing trick happens on the desktop, except the file properties dialog doesn’t appear.

Dunno what’s causing that, but I would like to get that fixed before 0.9 is released. (Otherwise it looks pretty good to go)

I also noticed that there was this IconManager class that seemingly provided file previews. It was copyrighted by Peter Penz and a quick Google told that it actually came from Dolphin, though I could not see it in the current source. It turns out that since KDE 4.1 that class went through an API review, was renamed to KFilePreviewGenerator, and was moved to kdelibs. (And also got many, many speedups and bugfixes along the way) So that was a no-brainer; IconManager got the axe quick, and QuickAccess now generates file previews like the rest of KDE.

On the subject of file previews, I stole the advanced preview configuration code from FolderView, so now fine-tuning the preview settings in QuickAccess should work more like FolderView in that regard. (Folderview’s file preview settings implementation was much simpler and had a cleaner UI) I also turned on directory previews on by default, so if you have the icon size set large enough (22×22 or higher) you should see KDE’s nifty directory previews like in Dolphin.

There are still other bits of code like QuickAccess’s Settings class that could probably be done away with, (There’s a bunch of scary stuff for detecting when settings need to be saved and such) but since the settings stuff “works” for the moment it’s of a somewhat lower priority. It will save 343 lines of code or so if it gets removed, so it is something that needs to be done eventually.

Speaking of lines of code, after this cleanup, QuickAccess has 3,030 lines of code. This is down from 4,233 lines, meaning that 1,203 lines of code got removed, or about 28.5% of the original code base.

I’ve also done a little bit of good old fashioned bug-busting too. 🙂
QuickAccess’s ItemView class is based heavily off of Kickoff’s flipscrollview class, and shared some of the same bugs, such as a “phantom drag” appearing after you drag/drop something. This was fixed in KDE 4.3, and I’ve made the same fix to QuickAccess. I also nabbed an RTL fix from Kickoff, and now the back arrow button should face properly on RTL systems.

All in all I’m pretty excited about QuickAccess 0.9. 🙂
I’m going on a short weekend vacation later this afternoon, and won’t be back until Sunday. So bye until then.

On the brighter side of things.. (Kubuntu 9.04, i18n)

April 22, 2009

While Kubuntu 9.04 will have the best l10n of any Kubuntu release in a long while, (and that’s not saying much) things are still far from optimal. While my second language, Spanish (which I don’t profess to know that proficiently) looks at least decent, other languages such as German are hit somewhat harder due to the fact that we scared all the German doods away with crappy l10n in past releases, so there is nobody to translate the string changes/new strings that we make when we add patches.

Anyways, on to the brighter side of things ™. One thing that had bugged me since KDE 4.0.0 (and probably a bit before) was that I always had to set my clock to am/pm from its default of military time, and from the default of metric measurement to the imperial measurement system. At first I assumed (In the KDE 4.0 betas/RCs) that it was just one of those little bugs. Then I forgot about it until I installed KDE4 on another computer. Eventually I got used to it, sorta. But every once and a while you’d encounter someone on IRC who couldn’t figure out how to switch to a 12 hour clock, so I guess it wasn’t entirely obvious how to do that manually. It is a bit of a pain.

In Kubuntu 9.04, however, startkde detects your country based on what you set the system to at the time you installed linux, and sets that as KDE’s county in kdeglobals (as long as you haven’t set it or other locale settings manually). This is thanks to the efforts of Harald (apachelogger) The result? Now you do not have to worry about manually setting time/money/first day of the week/measurement systems.

Even if translations are still somewhat buggered, this neat little enhancement tickled me pink. 🙂

I also received some encouraging words on IRC today:

[canesalato] Hi jonathan, I just wanted to thank you for your hard work on jaunty. You helped in almost every bugreport I’ve opened and backported a lot of fixes…I think jaunty is really a polished distro compared to intrepid and not only because 4.2 > 4.1. Thank you again 🙂
[JontheEchidna] Thank you 🙂
[JontheEchidna] I’m glad I could help
[canesalato] If you ever come to Italy (i live in pisa) I’ll offer you beer and pizzas till you are full 😀
[canesalato] have a nice day 🙂
[JontheEchidna] you too

I must say that I do not really know who this was. Apparently I’ve triaged/fixed a lot of his bugs, but I do not recognize his IRC name from any bugs I’ve triaged. Still, it’s nice to see that even though Kubuntu has received a lot of flack in the past about it’s KDE packaging (I seem to remember the early KDE 4.0.x packages being perpetually late/buggy) that, at least, I am making a noticeable difference in somebody’s computing experience. That is really the best reward I could ask for. Making the Linux desktop better for myself and others is my main motivation.

On a related note to early KDE 4.0.x packages, I really think that Kubuntu 9.04 will be a chance to redeem itself, so to speak. The early KDE 4.x packages from Kubuntu were buggy, yes. The situation got a lot better in KDE 4.1/Kubuntu 8.10, but the stigma still remained. Looking back at KDE 4.1, I believe I know why this happened. KDE 4.1 was better than KDE 4.0. Worlds better. But still, being only the second major incarnation of KDE 4, it was still lacking something in the sense of maturity, and still had its fair share of bugs.

Then when one of the first (Not the first, mind you) KDE4-based distributions get released (Kubuntu 8.10 in case you were wondering), lots of people upgrade. When a userbase the size of Kubuntu was exposed to the not-quite-as-mature-as-it-is-today codebase of KDE 4.1.2, problems were bound to be found. Those for which everything worked mostly okay usually stayed quiet, unless they were vocal Kubuntu fans. 😉 Those who inevitably ran in to problems usually did report them, albeit usually not in the preferred method. (details bug reports…) Since those who have problems tend to be more vocal than those for which everything works fine, people were able to find a lot of people online with who were also having problems, regardless of whether or not they were actually the same problems. (Once again, there’s no way to tell without bug reports…) Couple this with KDE4-haters who are vocal against KDE4, and suddenly you have people murmuring over the internet that Kubuntu, does in fact, suck.

People who have problems take a quick look on the internet and see other vocal users having problems. (Usually generically blaming “the packaging”) Then, without taking the time to report a bug so it can be determined where in the software stack the bug lies, people who see other people complaining also complain while citing poor packaging as the problem, often without even describing their problem in their “kubuntu sucks” post at all. You can see a cycle here…

This really wasn’t fair to Kubuntu/its developers, but I suppose a stigma of things going badly in the past can tend to stick around.

But, again, onwards to the brighter side of things. I am quite confident that Kubuntu 9.04 could be the “redeeming release”. The packaging is pretty solid this time around. The whole experience is polished, too. KDE 4.2 itself brings loads of polish. (Though you know KDE 4.3 will make it pale in comparison) GTK applications no longer look like they’ve come out of a blender. Amarok and Dragon Player now prompt you to install missing codecs. When KDE detects flash content in Konqueror, the “do you want to download flash from macromedia so that you can go through all the steps of installing it yourself” prompt that used to be there has been replaced with a dialog where one needs to merely press “install” and enter their password to let the computer do all the work for them. The device notifier gives you things to do when you insert audio CDs. The update/reboot notifier now uses KNofication instead of those ugly KPassivePopup bubbles. All in all it’s years ahead on Kubuntu 8.10, contained in a quick-booting, generally snappy package.

So that’s me, trying to look on the brighter side of things. Hopefully I’m not being delusional, and I hope you enjoy Kubuntu 9.04 tomorrow. (Or today, if you’re in the right timezone) 😉

Jaunty retrospective (plus a few other misc. things)

April 21, 2009


I suppose since Stephan has done his retrospective that it is time for me to stop procrastinating and to make mine.

First off I must echo Steve’s sentiments in that I’ve enjoyed working with the Kubuntu Team a lot. Harald has been sorely missed since he disappeared in the middle of the cycle, but I think that the team managed to pull together and fill in the void. I must say that I never realized how many of those little file conflict bugs that you encounter in the alphas were fixed by Harald until he left and you had to do them yourself…

So, stats, figures, damn lies:
– 115 packages uploaded, +50 uploads from last year’s stats
– 55 bugs fixed (of which I was the sole package signer, I believe)
– Coordinated one KDE packaging release
– Participated in all four or five KDE packaging releases
– Triaged an insane amount of bugs
– Got several thousand import spams from Rosetta (Steve got 20k and all those packages uploaded since he was the only one brave enough to upload all of the KDE l18n packages)

Some things I regret:
– The amount of open, untouched bugs is a bit higher than I would like
– I never got Jockey-in-System-Setting working, it still crashes. 😦

Overall the Kubuntu 9.04 cycle has been great for me. Hopefully next cycle will be even better. For now, here’s a shout to everyone working on Kubuntu, Ubuntu, and KDE! I’m glad to be a part of all three.

Obligatory screenie:

Weather Wallpaper

A few words on the Weather Wallpaper….

Well, it moved again. This time the plugin has moved back to kdeplasma-addons. It left behind the wallpapers it provides in kdeartwork. (There are rumblings of a contest in the near future, by the way.)

I also have to note the Petri did an awesome job with libplasmaweather. We now share the same configuration interface with the LCD weather widget and the Weather Forecast widget. This means less copied code that I have to maintain. As a consequence of being ported to libplasmaweather, the weather wallpaper also has gotten more robust. Changing locations on the fly now works without having to unload/reload the wallpaper plugin. Going back to a location you’ve already used doesn’t work to well, though, but it’s progress.

Also thanks to aseigo’s awesome work, you won’t have to wait for 30 minutes for weathery goodness if your network is down at startup. Hard things made simple indeed.

As a consequence of the port to libplasmaweather we’ve temporarily lost the Advanced Settings dialog I blogged about last time, but it should be fairly easy to get back once I figure out how to add the button to the layout of the WeatherConfig widget from my plugin. (I’ve not had time what with it being the week before Kubuntu 9.04 release) Once this is all squared away I can finish implementing user-configurable wallpapers, and the wallpaper will be feature complete for KDE 4.3.


Shortly (most likely after Kubuntu 9.04 is released and before Kubuntu 9.10 is open for development) I will be making a new release of QuickAccess. If you don’t want to wait you can check out trunk with the following command:

bzr branch lp:quickaccess

What will be new in 0.8?
– The plasma widget has a a nice tooltip when you hover over it. Nothing fancy. The tooltip’s icon changes when you change it in the config dialog, too.
– If you have it set in your Dolphin settings, Copy to/Move to items will appear in file context menus
– Add an option to use Dolphin’s folder sorting settings, so if you have per-folder sorting settings in Dolphin they will be reflected in Folderview if you enable this option. (Off by default) Patch by mck182
– Single click vs. Double click navigation is configurable inside the configuration dialog, in case you don’t want to double click your way through the widget if you’ve set KDE to double click in System Settings. Patch by mck182
– Import full translations for: es, fr, gl, pt_BR, sv. zh_CN is about 33% translated.

– Import some capitalization style/typo fixes for the strings in the configuration dialog from an opensuse patch. This does sorta make the above full translations not so full anymore 😦
– Initially set the icon size to the configured size to avoid supersmall QuickAccess widgets on the desktop
– Extract messages for translation from the .ui files

I may get rid of the tabs in the configuration dialog and make each tab its own separate module for 0.8, but I could see that being pushed back to 0.9.

These are exciting times for all three projects I’m working in!

Plasma Awesomeness Wallpaper

April 2, 2009

So after I used my ub3r 1337 haxX0rz skillz to code eyecandy that will make everybody’s Plasma crash even if they aren’t using it, I decided to code something a tad bit more important.

I plan to make this code available to the masses infect all of y’all’s computers soon, but here’s a screenshot:

It basically detects whether a Democrat or Republican is in office, and displays that wallpaper even if a Democrat isn’t if office. It displays that picture all the time, because that’s just how I roll. This will become the default wallpaper plugin for KDE 4.3, and for every KDE 4.x release that Obama’s in office. (Which will probably be forever)

Actually to tell you the truth, I’m a just bit late with April fools. (Plus I don’t really care much for either Republicans or Democrats to tell you the truth :P) I wish my President, President Obama, the best and hope he does the job to the best of his abilities. Let’s leave any political discussion at that, though. I really don’t want to have to deal with political comments. The above was done purely as a lighthearted joke, and any comments that go beyond “Ha ha!” will probably get deleted.

Real stuffs!

Today I was busy making real-life improvements to the weather wallpaper plugin, explaining the lateness of my prank. The wallpaper plugin now uses image painting code more similar to that of the default “Image” wallpaper plugin that most everybody uses. That means that it will autodetect what resolution you have and try to find the best wallpaper for your resolution, where available. Otherwise it will scale the closest wallpaper found to your screen res. This means no more tiled wallpaper. 🙂

It also now handles all (as far as I know of) weather conditions that the weather dataengine can throw at it, aside from prediction icons which would be useless in our case. That is not to say that each weather situation has a unique wallpaper. =P

I still need good “free as in software” wallpapers for: storm, hail and a clear night, preferably in a high resolution that I can scale down into smaller resolutions. Any suggestions would be very welcome.

The quirks and limitations list is dropping, and I think that I could make a “stable release” to kde-look or somesuch soon. Remaining issues include:

– The dataengine for the first location doesn’t seem to go away after setting a second, new location, so changing the location won’t work unless you change to another plugin and change back or restart plasma
– The initial “you need to configure this wallpaper” wallpaper is gone now, and I plan on adding a configure button later once I figure out exactly how…
– NOAA still don’t work, and I don’t see it working until I figure out a different way of getting the weather from the dataengine. I hear the LCD weather station has some nice code, though…

So the list is growing smaller! That’s good news. 🙂 The instructions from last time still apply, but note that you will need the wallpapers from kdebase-workspace and kdeartwork now, or else you’ll be seeing a plain blue background for some weather conditions.