Xfce

Subdomains
 

Questions after the 4.10 release

  • May 1, 2012
  • Nick

A short post to answerer some questions I’ve ready in comments on the 4.10 release news across the internet. If you have more questions, let me know in the comments and I’ll try to answer them.

A new stable release after 16 months? And no 4.8.1 release…

This is because Xfce has a different release model than for example GNOME or KDE when it comes to stable releases. Because of the limited team of developers we want to spend the least time possible on releasing packages. Big stable releases like other desktops do consume a lot of time, even with the small-ish amount of core packages in Xfce.

Therefore after 4.6 the following was decided: we only do 4 big releases (3 preview releases and 1 stable release) and after that only stable releases for individual packages. So the desktop version is 4.10 (notice the lacking micro-number), individual components could have higher 4.10.x numbers.

As an example, the last 4.8 stable release of xfce4-dev-tools is 4.8.0, the same as in the 4.8 fat-tarball release. The latest 4.8 release of xfce4-panel is 4.8.6 (6 stable releases after 4.8.0, which was in the 4.8 fat-tarball).

We know this is harder for starting users, who prefer to grab 1 tarball with all the latest versions, but instead need to crawl through /src/xfce and need to find the latest version. For distributions this is a lot easier: packagers are subscribed to the xfce-announce mailing list or peek identi.ca and once in a while they need to update 1 of the packages.

Nonetheless this is still a point where we can improve so I’ll see if I can provide more information on the website (announcements and links to the latest package versions).

4.10 only had 2 preview releases, because no critical bugs appeared and translations were in a good shape. Enough reasons for me to skip pre3 and release 4.10 instead.

Online Documentation Wiki

Just to be clear about this: we understand online docs are not a solution, but it was the best we could do in a short time. Hopefully the wiki-based setup will attract more contributors (who previously feared docbook or mallard, yes we tried that too) and lead to a complete set of documentation . When we feel satisfied with the content of the wiki we’ll look into a “wiki snapshot” for offline usage and ship that in an xfce4-docs package.

Gtk3

First 2 things: no Xfce 4.10 is not using gtk3, only the gtk-xfce-engine theme engine supports gtk3. Secondly we will discuss if Xfce 4.12 will be ported to gtk3. I’ll explain the latter:

Technically gtk3 is nothing different then gtk2 when it comes to programming. The hard parts are porting of some custom widgets (drawing and size allocation), replacements of some deprecated symbols and link to gtk3 libs. All things a user is not going to notice if we do it right.

Gtk3 is also not faster than gtk2, maybe there are some areas were it got a bit faster, but so there are areas where performance decreased a bit. Nothing shocking here.

An issue I’m aware of is theming issues in gtk3. From what I understand this changed back and forward in gtk 3.0, 3.2 and 3.4. So we need to decide which version we require to get this working consistently, because people will complain if only the Raleigh theme can be used :).

From the Xfce point of view there is (again) the resource problem for porting all plugins, because if for example the panel is ported to gtk3, also the plugins need to be ported. Not all goodies are maintained, but usually they work and distros can compile them. If in 4.12 suddenly 50% of the external plugins are not working that will be another thing users will notice.

At any rate, don’t get overly excited about gtk3, it’s just gtk 2.26 with a huge api break :). Once we decided which version we use in 4.12, I’ll post it on the blog.

LXDE still consumes less memory

*sigh* I’m not going to rant on this because as a user you should choose the desktop that makes you happy, but anyway it annoys me a tiny bit. So just to throw some information:

LXDE and Xfce are both based on the same toolkit and provide roughly the same set of features. That as a start makes it technically almost impossible to be much better or worse regarding memory usage. I think this whole myth started by comparing two distributions (clue: strcmp (distro_a + 1, distro_b + 1) == 0).

I’m sure Xfce consumes a bit more memory, because more processes are started. Especially when external plugins are added to the panel: a design decision to make the panel more stable.

I don’t know or care where this comparison started, but if somebody does this again the the future, please compare the actual memory usage and don’t use free. Or even better: don’t compare memory usage at all because it is pretty useless.
That said: if I start a default LXDE and Xfce 4.10 desktop (default Arch Linux packages) and use ps_mem.py, Xfce consumes 2 MiB more memory (same or desktop-equal applications are started). Do whatever you want this is number, as long as you compare apples and apples.

Not much accomplished in over 1 year

Sorry, I also work the entire week. But I don’t blame myself, Xfce is a fun project for all of us and if people move to another country, have a day job, a life, school/exams or simply don’t feel like working on Xfce not much progress is made.

Personally I don’t have the feeling not much was done in 4.10, we didn’t break anything major and a lot of the todo’s for 4.10 were completed in the release cycle. The focus was polishing and that’s what we did!

Updates:

  • 01-05 13:34: Added “Not much accomplished in over 1 year”.

Xfce 4.10 released!

  • April 28, 2012
  • Nick

Today, after 1 year and 4 months of work, we are pleased to announce the release of the Xfce desktop 4.10, a new stable version that supersedes Xfce 4.8.

In the 4.10 cycle we mainly focused on polishing the desktop and improving the user experience in various ways. Highlights of this release are:

  • A new application finder that has been completely rewritten and combines the functionality of the old xfce4-appfinder and xfrun4.
  • The panel now has an alternative vertical display mode (a deskbar). What is more, panel plugins can be arranged in multiple rows, which is particularly useful in the deskbar mode.
  • A new MIME type editor that allows you to easily change applications used for opening different file types. The mouse and touchpad settings dialog and the settings editor were extended in terms of functionality. The former now supports tablets in a much better way.
  • It is now possible to launch applications and open files on the desktop with a single click of the mouse. In addition, the 4.10 desktop can display thumbnails and automatically advance through the wallpaper list.
  • The window manager can be configured to tile windows when dragging them to the screen edges. The tab window (Alt+Tab) supports more flexible theming and cursor key navigation.

An online tour of the changes in Xfce 4.10 can be viewed here:

http://xfce.org/about/tour

A detailed overview of the changes compared to Xfce 4.8 and Xfce 4.10 preview releases can be found on the following page:

http://xfce.org/download/changelogs

This release can be downloaded either as a set of individual packages or as a single fat tarball including all these individual versions:

http://archive.xfce.org/xfce/4.10

Thank you all the contributors, bug reporters, as well as translators and packagers for your efforts in making this release possible.

Best regards,
The Xfce development team

Xfce 4.10pre2 released!

  • April 14, 2012
  • Nick

Xfce 4.10pre2 is now available for download.

It includes the following releases of Xfce core components:

  • exo 0.7.3
  • garcon 0.1.12
  • gtk-xfce-engine 2.99.3
  • libxfce4ui 4.9.2
  • libxfce4util 4.9.1
  • thunar 1.3.2
  • thunar-volman 0.7.1
  • tumbler 0.1.24
  • xfce4-appfinder 4.9.5
  • xfce4-dev-tools 4.9.2
  • xfce4-panel 4.9.2
  • xfce4-power-manager 1.1.0
  • xfce4-session 4.9.1
  • xfce4-settings 4.9.5
  • xfconf 4.9.1
  • xfdesktop 4.9.3
  • xfwm4 4.9.1

Individual tarballs are available for download now:
http://archive.xfce.org/xfce/4.10pre2/src

A tarball including all individual releases can be downloaded here:
http://archive.xfce.org/xfce/4.10pre2/fat_tarballs

Release notes for 4.10pre2

The Xfce development team is proud to announce the second preview release for Xfce 4.10. Together with this preview release, the Xfce project announces the string and code (only critical bug fixes or regressions) freeze for the final 4.10 release which is set to be pushed out to the world on April 28th, 2012.

This release incorporates some new features like improved responsiveness of file operations in Thunar and tiling improvements in Xfwm4. Everything else is bug fixes and a _lot_ of translation updates.

A list of all changes is available on:
http://xfce.org/download/changelogs/4.10pre2

We hope you will enjoy this release. Please give us feedback by sharing your thoughts, blogging, tweeting or by filing bug reports! With your help, 4.10 will be the best release ever (at least until 4.12)!

Kind regards and thanks to everyone who has contributed to this release,
The Xfce development team

We’re still looking for mirrors

  • April 10, 2012
  • Nick

Since we’re using MirrorBrain to distribute the Xfce packages a number of good mirrors were collected. However, as you can see in the picture below, South America and Asia are not covered with good local mirrors.

So I you have the possibility to become and Xfce mirror located in these continents, please read this page!

Xfce 4.10pre1 released!

  • April 1, 2012
  • Nick

Xfce 4.10pre1 is now available for download.

It includes the following releases of Xfce core components:

  • exo 0.7.2
  • garcon 0.1.11
  • gtk-xfce-engine 2.99.2
  • libxfce4ui 4.9.1
  • libxfce4util 4.9.0
  • thunar 1.3.1
  • thunar-volman 0.7.0
  • tumbler 0.1.24
  • xfce4-appfinder 4.9.4
  • xfce4-dev-tools 4.9.1
  • xfce4-panel 4.9.1
  • xfce4-power-manager 1.0.11
  • xfce4-session 4.9.0
  • xfce4-settings 4.9.4
  • xfconf 4.9.0
  • xfdesktop 4.9.2
  • xfwm4 4.9.0

Individual tarballs are available for download now:

http://archive.xfce.org/xfce/4.10pre1/src

A tarball including all individual releases can be downloaded here:

http://archive.xfce.org/xfce/4.10pre1/fat_tarballs

Release notes for 4.10pre1

The Xfce development team is proud to announce the first preview release for Xfce 4.10. Together with this preview release, the Xfce project announces the feature freeze for the final 4.10 release which is set to be pushed out to the world on April 28th, 2012.

This release incorporates major changes to the core of the Xfce desktop environment and hopefully succeeds in fulfilling a number of long time requests. Among the most notable updates is the new application finder that merges the functionality of the old appfinder and xfrun4. The Panel also has a new vertical mode [aka Deskbar] for better space usage on wide-screen monitors and a new actions plugin. On the settings side the settings helper is integrated in xfsettingsd, saving 1 running process. There is also a reworked settings dialog with categories and pluggable dialogs enabled by default. Basic Synaptics and Wacom settings in the Mouse settings and a new MIME-Type editor. Thunar gained a more polished layout to reduce space usage and more responsive interaction with the thumbnail generator. Because we have not decided on how to merge the desktop functionality into Thunar yet, Xfdesktop has instead received various improvements, including single-click support, desktop icon thumbnails and better pasting of files. The Session Manager has improved power management code, tips have been removed and cleanup sessions from the interface. Last but not least, the Window Manager now has support for tiling windows and arrow key navigation in the task switcher.

Another big change for users is the removal of user documentation of the packages and introduction of http://docs.xfce.org. The reason for this change is the limited contribution of documentation since Xfce 4.8, so we hope the wiki will attract more contributors. The help buttons in the interface still work, but you’ll be asked to open the documentation website in your web browser.

Furthermore we dropped xfce-utils. Its content has either been removed or moved to other Xfce packages. All other dependency changes are listed in the 4.10pre1 ChangeLog. The Xfce core also gained a couple of new components because we think they are critical for a minimal desktop: xfce4-power-manager (power management), tumbler (thumbnail generation for Thunar and other components), garcon (menu library, was already a dependency in 4.8), thunar-volman (volume manager for Thunar).

Of course translations also improved a lot, thanks to the amazing work of our translation teams.

A list of all changes is available on:

http://xfce.org/download/changelogs/4.10pre1

We hope you will enjoy this release. Please give us feedback by sharing your thoughts, blogging, tweeting, denting or by filing bug reports. With your help, 4.10 will be the best release ever (at least until 4.12)!

Kind regards and thanks to everyone who has contributed to this release,
The Xfce development team

RAW files with ristretto – (GtkPixbufLoader mimetype recognition bug)

  • March 5, 2012
  • Stephan Arts

In the release-notes for ristretto 0.3.5 last weekend, I mentioned the following:

Most problems with ristretto are actually caused by incorrect mime-type recognition
of the operating-system, identifying raw files (like canon’s CR2 format) as TIFF files.
This will result in an error from the tiff loader, these errors are now displayed in the UI,
making it possible to identify the source of the problem.

Since I could not understand why this happened, I started investigating the problem a bit further.

So, I executed the following commands on my system:

$ mimtype IMG_6635.CR2
IMG_6635.CR2: image/x-canon-cr2
$ file IMG_6635.CR2
IMG_6635.CR2: Canon CR2 raw image data, version 2.0

In my defense, I have seen it return image/tiff in the past, but clearly that was not the case right now. Both commands returned image/x-canon-cr2 just fine.

But opening the raw-files with ristretto (with the libopenraw-gnome backend installed), still gave me TIFF image-loading errors.

So something else must be causing the problems. Apparently, the OS determines the mimetype just fine, but something inside ristretto does not. Checking the source I discovered I was using gdk_pixbuf_loader_new(), which creates a pixbufloader that automagically determines the mimetype based on the stream of data you feed it.

So, I replaced that with a call to gdk_pixbuf_loader_new_with_mime_type (mime_type, NULL) and retrieved the mimetype using GFileInfo.

The commit that fixes this problem is 8dd741057f7b935d8e7c327017d850388ba77767, you can cherry-pick it and install libopenraw-gnome to support the rendering of raw files  inside ristretto.

NOTE:
Libopenraw-gnome is still under active development and rendering-bugs can occur. – When the image looks bad, this is not a bug in ristretto, it is probably some terrible photography ;-), or maybe something is not yet fully implemented in libopenraw-gnome.
Using git-master this weekend did not result in any usable whitebalance or exposure compensation for me.

FOSDEM 2012

  • February 9, 2012
  • Jannis Pohlmann

This year’s FOSDEM is over and I hope that most of us have by now recovered from an exhausting weekend that was first and foremost exciting and a lot of fun! With about 12 people, the Xfce group was—I think—larger than ever before. Add to that a fairly large number of my colleagues from Codethink, into which I bumped at the beer event and FOSDEM itself from time to time. Despite mostly staying with Xfce, I enjoyed knowing and meeting people all over the place.

Unfortunately, some of us—myself included—missed half of the beer event because our trains and planes arrived late. Snow in Brussels, a cold weekend ahead. When we arrived at the Delirium Café at around midnight, I was glad to see that all the others had already made friends again. Olivier, Stephan, Peter, Nick, Simon, Christoph, everyone was there, some of them sufficiently drunk, I imagine. Although to be be fair, you wouldn’t really notice. Most of us left not to long after that in order to be in a good condition in the morning. Having only caught up half on drinking, Christian, Mike and I ended up staying at the Delirium with a few Codethink colleagues including Sam, Luc and Javier—until they finally kicked us out at around four in the morning.

Food, taxi, 2 1/2 hours of sleep later and we were sitting in the hotel, enjoying a fantastic buffet breakfast. Admittedly, I couldn’t eat that morning, ending the night in the Delirium had lead to quite a strong hangover. After the majority of us had gathered in the hotel lobby, we squeezed ourselves into the 71 bus in two groups and finally arrived at FOSDEM. I do not remember the details of the day, but it was a great mix of talks (including my own one about Tumbler, which I felt was not very special, picture below), chatting and minor hacking (at least on my side; Nick made good progress with the settings editor in the meantime). During the day, Jean-Francois, Jens and Mark joined us and we (or most of us at least) ended the day having food in a Vietnamese restaurant close to the hotel and a beer in the hotel lobby.

Sunday was similar, except that I could finally enjoy the breakfast. Lovely. Unfortunately, we didn’t manage to get everyone together anymore, so our initially large group was now split up into smaller ones for the rest of Sunday. We still managed to have a few technical chats about Xfce that day and made a few decisions (see below). Regards talks, I mostly remember the Wayland Q&A session and a talk about social engineering in free software communities, Most of us left in the afternoon or evening. I met up with Luc, Sam, Javier and a bunch of other people to have food in a very nice restaurant. Got up at six in the morning, walked to the central station, took a plane home from the airport and went back to work in the afternoon. Unlike a few others I seem to have escaped the typical illnesses (cold, broken sleep cycles, general exhaustion) that events like FOSDEM always bring along.

Xfce-Related News — Fresh from FOSDEM

Wayland was big this year. I will spare you the details of how it works. Throughout the weekend, we had various discussions that involved Wayland. While it may take some load of Olivier by eventually making window managers obsolete, there is still a major problem with it: it does not support the XEmbed protocol, and therefor will break pluggable settings dialogs and panel plugins. We have sent mails to the wayland-devel list to find out how they feel about this. For now, I suppose this is all we can do.

Reorganization of the settings dialogs

One thing we decided on Sunday was to reorganize the settings dialogs so that the location of particular types of settings becomes more predictable. This applies to appearance and window manager themeing, and the application keyboard shortcuts and window manager keyboard shortcuts in particular. We will rearrange some of these tabs and merge them so that all related settings are in one place. We will also merge the window manager and window manager tweaks dialogs into one.

Release Schedule for Xfce 4.10

Despite a lack of completed features in Thunar (which are unlikely to get finished before 4.10), there are only a few things that really keep us from releasing Xfce 4.10. We have not decided on a release date, but if things go well, we should be able to roll the first pre-release one month from now, in early March. This would mean that a final release in May or June would be feasible.

Possibility of a hackfest

Meeting up with the team is always great fun. Unfortunately, FOSDEM is a busy event and only lasts two days. Like last year, we discussed the possibility of an Xfce hackfest in the future. I would love to see this idea becoming reality. If half a dozen of the relevant people can make it for at least a couple of days, this could greatly benefit the development of Xfce. Ideally, such a hackfest would span over at least 4-5 days, ideally including a weekend to make it easier to attend for people with jobs. Given a relatively small group, it might even be possible to hold an event like this at someone’s flat. This is definitely something that we will look into soon.

Like every year, FOSDEM 2012 was a great event. And like every year, a few more nicknames have turned into real faces that, unsurprisingly, belong to incredibly friendly human beings! I only wish that we had more time to discuss things face to face and do some serious work on Xfce together. In any case, this calls for another iteration next year. And with that, I shall end this wrap-up.

Xfce 4010 – (release-schedule and versioning)

  • January 17, 2012
  • Stephan Arts

Hi all,

There has been a lengthy discussion about the xfce version-number.
Is it OK to call the next version of xfce 4.10?

Some package maintainers have a problem with 4.10 being a later version then 4.8, since they see 4.10 as 4.1 with an extra decimal for precision.

Since it could cause upgrade-problems for several distributions, we should find a way to solve that problem.

Why not go for 5.0?

If the ‘.’ is a decimal-separator, a 0.2 upgrade from 4.8 would end up at Xfce 5.0. But we already discussed that . We are not going for 5.0, it would only create confusion, and people start thinking we pulled a ‘gnome-3’ on them. So that one was out pretty quick.

But, the confusion remains. Olivier Fourdan argued that we could think of it as a hexadecimal value, so 0x4.8 would be followed by 0x4.A. Though this sounds funny, and it solves our problem for a few versions (0x4.C, 0x4.E) but we’d end up with 0x5.0 eventually… resulting in the same problem.

And nobody uses the hexadecimal system for version-numbers, that is silly.

So? Now what?

It took a while before we realized, that the ‘.’ could be seen as a separator for thousands (it’s used like this in most of Europe). So you’d have Xfce 4,008 and Xfce 4,010. This not only solves our problem for the next version. At the rate of one release every 2 years we stay away from the whole 5.0 discussion for another 990 years. (Unless another reason appears to introduce a 41xx series of 50xx series of Xfce somewhere this century).

So, here’s the conclusion:
The next version of Xfce will be Xfce 4010 (four-thousand-and-ten)!

But that’s ridiculous!?

Well, it used to be. But these days anything is possible with version-numbers really, except for going backwards.

Which is precisely what we are avoiding here.

Just look at Mozilla Firefox (moving from 4 to 9 at the same pace as they went from 0.7 to 1.0) or Google chrome (what version-number are they using anyway?), or the linux-kernel, going from 2.6.0 to 2.6.39 with entire subsystems being rewritten from scratch, and then moving from 2.6.39 to 3.0 without any radical change whatsoever.

Really, moving from 4.8 to 4010 is not really that big a deal, if it serves the right purpose.

That’s nice and all, but when will we get it?

Ah, more good good news :)

We have a new schedule. (it is not published to the wiki yet though)

Essentially, the development-phase is pro-longed until the weekend after FOSDEM, giving us time to do some hacking there and get it in master the week after.

Dates Phase/Deadline Everyone’s Tasks Release Team Tasks Maintainer Tasks
2011-Feb-13 – 2012-Feb-12 Development Phase Support Xfce Supervise development, remind people of deadlines Hacking
2012-Feb-12 – 2012-April-01 Release Phase Wait patiently Perform releases, remind people of deadlines Perform releases of own components if desired
2011-11-06
2012-Feb-12
Xfce 4010pre1 (Feature Freeze) Prepare release announcements, release Xfce 4010pre1 Make sure the latest development release is in good shape and uploaded
2011-12-04
2012-March-11
Xfce 4010pre2 (String Freeze) Prepare release announcements, release Xfce 4010pre2 Make sure that strings in the latest development release or in master are good
2012-01-08
2012-March-25
Xfce 4010pre3 (Code Freeze) Prepare release announcements, release Xfce 4010pre3, create ELS branches Make sure the latest development release is in good shape, or that code is solid/finished in master
2012-01-15
2012-April-01
Xfce 4010 (Final Release) Celebrate Prepare release announcements, release Xfce 4010, branch for stable release, merge ELS branches into master Make sure to upload a new release of own components before this deadline

We hope you are as happy as we are with the new release schedule.

Update: There was some confusion about the date notation, updated it to get rid of the month-numbers.

Update-2 [18-01-2012 13:37 CET]: For more background information about this decision, check this link

Documentation Wiki

  • January 6, 2012
  • Nick

Over the last years we’ve tried many techniques to make it easier to submit documentation for the Xfce packages. Unfortunately, whatever we’ve tried; hardly any documentation was contributed.

Complete documentation (or close to that) was still a goal for Xfce 4.10, so we’ve decided to drop the package manuals for the next stable release (now GIT master) and focus on a wiki-based setup. This means that the Help buttons in 4.10 will try to open your web browser and redirect you to the correct page on docs.xfce.org.

We understand a small group of people without Internet are affected by this change. However as the situation is right now, clicking the Help button is often not even possible and once the wiki is starting to grow, we’ll look into an xfce4-docs package that contains a snapshot of the wiki data.

We hope with this change the barrier to contribute manuals is low enough for contributors to help us with good documentation, so Xfce 4.10 will be the best documented release we’ve ever made (and that should fairly easy ;-).

Xfce git modules

  • December 22, 2011
  • Jasper Huijsmans

I needed to update my scripts to checkout everything in the Xfce git repositories. I used to run something like ssh ls /var/git on mocha (our old git server) to get the list of modules, but now I have this:


lynx -dump -listonly git.xfce.org \
| grep "git.xfce.org/[^?]" | grep -v "archive" \
| sed -e 's^.*http://git.xfce.org/^^' -e 's^/$^^'

Any better suggestions? This works very well for me, already.

Now, unfortunately, I have not found the time and energy to do something useful with all that fresh code. But it feels good to know it’s there if I do ;-)