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.
- 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).
- 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.
Thank you for using it and enjoy the new release :)