ruby-dbus 0.7.0 works with 1.9.2 again
- Added ASystemBus and ASessionBus, non-singletons useful in tests and threads.
- Fixed handling of multibyte strings (Issue#8, by Takayuki YAMAGUCHI).
- Allow reopening of a dbus_interface declaration (Issue#9, by T. YAMAGUCHI).
- Fixed ruby-1.9.2 compatibility again (Issue#12).
- Fixed authentication on BSD (Issue#11, by Jonathan Walker).
- Fixed exiting a nested event loop for synchronous calls (reported by Timo Warns).
- Fixed introspection calls leaking reply handlers.
- "rake test" now works, doing what was called "rake env:test"
A utility for merging configuration / sysconfig files – Week 9 Report

Source: http://www.openclipart.org
Hello,
Exciting news for the project this week. After solving the problem with the comments and the tree representation of the sysconfig files in Augeas, there was a big leap in the project’s progress. By having test data and through debugging i was able to complete the match algorithm.
The program is now able to traverse through two trees / files, make the necessary matches between the nodes of these two trees and provide the appropriate information to the later stages. That of merging.
What exactly have been done in the previous week:
– Tree representation of sysconfig files
– Matching between two trees nodes completed
– Sorting of labels (Small Fixes)
– tree_compare function complete
– Tree traversal of aug_process_trees ( revisited)
What is for next week:
– Finish merging functions for aug_process_trees ( I feel optimistic that i will surely complete this next week due to the reason that matching was completed)
– Create first beta packages
– Test Test Test
– Improve code
LXDE and gtk3
GTK3 will slowly replace the “old” gtk2, and of course, if we don’t want to be left behind we have to move to gtk3 eventually.
Even if slowly (we need horse power! –> yes we need you too!!) LXDE is being ported too. Nothing has been released yet, but a good deal of work is actually into git repositories.
X11:lxde:gtk3 project
Thanks to openSUSE Build Service (public instance of the Open Build Service) we are currently able to get git code and build it auto-magically (thanks god you created obs _services
)
Right now, only five packages don’t want to build with gtk3 and they are: gpicview, libfm, lxmusic, lxpanel, pcmanfm. Everything else builds fine. As a side note, lxdm gtk greeter build but seems to crasch.
Please test those packages and report in our mailing list or even better upstream your issues.
To conclude, right now i don’t feel comfortable to push into factory gtk3 packages, so 12.1 most probably will stuck with the well know stable gtk2 packages.
Also, i’m actually working to use obs, to provide gtk3 enabled git nightly build not only to openSUSE (actually only >= 11.4) but also to Fedora 15 (already building with many successful packages) and Ubuntu/Debian. So if you are .deb packagers, please let me know, i need your help. Contact me and the lxde team using our mailing list opensue-lxde@opensuse.org
Have a great day,
Andrea
SSH connection automation
- send my public key to server
- upload my screen configuration file
- create an alias (because ssh'ing manually is a truly hassle each time I want to connect!) to connect to the server and reattach or create a new screen session
- Change its permissions to 700 (security freak? Oh well...)
#!/bin/bash# $1 = [remote_user@]remote_host# $2 = [alias name]BIN=$HOME/binif [ "$#" -lt 1 ] || [ "$#" -gt 2 ] || [ "$1" = "-h" ] || [ "$1" = "--help" ]; thenecho "Usage: $0 [user@]machine [alias]" >&2exit 1fiif [ "$#" -eq 2 ]; then(cat <<EOF
#!/bin/bashssh $1 -t screen -x -REOF) > $BIN/$2chmod u=rwx,go= $BIN/$2fissh-copy-id -i ~/.ssh/id_rsa.pub $1 > /dev/null 2>&1scp ~/.screenrc $1:~/ > /dev/null 2>&1exit 0
Macnux:~ carlos$ setup-machine -hUsage: /Users/carlos/bin/setup-machine [user@]machine [alias]Macnux:~ carlos$ setup-machine cgoncalves@cgoncalves.info cgoncalvescgoncalves@cgoncalves.info’s password: *****************Macnux:~ carlos$ cat bin/cgoncalves#!/bin/bashssh cgoncalves@cgoncalves.info -t screen -x -RMacnux:~ carlos$ cgoncalves[SSH connection established and attached to screen]
Factory Progress 2011-07-18
I’ve noticed the following changes that might interest people using and developing openSUSE Factory:
Package changes
GNOME 3.1.3
The GNOME team plans to have GNOME 3.2 in for openSUSE 12.1 and thus have updated to the current development release 3.1.3. They have also started removing old GNOME 2 packages that are not needed anymore.
systemd
Frederic gave an update on systemd integration. The graphical bootloader allows now to switch during boot between systemd, SysVinit and also shell code.
Also, Lennart Poettering wrote in his “systemd for developers” series about socket activation where he uses cups as example.
hal
The hal daemon has been dropped from Factory after all users with clean spec files have been changed to work with the successors of hal like udisk and udev.
samba
Samba is getting updated to 3.6.0, one of its major features is full SMB2 support.
Linux Kernel Headers
Linux kernel 2.6.38 removed the Video for Linux v1 support and also the file linux/videodev.h. Since we now use the Linux Kernel 3.0, applications using the old interface need to be converted. A replacement is libv4l1-videodev.h from libv4l-dev >= 0.8.4.
Keeping old kernel(s) while installing new ones
Michal Marek descripes in his blog how it’s possible to configure which kernels to keep installed when a new one gets installed. With a simple change to the zypp configuration, you can define e.g. that you always like to keep the latest running kernel when you install a new one.
Upcoming Features
A new page called “upcoming features” has been created to point out new features for the next release. Please help updating the page with new information.
Policy and tool changes
Directories not owned by a package
We have now enabled a build time check that all directories are owned by a package and this hit 49 packages, most of them are fixed by now but packagers should fix the remaining onw.
Other interesting bits
openSUSE 11.4 Milestone 3
Coolo announced that milestone 3 is delayed due to some kernel bugs which the testing team encountered with their daily testing scripts. On 2011-07-18 the 3.0 RC7 kernel was checked in and should fix this.
openSUSE Conference
The call for papers is continuing to run, please submit session proposals at the conference site. Also, registration is open now.
Steampunk beautiful theme for KDM and ksplash
I created packages for the nice KDM and ksplash theme Steampunk. For this theme a matching color scheme, wallpaper and mouse theme exist and those are packed in the same rpm. Youtube shows the theme in action for Kubuntu, the version in the rpm is distribution neutral. The rpm can be obtained from the home:rbos repository, I hope you enjoy the theme.
PackageKit backend for Software Center: short week 7 report
Short weekly report is short, this week’s achievements:
- fixed the install/remove simulation bits (it can now tell what packages will be removed after applying changes)
- improved PackageInfo testing (works with both AptCache and PackageKit)
- found the problem with dynamic/static libs conflict: it is gio statically loaded from gtk and then Gio dynamically loaded from PackageKitGlib; loading Gio before everything seems to fix the conflict for now;
- got another round of refactor changes into trunk, thanks to mvo; this way my PK branch is one step closer to merging into software-center
ktnxbye
Exchange WebServices Offline AddressBook
It is now possible to download GAL contents for offline usage through exchange web services in Evolution. Offline GAL is termed as Offline Address-book (OAB) in Exchange WebServices and it may contain one or more Offline Address-lists (OAL).
The check-box, ‘Cache offline address-book’ would be sensitive if the OAB url is discovered using the AutoDiscover service from the previous page (‘Receiving’). On clicking the fetch buton, the available offline address-lists would be displayed in the combo box. The user can select the address-list which he is interested in.
If the GAL is not selected for offline usage. A GAL folder would be created in Contacts component and would be used just for auto-completion when Evolution is online.
To change an offline address-list, one just needs to go back to ‘Receiving page’ in preference and select a different address-list. This would remove the old OAL folder and its contents and create a new OAL folder. At the moment, evolution-ews supports caching only one OAL, though it is very easy to extend it to support many. I feel it would sufficient to have one at the moment, but if a need arises, the plugin can be extended to create new OAL folders on demand.
If an address-list is chosen for offline usage, one CAN auto-complete while the caching is in progress!! All operations are asynchronous and cancellable.
Internals
OAL’s would be listed in the link <OABUrl> + ‘oab.xml’. They would be available as compressed files, compressed using LZXD format. There are three versions of OAB ‘2, 3, 4’ and Evolution supports downloading, version 4 OAB Full Details file.
LZXD
To put it simply, lzxd extends the lzx decompression format adding support for differential updates. I have picked up the lzx decompression code from libmspack and modified it to make it decompress the lzxd file. The support for differential update is yet to added.
OAB
The format for the uncompressed OAB Version 4 file is available at http://msdn.microsoft.com/en-us/library/cc463914%28v=EXCHG.80%29.aspx . Evolution-ews has the decoder which decodes the oab file, converts to EContact and then we populates the address-book sqlitedb in chunks of 1000 contacts.
And now the contents are available for offline use 
CamelUrl props
“oab_offline” – says if oab is marked for offline.
“oal_selected” – contains the selected “oal id:oal name”
“oaburl” – contains the oab url
ESource props
“hosturl” – contains the host url, used for auto-completion.
“oaburl” – contains the oab url.
“oalid” – id of the OAL.
“gal” – a boolean that it indicates that its gal folder.
Designing the missing Web UI for Bongo
Improved Kernel Package Retention in 12.1
A long awaited feature of the openSUSE update stack is finally here!
Since some time, it has been possible to tell libzypp to not delete old
kernels on update:
multiversion = provides:multiversion(kernel)
in /etc/zypp/zypp.conf. That way, you don’t have to worry that a
brand new -rc kernel from Factory makes your system unbootable. This however
solves one problem and brings another one – you have to manually delete the
old kernel so that your /boot partition does not fill up. openSUSE 12.1 will
provide a solution to this, you will be able to tell what kernels you want to
keep after an update, other kernels will be deleted. The configuration is the
same file, /etc/zypp/zypp.conf:
## Comma separated list of kernel packages to keep installed in parallel, if the ## above multiversion variable is set. Packages can be specified as ## 2.6.32.12-0.7 - Exact version to keep ## latest - Keep kernel with the highest version number ## latest-N - Keep kernel with the Nth highest version number ## running - Keep the running kernel ## oldest - Keep kernel with the lowest version number (the GA kernel) ## oldest+N - Keep kernel with the Nth lowest version number ## ## Default: Do not delete any kernels if multiversion = provides:multiversion(kernel) is set multiversion.kernels = latest,running
If you configure this and the above multiversion variable, then after each
kernel update, during a subsequent reboot, a script will compare the list of
installed kernels with the multiversion.kernels setting and delete those that
are no longer needed. Examples:
- Keep the latest kernel and the running one if it differs. This is similar to
no enabling the multiversion feature at all, except that the old kernel is
removed after reboot and not immediatelly after installation. BTW, you
probably always want to include “running”:multiversion.kernels = latest,running
- Keep last two kernels and the running one:
multiversion.kernels = latest,latest-1,running
- Keep the latest kernel, the running and a my test kernel with a fancy
patch:multiversion.kernels = latest,running,3.0.rc7-test
If you want to try it, it’s all in Factory already. Check if these packages are
recent enough and uncomment the two variables in zypp.conf:
$ rpm -q --changelog kernel-desktop mkinitrd libzypp | grep -B2 312018
* Fri Jun 17 2011 mmarek@suse.cz
- rpm/post.sh: Touch /boot/do_purge_kernels on package install
(fate#312018).
--
- Add purge-kernels script to automatically delete old kernel packages
on boot, based on configuration in /etc/zypp/zypp.conf, variable
multiversion_kernels (fate#312018).
--
* Tue Jun 21 2011 dmacvicar@suse.de
- Add configuration template for automatic kernel
purge (feature#312018) to zypp.conf
$ grep ^multiversion /etc/zypp/zypp.conf
multiversion = provides:multiversion(kernel)
multiversion.kernels = latest,running
Happy updating!

