Happy new Apper release! 0.8.0

Happy new year everyone 🙂

I was planning a to release Apper as Christmas gift, but well the release wasn’t good, lot’s of small bugs here and there due to the changes to accommodate QML and the new plasmoid updater.

The new release was initially just to be an update to PackageKit 0.8.0 new API, but then I realize I could do lot’s of improvements without losing time with things I want to port to QML.

One of the biggest changes in PackageKit 0.8 series is a feature from the moment I joined the PackageKit project, and thanks to Matthias Klumpp we now can run parallel transactions in the daemon, which means you will be able to browse packages while installing (if the backend supports that), right now Apper is still designed to the old behavior of only one transaction at time, but most backends doesn’t have this feature anyway… I’m planning on doing this for APTcc but forking a process and doing IPC is not something you want to do every day… So it’s likely Apper 0.8.1 or later will be able to do two things at time.

So what changed from Apper 0.7.x to 0.8.0:

  • When untrusted packages were to be installed we only knew that there were some not which ones, now you’ll get a proper description.apper0.8-3
  • When a install/remove/update transaction was started you had to wait till simulate to enter your password, now PackageKit asks it when simulating, so if simulate takes long (the case of a few backends) you won’t miss the password dialog.
  • It’s now possible to automatically download new updates when they arrive and have a notification to install them when they finish downloading, so you review and install.
  • All transaction messages where added to a list and a tray icon was created to show them, this was a duplication of KDE notifications so you won’t see an note icon with backend messages on the tray, they will arrive as regular notifications.
  • When a restart is requires there is no more a restart tray icon, you will get a persistent notification with restart/logout options.
  • From the above you can see that all tray icons were moved to a different structure, the remaining was the update icon, which from my last post you can see I ported it to a plasmoid, so if you don’t want it, just remove from the tray (you will still get a notification when new updates are available and full Apper GUI will open). apper0.8-2 apper0.8-1
  • To have Apper more smart and remember if it has shown a notification about new updates, I decided to move all apper-sentinel code that was related to monitoring transactions and showing the update icon to KDED, this way the code is much easier to debug, maintain and remember what we already did. With this the annoying bug of prompting about new distro upgrades every 5 minutes is gone sine we know when we have shown that.
  • Information about new distro upgrades in the Apper Updater GUI was moved to a KMessageWidget
  • I’ve also made packagekit-qt API a bit lighter so it’s probably a bit faster.
  • I also fixed some other bugs that happened to be in the way of the changes.
  • APTcc also got several improvements, fixes and speed ups.

I also want to thank the people who reported bugs, committed fixes and tested it, so it can be a good release.

For the future I first want to make APTcc to handle parallel transactions so I can test this new way of dealing with PackageKit transactions, then I’ll start porting it to a QML interface which will make the experience much nicer.

Download (mirrors might be still syncing):

Thank you for using it and enjoy the new release 🙂

Happy new Apper release! 0.8.0

new Apper updater


I’m very glad to be able to be making new posts about stuff I like, though my situation still not finished, we have sent some papers to lawyers at Argentina and since this year booking is too much expensive my wife will only be going there next year. The donations money helped a lot but almost half of it is already gone, we still need to pay the Germany lawyer and if you know BRL vs EUR it doesn’t play  nice 😛 Maybe next year I’ll set another pledgie, and I hope to be able to have payed most of bank debts till next year…

Back to the topic, I’ve already said I was planning a new updater, and now I want to share it with you. I’m so happy about it because it makes the updating use case much easier… come on! Just click the icon (maybe do a quick) and press update 😛 how easier could it be?

Apper 0.8.0 will probably be released next week, tomorrow I’ll try to do the last strings changes, and then I’ll give the translators a week to update the few missing strings, 0.8.1 hopefully will follow by January to fix the new introduced features that certainly broke something.

I’m not entirely happy yet with how it works but it works. I still have to show some KDialogs to review dependencies, agree with not trusted packages… hopefully in near future all of that will be inside the plasmoid.

The old tray icon will be gone with this and more changes (I’ll blog when I handle the release) to move away from the regular tray have been done too.

And really thank you very much for your support, thanks to everyone that cared about me I was able to be at my wife’s birthday 7th, my soon 8th and today mine on the coolest day of the year 12/12/12 😀

Enjoy the screen shots:

Getting Updates
Getting Updates
A rare up to date system
A rare up to date system
The list of updates
The list of updates
Downloading Updates
Downloading Updates

UPDATE – I forgot to put the screen shot when you click and expand an update, to see it’s changelog (still misses some info):

Updates Changelog
Updates Changelog
new Apper updater

Who said Apper couldn’t have a plasmoid?


This will be a quick post, I’m about to travel to my parent’s house this weekend, it’s elections on Sunday, so I’ll go right to the point.

When I first started Apper (well it was KPackageKit), people were all “wow plasmoids are so cool”, and well they were indeed but 99.9% of my time I don’t even see my wallpaper, my desktop has nothing but the default wallpaper, so I thought “Why should I make a plasmoid for it?”, well it isn’t a fancy comic strip, or an cool CPU usage widget.. Who would want to go to the desktop just to search for a package?

It turns out that after I wrote a plasmoid for print-manager and realized it was really that easy to do, and also that for some releases now you can even put them on the systray I started thinking what else can I make? It was fun so I wanted more…

It turns out that I sort of hate systray, but for system (and only for that) stuff it’s quite handy to have smaller icons. Now that PackageKit 0.8.x has it’s API frozen and I have fixed all changes in packagekit-qt a new Apper release is needed. The new PackageKit is awesome, though most backends (including my aptcc) doesn’t support parallel transaction, adjusting to this new ability is a must for Apper, so I started hacking in it again, I want to replace the current UI with QML but there are distros waiting for my release so I will do this change slower.

Apper-sentinel has 3 systray icons, one for reboots, one for backend messages, and one for updates. It turn outs that I can get rid of the three of them. The reboots can be made a persistent notification, if the user doesn’t care it will just go away. The backend messages should already be simple notifications, and the updates icon can be a plasmoid! Yup a plasmoid!

Wouldn’t it be cool to see the updates icon on the tray click it and see the updates right away, push an “Update” button, and have it started? And if you don’t want it on the systray you can move to another place, it makes you free from systray!

It’s not finished, but already lists the updates:

A quite huge list of updates…

Yes, I do update my system 😛


Who said Apper couldn’t have a plasmoid?

Apper 0.7.1 released


I’ll be short: a new Apper version is out, but don’t expect much it has only 2 new features and a bunch of bugfixes, I’ve made a small lists of what have changed:

– Added a origin column
– Added a “Installed Version” column to updater UI
– Fix bug on exiting when the origns model had changes to do
– Fix bug that prevented EULA/GPG key from being accepted
– Fix tray icon to properly show a restart action
– Fix Session Interface not to crash, and respond to button clicks when no package was to be installed
– Fix bug when clicking on a file to install

You can download it here.

I’m planning another big interface change, but I had not draw it yet since a few components are not yet clear to me how to be handled…

I was to give special thanks for Matthias Klumpp for preparing and uploading Apper’s and PackageKit’s packages to Debian (yes they are on the repos – not this version yet but his is already uploading).

I want also thank Fedora and openSUSE guys that helped testing some of the above bugs so we could fix then faster.

Enjoy this new release 😀

Apper 0.7.1 released