Category Archives: xubuntu

How to start contributing to Xfce or any other open source project

It’s been a while since I’ve updated this website and even longer since I’ve written anything useful. But since I’ve received a couple of mails from people looking to contribute to Xfce recently, I thought I’d share some “wisdom” acquired over the past few years while working on Xfce and doing a lot of community work. My thoughts are not limited to Xfce and will apply to a lot of other projects out there as well.

Here’s the bitter truth for those looking for some quick pointers to start contributing to Xfce: you’ll have to find out yourself.

The reason is not that we are lazy or wouldn’t welcome your contributions. In fact, the reason, I believe, is very simple: you will be more excited, motivated and, ultimate, be more successful if you work on something that interests you. We can help you in making the decision what to invest your time in easier, e.g. by listing projects, features or issues that we or our users consider worth working on. Some projects do this very visibly (e.g. through bounties). In Xfce, this information is hidden in the depths of the wiki. Here are a few links that you may find interesting:

Clearly, the above information could be more visible. There could be a prominent link on the Xfce website to a well-maintained and up-to-date list. Would that help people? Maybe.

Perhaps it is a good thing that the information isn’t just one click away. Open source projects have always been about scratching your own itch. This is how I got involved in everything I’ve done over the years. this approach is reflected by what people do and sometimes even by how companies make money. Thinking about it now, it is a concept deeply rooted in the evolution of mankind (think: the invention and improvement of tools, industrialisation and all that shit).

So: scratch your own itch.

If you want to start contributing to a project, try this exercise:

  • Look at the project, think about what you don’t like or what you feel could be improved
  • Try to collect information on what pieces are involved in e.g. the feature you’re missing or the bug you’ve spotted
  • Try to find the place where you could try adding your feature or fixing your bug
  • Ask whether developers are interested in the feature or look at whether there already is an item for your issue in the bug tracker
  • The rest is communication and coding

It’s not a fast path because you might not be able to contribute something of great value in the beginning. But if you’re dedicated, have enough spare time to make a difference and are keen on improving things step by step, you might eventually reach a point where you take over responsibility for more and more exciting or important tasks.

Good luck!

It has arrived: Xfce 4.8

The Xfce development team has announced the release of Xfce 4.8, the culmination of almost two years of work. The release makes Xfce once again a truly modern desktop environment by making use of recent desktop frameworks that, for example, finally allow you to browse remote shares or to edit the menu using a menu editor like Alacarte. Unfortunately, as the Xfce team makes clear in the release announcement, these frameworks often do not properly support non-Linux open source systems, meaning the Xfce team could not support those systems as well they would like to. For Xubuntu, being Linux-based, this has no effect.

Apart from adding many crucial modern features (which also meant completely rewriting the application that displays the panels), Xfce’s development process has been formalized, and the first steps have been taken in forming a non-profit organization, to ensure a viable future for Xfce. I covered the renewed development process and new features in my look at the first preview release. For a more detailed update by the Xfce team, check out the tour on new features in Xfce 4.8, part of (do these guys ever sleep?) the new website to accompany the new release.

The new version of Xfce is scheduled to be included in Xubuntu 11.04, to be released in April of this year.


Xfce alive and well: new version on its way

On 7 November, Jannis Pohlmann announced the first preview release of Xfce 4.8. The new version of Xfce, which is planned to be released on January 16th, brings much-requested features, and will close a development cycle in which the project made great strides forward.

Let’s first focus on the improvements coming in the next release of Xubuntu’s main component. Perhaps the most requested feature is support for remote filesystems. Much clamoured for, the feature required rewriting big parts of the core – something which has finally been completed.

Apart from that, the application that provides the panel(s) on your desktop has been completely rewritten, bringing a huge number of improvements, most notably in the support for multi-monitor setups, and a pet peeve of mine: the ability to drag application files to the panel to create launchers.

Also high on the wish list of many users was the ability to graphically edit the menus. Although Xfce still doesn’t ship its own menu editor, it is now possible to edit it using menu editors for other standards compliant desktops, such as Alacarte.

So, a lot has been rewritten in this release cycle – we’ve only seen the tip of the iceberg above. Most important, however, are the improvements made to the release process in general, which will make the project more future-proof and will increase the speed with which new releases can be made, and lower the entry barrier to new contributors.

To start with the latter point, Xfce was one of the first of now many projects using the Transifex translation environment. Transifex makes it easier than ever for translators to help translating Xfce, as translators can now simply download the current translations and update their new translations via the web interface. I have used it myself, and it really is a huge improvement over the previous, cumbersome process. The new translation process has already attracted quite a few new translators, ensuring more of Xfce has been translated than ever, with even higher quality.

While the size of the development team has fluctuated over time (it has never been large, yet some people moved on – luckily there were new contributions as well), the team has managed to keep the desktop up-to-date with recent technologies, and has rewritten parts of the code, improving the quality to ensure it can be built on properly in the future.

Finally, the release process has been revised, now encouraging many small releases for sub-projects, as opposed to releasing all of them at once with a new version of Xfce. It is now much less work to release a new version, making that task less daunting and thus less likely to be postponed. Automatic release announcements also result in improved publicity for a new release, making it clear the project is alive and well, and more attractive for third-party contributors to help out. It also gets updated translations out faster.

All in all, the new release is shaping up to be a very solid one, closing a few big gaps in the feature set. Xfce is a truly modern desktop environment again, and what’s more important: its future, starting with the release of the new version on January 16th, is looking exceptionally bright.

In other news: as you might notice, this blog has not been updated in a while. Unfortunately, this post does not signify a change in the lack of updates. I’m really too busy with other things in my life that I’m hardly even tinkering with my computer, or actively involved with Xubuntu. So yeah, this blog is still dead. Also, it is not an official Xubuntu blog in any way, so do not draw any conclusions about the status of Xubuntu from this blog post; it is still awesome :)


Finally: free Xubuntu CDs!

Xubuntu users have long clamoured for their beloved Linux distribution to be available in Ubuntu’s ShipIt service, but to no avail: Xubuntu’s user base was too marginal and, as a community-run project, Canonical could not provide support for it. Thus, they refrained from offering free Xubuntu CDs.

They still do, but there now is an alternative! Xubuntu is from now on available under the Quick Ship service run by On-Disk.com. As listed on the “Get Xubuntu” page, shipping is available for the USA and the rest of the world.

Unfortunately, despite the CDs being free of charge, you still have to pay for shipping them (as opposed to ShipIt). Still, for people suffering from a slow internet connection this is a great alternative, and the Xubuntu developers are very pleased that this service is still being made available to users. I should mention expicitly, though, that this service is not run by the Xubuntu developers, neither is it run by Canonical. This is an independent service provided by a home-based family business with heart for the open source community. Pasi Lallinaho, who is currently “the artwork guy” of Xubuntu, has expressed interest in providing graphics for the CD to make sure they match the Xubuntu style.

Still, I think this is a great development for Xubuntu and its users, and I want to thank On-Disk.com for doing this.


News Update

A lot of things are going on lately and it turns out I'm way to busy to update my weblog on a regular basis. So, this is just a short post to keep you all updated.

Last two weeks

  • I took a new student job at the university, at the Institute of Theoretical Computer Science, which I love most. I'll be working on haplotyping algorithms.
  • I went to Barcelona and had a great time at the Ubuntu Developer Summit overall. Stephan and I were very productive. One evening during dinner we discussed our development and release process and later started writing it down. The result is a beautiful document that still needs a bit of polishing. I hope it'll serve as a good foundation for the development and release process of Xfce in the future. Several others commented on it and it looks like we'll give the proposed concept a shot after we've switched to git and all that.
  • Even though the week in Barcelona was great for Xfce, I was disappointed with how it went with regards to the cooperation between Xubuntu and Xfce. I talked it through with Stephan and after I got back, I resigned from my position as the Xubuntu Xfce4 Liaison.

At the moment

  • I've started to implement the so-called thumbnail management D-Bus specification. My implementation is called Tumbler and it will hopefully start serving thumbnails for other apps soon. I'm planning to use it in Thunar, Stephan has expressed interest in using it in Ristretto and when discussing the specification and the existing hildon-thumbnail implementation, Philip van Hoof told me that Hildon/Nokia might be interested in dropping hildon-thumbnail in favor of Tumbler if it's flexible enough. I'm working on it as much as I can and I'm hoping to do a release within the next few weeks.
  • I'm still working on the Transifex installation for Xfce. It's already running but I still need to import all the projects, releases and of course create accounts for maintainers automatically.
  • The migration of Xfce to Git is still work in progress. Brian has most of the repository issues sorted out and is now waiting for me to finish the commit mail script. I have two or three possible implementations lying around but I need to have a look at that again.
  • Jim needs the documentation repository next week, so I'm about to set it up.
  • Our Buildbot server has arrived in Sweden. Today I set up the firewall. Samual is taking care of setting up the Buildbot host VM and other things. We're considering to move a lot of the services not related to development (like the Xfce websites) into separate VMs on that server too, in order to make the current server a development-only machine.

Besides that I'm trying to catch up with the work and personal stuff that piled up while I was away last week. And I really should go and sleep.

Trip to Barcelona

Tomorrow afternoon I'll be travelling to Barcelona, where I'm going to spend the week surrounded by hackers from all over the world planning the next release of Ubuntu. I'll meet up with Stephan, Cody, Michael and Steve there to improve Xubuntu but I'll hopefully also run into a few other familiar faces.

During the week I'll do my best in setting up the new Xfce documentation repository based on the discussions we had over the last few weeks. I'll also try to cook up Lunar Linux modules for Transifex so that we'll have it up and running as soon as we switch our repositories over to Git. These are my goals - let's see how far I can get.

I'm hoping for a few very nice couple of days. I've never been south of Germany and it's my first time in Spain ever. As a fortunate coincidence, there's the Champions League final Barcelona vs. Manchester United on Wednesday. Not that I'm much of football fan ... but I like it when people go crazy.

Thunar/GIO – Quick Status Report

I've started hacking on the migration of Thunar to GIO on April 9th. In about 61 commits, I've reduced the original number of ThunarVFS references in the Thunar source code dramatically. The most important and probably most time-consuming part of this work is only mentioned briefly on those pages: rewriting all recursive copy/move/trash/restore/chmod/chgrp/chown jobs -- by now most of the jobs have been rewritten based on GIO and the new ThunarJob framework ... and Thunar still works (for me at least)!

All in all, I suppose that about a third of the implementation work is done. Ok, maybe just a quarter, but an important one. I now have a very good overview over the source code and I'm almost done with one of the most critical parts of the migration.

If you want to know how that looks like for me, here's a screenshot:

Lunar Linux 20090423

These are the most important/big things that are still waiting for me:

  • Replace ThunarVFSVolumeManager with GFileMonitor. Volume management is a large and complex subsystem of both ThunarVFS and GIO.
  • Load ThunarFile objects asynchronously. This will be a pain. A lot of functions will have to be split up to fit into the asynchronous concept.
  • Move the thumbnail related code into exo

These two are a bit out of scope but very important nonetheless:

  • Integrate functionality similar to Gigolo (remote/virtual places management) into the file manager.
  • Write GNOME-independent GIO extensions for volume management and the trash.

On a side node: Xubuntu 9.04 is available as of today! Go and grab it if you're interested in a nice distro based on Xfce. If you're interested in the Xubuntu development, you'll be able to meet Stephan, several Xubuntu folks and me at the Ubuntu Developer Summit in Barcelona from May 25th-29th. I'm very excited already!

The prettiest of the *buntu’s is coming

Ubuntu’s brownish/orangy theme has been the target of much criticism. What is often forgotten is that one of its derivatives has been looking very good for quite a while now: Xubuntu. A complete visual overhaul for the upcoming version 9.04 is all set to continue this trend.

Pasi Lallinaho, picking up the baton from Jozsef Mak, leverages Xfce’s extensive theming capabilities to provide a coherent look and feel with wonderful new themes.

Update: This article previously contained a paragraph about a new GTK theme, but unfortunately, that didn’t make it in in time, meaning the visual overhaul is now “just” a new wallpaper, login window theme and icon theme, so scrap the part about extensive theming capabilities ;-)

The theme for the login screen pictures a misty forest set next to a lake, in Xubuntu’s characteristic colour scheme.



Then there is the gorgeous new wallpaper, bearing a watermark of the Xubuntu logo on a canvas of the same defining shades of blue.



To complement it all, the GNOME-Colors icon theme is included. GNOME-Colors is a very complete theme, including a wide range of good-looking icons that very well match the rest of Xubuntu’s artwork.

Of course, a release this pretty deserves some buzz – if not for the great looks, then at least for the host of new features, such as the new version of Xfce – and you can help! If you own a website or blog, you can include a countdown banner with the following HTML code:

<a href="http://xubuntu.org/" title="Learn more about Xubuntu..."><img src="http://xubuntu.org/xubuntu-static/jaunty-countdown/" alt="Countdown to Xubuntu (xubuntu.org) 9.04, by Pasi Lallinaho"></a>

Alternatively, if you are a member of a forum or other online community, you can include it in your signature, forum posts or other places you’d like to promote Xubuntu, with the following BBCode:

[url=http://xubuntu.org/][img]http://xubuntu.org/xubuntu-static/jaunty-countdown/[/img][/url]

Of course, the countdown banner, too, was created by Pasi in the style of the new Xubuntu desktop.

Countdown to Xubuntu (xubuntu.org) 9.04, by Pasi Lallinaho


Xfce making great strides with version 4.6

A little more than two years after version 4.4 was released into the wild (on 21 January 2007), the Xfce development team has announced the availability of the new version of the Xfce desktop environment yesterday (yes I’m late to the party…).

In an email, release manager Stephan Arts announced the new version 4.6 (only even numbers are used for stable releases), which has already been picked up in various articles all over the web’s darkest corners.

Xfce is an integral part of Xubuntu. In its role as the desktop environment it provides vital applications such as the panels, the desktop, the file manager and the window manager (i.e. the thing that paints the borders around your windows and handles how they are placed in your screen), among others. In fact, it is the primary reason for Xubuntu’s existence – when Jani Monoses founded the project he did so because he wanted to combine the features of Xfce with the advantages Ubuntu brings.

So what’s new?

Due to technical problems, I haven’t been able to run Xfce 4.6 on my personal computer as of yet (something which I hope to change in the coming week), so I’m going to base myself on the excellent Xfce tour prepared by Xfce developer and previous Xubuntu developer Jérôme Guelfucci and my experiences while running Xubuntu from my USB drive. I’ll also be using the screenshots provided by Xfce developer and Xubuntu-Xfce Liaison Jannis Pohlmann because I’m lazy.

First of all, Xfce’s panel (xfce4-panel) has received some love with lots of bugs fixed that especially the proud owners of multiple monitors won’t mind to miss. It also comes with updated panel plugins. This adds nifty new features to e.g. the system tray, which now allows you to hide certain icons. This is quite useful to hide, for example, that NetworkManager icon that always sits there yet is almost never needed after your network has been set up.



Although not part of the release, the screenshot plugin has been developed into its own application by Jérôme Guelfucci (and David Collins added some nice new features, too) and is now named Xfce4 Screenshooter. It, among other features, allows you to capture a region of the screen or a single application. Now the keyboard shortcut for PrtScn can be set by default :) .



The desktop manager, xfdesktop, now includes an oft-requested feature: rubber banding, or the ability to click and drag to select multiple icons to manipulate. Furthermore, the Xfce menu is now a submenu of the context menu when you have icons on your desktop – something that some people have expressed dissatisfaction about.

On the xfce4-mixer front, Jannis Pohlmann has rewritten it to sport a more polished interface, and to use Gstreamer. Some refer to this as bloat, but it really makes for a more maintainable application that supports multiple sound systems more easily, is better tested and will work on the systems of more people (although it will undoubtly not work on the systems of some others, namely those who can’t get Gstreamer to work).

With the new mixer also comes a panel plugin that allows you to change the volume with a mere scroll over the panel icon, which is very useful unless you don’t have a scroll wheel.

The session manager has also received some love. Based on code in Xubuntu, originally written by Jani Monoses, but almost entirely rewritten, Xfce now supports suspending and hibernation by default. Though the Suspend and Hibernate buttons might attract a bit too much attention with their size, considering how often they’ll be used, it’s a useful addition nonetheless.



A feature that will help out a lot of users and will save me a lot providing support, is its ability to automatically restart important applications if they just so happen to crash. The reason this is so useful is because the panel has a habit of occasionally crashing seemingly without reason, with people left not knowing what to do.

Of course, the Xfce Window Manager, xfwm4, was also updated, mainly thanks to the work of the Xfce project founder Olivier Fourdan, from France. It can now see when an application is busy and won’t respond, and offer you to force it to quit.



It also offers a useful new “Fill” option that allows you to resize a window to use as much space as possible that is left unused by other windows. This can come in handy when working with applications such as the Gimp. Besides these improvements there are some other tweaks and stability and performance improvements.

Xfce’s file manager that Benedikt Meurer developed for Xfce 4.4, Thunar, has received attention from Nick Schermer and Jannis Pohlmann. Being one of Xfce’s show-off applications, it just got a little better with many bug fixes and performance improvements coming in. It also ships a new plugin to set an image as your wallpaper from within Thunar, and now follows the XDG user directories specification, which basically means that it provides you with folders for Music, Videos, Pictures, etc. and translates their names if you use another language.



Furthermore, connected drives that have not been mounted (i.e. prepared for reading by the computer) will be distinguishable by their translucent icons. Encrypted devices are now supported as well. As for Xubuntu, word has it that we may get folder sharing in 9.04, which many people have been clamouring for.

Jannis Pohlmann and Jasper Huijsmans have been working on a rewrite of the AppFinder. It now has a cleaner interface and updates in real-time, as always allowing you to easily find installed applications and, by dragging them to the Launcher-creation interface, easily create panel shortcuts.



The Xfce menu has also been updated to really comply with the freedesktop.org standard (perhaps you noticed that the menu in previous versions was structured a bit oddly). Unfortunately, no menu editor is included and, with menu merging not being supported yet, using an alternative menu editor like Alacarte won’t work either. It’s manually editing the files or making do with the menu as-is, for now.

And last but certainly not least, one of the biggest new features: xfconf. Admitted, you won’t (shouldn’t) notice much of this, but it’s quite the improvement. Basically, it provides a new, central configuration system for Xfce similar to, but simpler than, GNOME’s gconf.

It does offer some nifty new useful applications though. For example, there’s now one central place to edit the settings of all applications that use xfconf – the Settings Editor (xfce4-settings-editor).



It also includes a command-line tool, and it is this that looks extremely valuable to me. Not because I like to type commands, but because you can bind them to keyboard shortcuts. Yep – editing preferences with a simple key combination.

For example, if you’re a programmer, it can be very useful to switch your keyboard layout on-the-fly – use dead keys when doing normal stuff like writing a blog post, and stop using them when you’re programming and want your quotes to appear directly. With xfconf, this can be done very easily. For example, the command to set your keyboard layout to the US layout without dead keys, you’d use:

xfconf-query -c keyboard-layout -p /Default/XkbLayout -s "us" && xfconf-query -c keyboard-layout -p /Default/XkbVariant -s "altgr-intl"

Similarly, if you wanted to change the layout to US with dead keys, you’d use:

xfconf-query -c keyboard-layout -p /Default/XkbLayout -s "us" && xfconf-query -c keyboard-layout -p /Default/XkbVariant -s "intl"

Now all you need to do is bind them to a keyboard shortcut and you’ll be set!

Of course, this is some pretty advanced stuff, but it’s there when you need it and hardly noticeable when you don’t. Plus, it might make for a good blog post in the future, so if you have any more useful applications of this, do tell me :) .

With the new settings backend comes a new Settings Manager which allows you to edit many of the settings in one window and is more neatly organised and better suited to small monitors in general.



Furthermore, a lot of the settings windows have been redesigned and options have been added – I’ll kindly refer you to the excellent tour for an overview.

So how do I get it?

You can download Xfce in source code form or using the oft-praised graphical installers. Packages for several distributions will without doubt already be available. However, the easiest and recommended way is to wait for your distribution to provide the packages. Xubuntu 9.04 will have Xfce 4.6.0 and already has Release Candidate 1. If we’re lucky, version 4.6.1 will even make it in time which will contain the first important bugfixes and translation updates.

If you’re running Xubuntu 8.04 “Hardy Heron” or 8.10 “Intrepid Ibex”, then you’re lucky, because Jérôme Guelfucci has prepared packages with help of the Debian Xfce group and Lionel Le Folgoc.

So what is ahead?

The Xfce development team is already looking forward to version 4.8. The plan is to do a shorter release cycle this time, with one (probably optimistic) guess targeting a new release in about a year. Some excellent features have already been developed to be included in 4.8, such as my pet peeve drag ‘n drop support for panel icons (no more messing with commands in launchers!), menu merging so you can actually use a menu editor, and several improvements to Thunar.

All in all, this has shaped up to be a very nice release with some excellent new features, some of them nowhere to be found in other desktop environments, which demonstrates once again why I like Xfce for more than performance alone. With some of the improvements for 4.8 already checked in and many more waiting in line, I’m already excited. I’ve fallen far short when it comes to attributions, failing to name Xfce’s excellent translation team, the people behind the Xfce distros, the various communites, Brian Tarricone, Mike Massonnet, -I guess I should stop naming people because I’m bound to forget many more, or even people of whom I don’t even know they’ve contributed.

To whomever contributed to Xfce in any way: thanks! :)


Xubuntu upgrade: from Heron to Ibex

Usually I install Xubuntu afresh when a new release arrives. This time along, though, I felt like upgrading from Xubuntu 8.04 to Xubuntu 8.10.

The first thing to consider is that Xubuntu 8.04 is a “Long Term Support” release, meaning that it’ll receive security updates for a longer period of time than normal releases. Thus, people using this version won’t need to upgrade Xubuntu every six months when a new version is released. The consequence is that you will not be notified of a new normal release when it arrives.

In order to be able to start the upgrade process, you’ll need to start the Software Sources application from Applications->System. In that application, under the Updates tab, you can select which new distribution releases you want to be notified of at the bottom. By default, this is set to Long term support releases only, but to upgrade to Xubuntu 8.10 you’ll want to set this to Normal releases.



With that set, when you start the Update Manager (Applications->System), you will be notified that a new distribution release is available. To start the upgrade process, just click the Upgrade button on top.



This will then pop up a screen containing the release notes of the new release, which unfortunately are Ubuntu-specific.



After confirming that you want to upgrade, Xubuntu will download an upgrade tool. It will start preparing the upgrade and will update your software sources to make sure you will be downloading software for the newer version. No need to worry though: if you press Cancel, the original configuration will be restored and any other edits the tool might have made will be reverted.





When information has been gathered about the upgrade, a new confirmation window will appear providing an overview of what is going to be done and giving you another chance to back off if you got scared. It also advises you to close all open applications to prevent loss of data – wise words indeed.

Of course, it is always recommended to make a backup of important documents and settings before you upgrade.



Before the upgrade could continue, a window popped up informing me that the (proprietary) driver for my graphics card was no longer available in the new version, giving me another chance to abort the upgrade. I opted to continue and take the risk of losing my shiny desktop effects (due to needing to use the open source driver), but was relieved to find that they still worked after the upgrade – I did not even need to redo the steps to install Compiz in Xubuntu. That said, this does not mean I recommend you to ignore the warning – I have too little knowledge of graphics cards and their drivers to be giving sensible advise on that.



The upgrade tool will then start downloading the packages of the new version. This will take a while (essentially it’s downloading new versions of most of your applications in their entirety) – the final stage in which you will still have the option to cancel the upgrade. Isn’t that great? :)



With the packages downloaded, the tool will start installing them – from this point on there’s no going back!





During the installation of the new packages, you might get some questions about newer configuration files overwriting older ones (I got most of these at the end of this process, so you can make yourself some coffee while it’s installing the bulk of new packages ;) ). In most cases, you’ll probably want the new one unless you recognise the file and know that you need the alterations you made to that file. Going with the default options is often sensible as well.





When the new versions are installed, the upgrade tool will try to remove as much cruft as it can find.







Finally, the upgrade process is almost complete – all it needs you to do to finish it off is to restart your computer and cross your fingers that the upgrade went smoothly and your system is still usable.



As said, I had been warned that the driver for my graphics card was no longer available, but luckily the Hardware Drivers application (Applications->System) pointed out that another proprietary driver was available that allowed me to enable Compiz again.



All in all, the upgrade was a generally a pleasing experience to me, and I hope and expect you will feel the same.