PackageKit backend for Software Center: short week 5 report
This week I continued work on the install backend, especially connecting the PackageKit transaction signals to the software-center’s TransactionWatcher (also abstracted by me some time ago).
The challenge stands in differences from PackageKit and AptDaemon, such as in AD, after preparing a transaction and manually commiting it, one has access to the transaction object, and can watch for progress changes; in PK, after a transaction is launched, there are two ways of getting access to it: first by listening to a TransactionListChanged signal in D-Bus and second by watching the objects returned by the progress_callback callback.
The current approach, helped closely by hue-see (hughsie) on #PackageKit is to get the transactions from the callback and listen to the gobject notify::<property> signals.
More to come next week, stay tuned!
Status update on systemd for openSUSE Factory
here is a update on the work done on systemd for Factory :
(beware, post is long !)

- basic support for systemctl in chkconfig and insserv is done : it is pending review by maintainer before integration
- support for --root in systemctl was merged upstream and will be used by chkconfig/insserv patches above.
- a patch has been submitted to upstream systemd to parse insserv.conf : this patch only handles the "system facility" part of insserv.conf and automatically adds depencies specified in the file
- quick investigation on Yast2 to adapt runlevel editor for systemctl support : we really need help from other people, as I don't have any knowledge of Yast internal and it seems the yast dbus client part might be missing some parts, needed for runlevel editor to talk with systemd.
- no work done on /usr as separate partition : it is not a systemd issue in itself but from other programs which might be using data from /usr before /usr is available. The best solution would be to mount /usr from initrd => help needed !!
- (open)SUSE is using unofficial LSB target named $ALL which is supposed to put services requiring it at the end of the boot sequence (or at the beginning of shutdown sequence); After discussing with upstream : on a static boot system (sysvinit), it is easy to resolve such dependencies, but it isn't on a dynamic system (systemd). There is a ugly hack to handle that (creating a ALL.target file which is starting after default.target is done) but it would be probably better to just fix the 4 initscripts which are still using $ALL ( amazon-late, stoppreload, Susefirewall2_setup and vboxes). I'll open bug for them.
- X-Interactive support in systemd is not working properly : it will only work before getty is started and is broken if you try to start a service after boot. We need to transition packages which are still using X-Interactive to systemd-ask-password (which takes care of the async conversation). Only two packages need to be ported :
- apache2, when querying password for SSL certificate : apache allows to start a script to handle the password request. We only need to plug the script and configuration part in our package
and get it used when booting with systemd. - openvpn : this one is a bit complex because we can either write a daemon which would do the interface between systemd and openvpn management interface or we can try to patch openvpn to have a similar feature as apache and get this patch upstreamed. The latter has the preference of systemd upstream.
- For both packages, help is welcome.
- For compability with sysvinit, support for
from /etc/insserv.conf in systemd was not added, so we could remove X-Interactive from openvpn/httpd sysvinit scripts but still have the function when booting from /sbin/init, thanks to /etc/insserv.conf list. - /etc/init.d/kbd was not handled properly : this should be fixed inFactory today or tomorrow, with systemd taking care of setting up keyboard properly. However, we might need to improve /etc/sysconfig/keyboard parsing in systemd. More tests are needed (and of course, help is welcome).
- discussion in progress on opensuse-packaging mailing list and upstream on a set of cross distribution RPM macros to handle systemd unit files.
Thanks everybody for your attention.
I would be great if we could get the ball moving and maybe get one of
the next Factory milestone be a "systemd" test release but to reach this
point, we need YOU !
A utility for merging configuration / sysconfig files – Week 6 Report

Source: http://www.openclipart.org
Hello,
This is my 6th report concerning the progress of my gsoc project. First of all, I want to apologize because of the 5th report that is missing from last week. Due to some events, for me it was almost impossible to concentrate on work. Even though i did some things, it was not enough to create a report on. The previous week made me get out of schedule at least for a week, i will try to catch up this time by working more on weekends starting from this one. Even though in my initial plan there were about two weeks free time in the schedule that i could use in occasions like this.
Anyway, what’s up with the progress. As I have described in previous post, I am currently working on the matching code / algorithm. Some major improvements took place on the aug_process_tree method, which will be responsible for matching the initial tree with those coming as parameters. The tree traversal algorithm is now working completely, some issues however still exist in the matching of the tree nodes. Hopefully, i will be able to resolve this issues very soon, maybe even in the next couple of days.
Also, some basic drafts of the merging functions were added. Each function will complete the appropriate actions that must be carried , and will also represent each of the merging parameters /merging flags that will be used.
Finally, small changes and improvements took place in few other functions as well in the code. The plan for the next days is to complete the matching of the tree nodes and the merging. At least to a point where more more debugging tests would be able to be carried out.
Till next week,
Christos
Factory Progress 2011-07-01
Here’s with some delay the next incarnation of Factory Progress. I’ve noticed the following changes that might interest people using and developing openSUSE Factory:
Package changes
Linux 3.0
Linux kernel 3.0 rc5 is currently on its way to factory and the header files (in package linux-glibc-devel) have already been updated for it. If your software reads the Linux kernel version, please check that it can cope with the two digits instead of the three of the new version. Best would be to not read the version at all.
Systemd
Frederic has proposed a “Road to systemd for openSUSE 12.1″. Systemd is a replacement of the SysVinit scripts that we have been using and improving in the past with many new – including some controversial – ideas. Check his blog post for additional references about systemd. The majority of the distributions are moving to systemd as well and standarizing on it, will allow to share some more code and development in this area.
We’re now in phase 1 – which means: Get systemd running as an option. Once this is working satisfactory, we can switch the default (phase 2) and decide what to do with SysVinit support.
No static glibc libraries
The C library glibc now does not come anymore with static libraries, those are in the new glibc-devel-static subpackage.
Python 3.2
The python3 package is now at version 3.2, the most important change in Python 3.2 is the implementation of “PEP 384, a stable ABI for extension modules” which means that with 3.2 and upwards there won’t be any API breakages for modules which is really important developer wise.
Another big improvement is the new GIL (Global Interpreter Lock) implementation which will speed up threaded Python code. Python 3.2 also introduces “futures” library which is used for concurrent programming, this will be useful more multi-core Python development.
Tomoyo
Tomoyo is a MAC (Mandatory Access Control) implementation for Linux – so an alternative to AppArmor and SELinux. openSUSE’s Linux kernel does now come with the module and also the tools were updated to support this.
Policy and tool changes
New Source Service mode activated and recompression of tar balls
The new source service mode has been activated, it is recommended to update to osc 0.132 version as available in the openSUSE:Tools project to work with source services. Now the download URL given in source link is checked, so it has to be accurate. If you downloaded and recompressed a tarball, read Coolo’s policy change: “please don’t recompress tarballs unless it saves >1MB for download.”.
He also mentions:
What will become policy sooner or later is that you should not have incorrect source URLs behind Source*, so _if_ you have to recompress, don’t lie in the
Source line, but put the original tar as comment and use local file names in Source:
Dropping a package from Factory
Vincent explained How/why/when to drop a package from Factory.
Release notes in FATE
To make it easier to write release notes, it helps a lot, if you (= the so-called stakeholders) would provide a release notes snippet in the future using openFATE. We can then collect all those release notes and edit them.
Other interesting bits
openSUSE Conference
The call for papers is continuing to run, please submit session proposals at the conference site. If you like to learn what a BoF is, read this article.
Last chance: Vote on openSUSE strategy
The vote on the openSUSE strategy is closing on 30th of june. So official openSUSE members have the opportunity for ONE more day to express their opinion.
Take your chance. It is here: go, read the document one more time and cast your vote!
And if you are not sure if it is important, here you find some hints.
And BTW:
PackageKit backend for Software Center: late week 4 report
Since third week’s report was no report – basically because I was delayed by missing parts in the architecture (the saga hasn’t finished yet), I’m posting this late 4th week report:
Yep, the PK InstallBackend is shaping up
!
Unfortunately, the only machine running this code is mine, the reason being this chain of dependencies:
- static Python bindings for PK are dead
- PK gi depends on pygobject invoke-rewrite branch of J5 (which isn’t
yet merged into master, but will make it to 3.2 release);
- PK gi breaks statically loaded glib in software-center master; therefore, the -gtk3 port of software-center should be used;
- software-center-gtk3 isn’t ready for merging into trunk – experimental design changes towards a friendlier 5.0 are being done.
Therefore I’m testing the install/remove routines on the small modules, such as the PendingView in the above screenshot, waiting for components stabilization.
Next week – and probably until week 6 report, I will continue work on the install parts and start developing the PK PackageInfo class.
PS: I’m undecided if I should make my reports biweekly or milestone based :-/
Facebook bans KDE’s photo uploader; all uploaded content inaccessible.
So in my head there’s a little Walter Sobchak beating on my conscience and shouting “This is what you get when you trust Facebook with your data, Will”.
The reason is that I upload photos to Facebook using KDE’s shared uploader and this has fallen victim to the whims of FB’s purge of its app biosphere. Unless the original developer can convince them that the app is not spammy, offering a bad experience or having the wrong attitude, the app, my photos (all archived elsewhere of course), but most importantly, all the kind comments from my friends and contacts that represent FB’s only value, get sent to the farm.
This is what you get when you trust one company with stuff you care about. Will.
Greek openSUSE community, Translation of openSUSE Weekly news in Greek(issue 180)
Hello out there,
I am very pleased to announce the new issue (180) of openSUSE Weekly
News in Greek. This issue is somehow an anniversary one, as it is the 30th translated in a row. In this one you will read about:
* openSUSE Conference and RW sessions – the BoF
* TechRepublic/Jack Wallen: Five tips for collaborating in LibreOffice
* Jos Poortvliet: openSUSE and online services
* Bruno Friedmann: ATI/AMD fglrx 8.861 Catalyst 11.6 available for openSUSE
* LinuxJournal/Bruce Byfield: Tweaking text in Scribus
And of course many many interesting news about openSUSE, plus useful
advice for making our lives easier.
Enough… read more at: own.opensuse.gr or at
http://el.opensuse.org/Weekly_news.
Looking forward to hearing your comments, advice and anything you would
like to read about at the next issue.
The openSUSE Weekly News is translated in the Greek language from issue #150. You can read older translated issues here: http://el.opensuse.org/Κατηγορία:Weekly_news_issues
Enjoy it!
Greek openSUSE community, Translation of openSUSE Weekly news in Greek(issue 179)
This time it was my pleasure not to announce first the greek translated issue of openSUSE Weekly News. Of course I am talking about issue 179. The reason is simple: since a fair number of issues I didn’t coordinate the procedure and the most interesting part is that this thing happened in the middle of the exam period for university students, a period when the contribution generally is reduced. But NO, this doesn’t apply for the greek openSUSE community, which is still growing even in this time of the year. Still, as normally, free time is not available for the student contributors, especially for those that are reaching at the end and they want to graduate (this also applies to me). The fact that the things keep going as (almost) usual makes me feel that great things are coming in the future and that this future is not so far away.
Historically, the coordination of this translation activity, which is very demanding because of the strict timeline that has to be followed, started from Kostas Koudaras (warlordfff). At those times I was participating just as a translator. Then it passed to me (efagra) and George Bratsos (Etern4L) with whom and for a long time we coordinated it weekly. I was responsible for the evens (xxo, xx2, xx4 etc), while he was for the odds (xx1, xx3 etc). However, lately, I was doing it alone. Luckily, another person showed up with a great appetite for work, very effective and a great cooking talent (that last one may seem irrelevant to the community, but I can assure you it is relevant and I will come back to it in another post). I am talking about Stella Rouzi (differentreality), thanks to her coordination greek issue 179 was in time, since this week I had a lot of work to do and time was just not enough. With her, we will coordinate weekly and I hope that soon enough other community members will step up and help with that also. In addition, we developed a new procedure for the coordination of this time demanding activity. We are currently applying it to the translation of issue 180 and we hope that not only the procedure will be accelerated but also the translators and the future coordinators will be doing it more easily and concurrently. From the beginning of the activity the translators came back with a lot of feedback and useful advice. Now it is the effectiveness of it that remains to be seen. I will be back on that with more details about both the new procedure and the feedback we had.
Ooof, once again I started with little in mind to wright down, but more and more came out. That’s ok, after all I’m not writing very often. One last thing: Have a LOT of fun! In this issue you will read (if not already):
* openSUSE Medical 11.4
* World Ipv6 Day Results
* Ekiga and SIP to replace Skype
* Automatic daily fstrim from SSD
* Vote for the openSUSE strategy
And of course many many interesting news about openSUSE plus useful tutorials that will make your life a little bit easier! Find it in:
http://own.opensuse.gr or at
http://el.opensuse.org/Weekly_news
Looking forward to hearing your comments and advice, plus what you would like to read on the next issue.
openSUSE Weekly News is translated in greek from issue #150.
You can read all previous issues in greek here:
http://el.opensuse.org/Κατηγορία:Weekly_news_issues
Enjoy it!
LibreOffice 3.3.3 bugfix release available for openSUSE
I’m happy to announce LibreOffice 3.3.3 bugfix release for openSUSE. The packages are available in the Build Service LibreOffice:Stable project. They fix various crashers, usability and translation problems, see the libreoffice-3.3.3.1 release news for more details. See also some notes about openSUSE LibreOffice build.
The openSUSE LO team hopes that you will be happy with this release. Though, any software contains bugs and we kindly ask you to report bugs. It will help us to fix them in the future releases.
Other information and plans:
The bugfix release 3.3.4 is planed two months from now. Though, I would rather provide LO-3.4.2 packages instead.
I am already working on the LO-3.4 packages. They are more complicated because there were significant changes in the build stuff. You might expect something within the next few weeks in the LibreOffice:Unstable project.

