Xfce

Subdomains
 

Exo 0.12.6 Released

  • June 14, 2019
  • Sean Davis

With Xfce 4.14 rapidly approaching, development efforts have shifted to bug fixes. Exo 0.12.6 is no exception, with several old and new bugs finally meeting their end.

What’s New?

Missed the release announcement for Exo 0.12.5? Click here to check it out!

Bug Fixes

  • Add trailing “;” to mimeapps.list (Xfce #15087)
  • Clear bad entries from mimeapps.list (Xfce #15046, #15238)
  • Synchronize default applications to gio-mime (Xfce #14633)
  • Disable emoji menu in type-ahead search (Xfce #15451)
  • Enable dismissal of “Failed to open default” dialogs
    • Related Issue: Brave Browser #4142
    • If the error can be safely ignored, the user is able to dismiss
      it. After changing defaults, the dismissal is forgotten.

Translation Updates

Albanian, Armenian (Armenia), Bulgarian, Chinese (China), Chinese (Taiwan), Croatian, Danish, French, Galician, German, Hungarian, Icelandic, Interlingue, Italian, Polish, Portuguese, Portuguese (Brazil), Russian, Spanish, Thai, Turkish

Downloads

Source tarball (md5sha1sha256)

Exo 0.12.6 Released

  • June 13, 2019
  • Sean Davis

What’s New?

Exo 0.12.6 Released

Missed the release announcement for Exo 0.12.5? Click here to check it out!

Bug Fixes

  • Add trailing “;” to mimeapps.list (Xfce #15087)
  • Clear bad entries from mimeapps.list (Xfce #15046, #15238)
  • Synchronize default applications to gio-mime (Xfce #14633)
  • Disable emoji menu in type-ahead search (Xfce #15451)
  • Enable dismissal of “Failed to open default” dialogs
    • Related Issue: Brave Browser #4142
    • If the error can be safely ignored, the user is able to dismissit. After changing defaults, the dismissal is forgotten.

Translation Updates

Albanian, Armenian (Armenia), Bulgarian, Chinese (China), Chinese (Taiwan), Croatian, Danish, French, Galician, German, Hungarian, Icelandic, Interlingue, Italian, Polish, Portuguese, Portuguese (Brazil), Russian, Spanish, Thai, Turkish

Downloads

Source tarball (md5, sha1, sha256)

Exo 0.12.4 Released

  • January 20, 2019
  • Sean Davis

Exo 0.12.4 is now available with an improved icon view, better icon rendering, and reduced disk usage. Come and get it!

What’s New?

General

  • Exo once again uses the same thumbnail directories as other applications (Xfce #14799), resulting in reduced disk usage.
    • Where everything else moved to ~/.cache/thumbnails quite some time ago, Exo continued to use ~/.thumbnails. Enjoy all the extra disk space!

Bug Fixes

  • ExoCellRendererIcon: Fix highlight rendering with GTK 3 (Xfce #14971)
  • ExoIconView: Fix search popup placement (Xfce #14994)
    • Additionally, a long-standing bug where the type-ahead search widget would be drawn partially off the screen for maximized windows, has been fixed!

Translation Updates

Belarusian, Catalan, Chinese (China), German, Hungarian, Icelandic, Italian, Kannada, Korean, Lithuanian, Malay, Portuguese, Portuguese (Brazil), Russian, Serbian, Slovak, Spanish, Thai

Downloads

Source tarball (md5sha1sha256)

 

Exo 0.12.4 Released

  • January 19, 2019
  • Sean Davis

What’s New?

General

  • Exo once again uses the same thumbnail directories as other applications (Xfce #14799), resulting in reduced disk usage.
  • Where everything else moved to ~/.cache/thumbnails quite some time ago, Exo continued to use ~/.thumbnails. Enjoy all the extra disk space!

Bug Fixes

  • ExoCellRendererIcon: Fix highlight rendering with GTK 3 (Xfce #14971)
  • ExoIconView: Fix search popup placement (Xfce #14994)
  • Additionally, a long-standing bug where the type-ahead search widget would be drawn partially off the screen for maximized windows, has been fixed!

Translation Updates

Exo 0.12.4 Released

Belarusian, Catalan, Chinese (China), German, Hungarian, Icelandic, Italian, Kannada, Korean, Lithuanian, Malay, Portuguese, Portuguese (Brazil), Russian, Serbian, Slovak, Spanish, Thai

Downloads

Source tarball (md5, sha1, sha256)

Exo 0.12.1 (and 0.12.2) Released

  • June 21, 2018
  • Sean Davis

Xfce application developers rejoice! A new version of the Exo support library is now available. With performance improvements and full support for GCC 8, both users and developers should be excited for this news.

What’s New?

Bug Fixes

  • Use the “user-bookmarks” icon instead of “bookmark-new” (Xfce #14243)
  • Properly scale application icons in Preferred Applications dialog (Xfce #14362)
  • Remove pure attribute of function that returns void (Xfce #14427)
  • Missing varargs init or cleanup (CID #30799)
    • Reverted in 0.12.2 to get rid of some unwelcome segmentation faults (Xfce #14465)
  • Uninitialized scalar variable (CID #127777)

Exo Icon Chooser Dialog

  • Dropped deprecated International icon context, added Stock icon context
  • Increased context title max length to support long translations
  • Symbolic icons are no longer populated in the icon chooser dialog, which could lead to significant performance gains with various icon themes
  • Added a new test to the test suite for the GTK 3 version of this dialog

Helpers

Compiler Support

  • Disabled -Wexpansion-to-defined and resolve various compiler warnings for GCC 7
  • Fixed -Wcast-function-type for GCC 8

Translation Updates

Albanian, Amharic, Belarusian, Bulgarian, Catalan, Chinese (China), Chinese (Taiwan), Czech, Danish, Dutch, English (Australia), Finnish, French, Galician, Greek, Hebrew, Hungarian, Italian, Polish, Portuguese, Russian, Slovak, Swedish, Turkish

Downloads

Source tarball (md5sha1sha256)

Exo 0.12.0 Stable Release

  • February 14, 2018
  • Sean Davis

With full GTK+ 2 and 3 support and numerous enhancements, Exo 0.12.0 provides a solid development base for new and refreshed Xfce applications.

What’s New?

Since this is the first stable release in nearly 2.5 years, I am going to provide a quick summary of the changes since version 0.10.7, released September 13, 2015.

New Features

GTK Extensions
Helpers
  • WebBrower: Added Brave, Google Chrome, and Vivaldi
  • MailReader: Added Geary, dropped Opera Mail (no longer available for Linux)
Utilities
  • exo-csource: Added a new --output flag to write the generated output to a file
  • exo-helper: Added a new --query flag to determine the preferred application

ICONS

  • Replaced non-standard gnome-* icons
  • Replaced non-existent “missing-image” icon

BUILD CHANGES

  • Build requirements were updated. Exo now requires GTK+ 2.24, GTK+ 3.22, GLib 2.42, libxfce4ui 4.12, and libxfce4util 4.12. Building GTK+ 3 libraries is not optional.
  • Default debug setting is now “yes” instead of “full”.

DOCUMENTATION UPDATES

  • Added missing per-release API indices
  • Resolved undocumented symbols (100% symbol coverage)
  • Updated project documentation (HACKING, README, THANKS)

Release Notes

  • The full release notes can be found here.
  • The full change log can be found here.

Downloads

The latest version of Exo can always be downloaded from the Xfce archives. Grab version 0.12.0 from the below link.

https://archive.xfce.org/src/xfce/exo/0.12/exo-0.12.0.tar.bz2

  • SHA-256: 64b88271a37d0ec7dca062c7bc61ca323116f7855092ac39698c421a2f30a18f
  • SHA-1: 364a9aaa1724b99fe33f46b93969d98e990e9a1f
  • MD5: 724afcca224f5fb22b510926d2740e52

Development Release: Exo 0.11.4

  • July 12, 2017
  • Sean Davis

After quite some time, the first release candidate for the Exo 0.12.x series is ready for some serious testing!

What’s New in Exo 0.11.4?

This release completes the GTK+ 3 port and can now be used for GTK+ 2 or 3 Xfce application development.

New Features

Bug Fixes

  • Removed --disable-debug flag from make distcheck (Xfce #11556)

Icons

  • Replaced non-standard gnome-* icons
  • Replaced non-existent “missing-image” icon

Deprecations

  • Dropped gdk_window_process_updates for GTK+ 3.22
  • Replaced gdk_pixbuf_new_from_inline usage
  • Replaced gdk_screen_* usage
  • Replaced gtk_style_context_get_background_color usage
  • Removed warnings for gtk_dialog_get_action_area and GioScheduler

Translation Updates

Arabic, Catalan, Chinese (China), Danish, Dutch, French, German, Hebrew, Indonesian, Korean, Lithuanian, Portuguese (Brazil), Russian, Spanish, Swedish

Downloads

The latest version of Exo can always be downloaded from the Xfce archives. Grab version 0.11.4 from the below link.

http://archive.xfce.org/src/xfce/exo/0.11/exo-0.11.4.tar.bz2

  • SHA-256: 54fc6d26eff4ca0525aed8484af822ac561cd26adad4a2a13a282b2d9f349d84
  • SHA-1: 49e0fdf6899eea7aa1050055c7fe2dcddd0d1d7a
  • MD5: 7ad88a19ccb4599fd46b53b04325552c

Development Release: Exo 0.11.3

  • June 18, 2017
  • Sean Davis

Xfce 4.14 development has been picking up steam in the past few months.  With the release of Exo 0.11.3, things are only going to get steamier.  

What is Exo?

Exo is an Xfce library for application development. It was introduced years ago to aid the development of Xfce applications.  It’s not used quite as heavily these days, but you’ll still find Exo components in Thunar (the file manager) and Xfce Settings Manager.

Exo provides custom widgets and APIs that extend the functionality of GLib and GTK+ (both 2 and 3).  It also provides the mechanisms for defining preferred applications in Xfce.

What’s New in Exo 0.11.3?

New Features

  • exo-csource: Added a new --output flag to write the generated output to a file (Xfce #12901)
  • exo-helper: Added a new --query flag to determine the preferred application (Xfce #8579)

Build Changes

  • Build requirements were updated.  Exo now requires GTK+ 2.24, GTK 3.20, GLib 2.42, and libxfce4ui 4.12
  • Building GTK+ 3 libraries is no longer optional
  • Default debug setting is now “yes” instead of “full”. This means that builds will not fail if there are deprecated GTK+ symbols (and there are plenty).

Bug Fixes

  • Discard preferred application selection if dialog is canceled (Xfce #8802)
  • Do not ship generic category icons, these are standard (Xfce #9992)
  • Do not abort builds due to deprecated declarations (Xfce #11556)
  • Fix crash in Thunar on selection change after directory change (Xfce #13238)
  • Fix crash in exo-helper-1 from GTK 3 migration (Xfce #13374)
  • Fix ExoIconView being unable to decrease its size (Xfce #13402)

Documentation Updates

Available here

  • Add missing per-release API indices
  • Resolve undocumented symbols (100% symbol coverage)
  • Updated project documentation (HACKING, README, THANKS)

Translation Updates

Amharic, Asturian, Catalan, Chinese (Taiwan), Croatian, Danish, Dutch, Finnish, Galician, Greek, Indonesian, Kazakh,  Korean, Lithuanian, Norwegian Bokmal, Norwegian Nynorsk, Occitan, Portuguese (Brazil), Russian, Serbian, Slovenian, Spanish, Thai

Downloads

The latest version of Exo can always be downloaded from the Xfce archives. Grab version 0.11.3 from the below link.

http://archive.xfce.org/src/xfce/exo/0.11/exo-0.11.3.tar.bz2

  • SHA-256: 448d7f2b88074455d54a4c44aed08d977b482dc6063175f62a1abfcf0204420a
  • SHA-1: 758ced83d97650e0428563b42877aecfc9fc3c81
  • MD5: c1801052163cbd79490113f80431674a

Xfce 4.8 Schedule Changes

  • January 26, 2010
  • Jannis Pohlmann

As the Xfce release manager, I’d prefer to be the bringer of good news. Unfortunately, we have to make some adjustments with regards to the Xfce 4.8 release schedule.

You may well remember last year’s chaos with the 4.6 release date. We’re trying our best not to repeat that and if it should happen again, we’ll at least keep you posted about the issues as good as we can.

So, what’s the deal with 4.8?

One thing that hasn’t changed much is that our development team is very small. A hobby project of this size requires a certain amount of time to be invested by each individual developer. Time not everyone has as much has he would like to dedicate to Xfce.

Today, Brian announced his absence for the coming months due to his new job, leaving 2-3 of our core components (xfdesktop, xfconf and xfce4-session) more or less unmaintained (aside from bugfixes). The good news is that Jérôme (who has recently started to improve xfce4-settings and port xfce4-session to libxfce4ui) and Daniel (the maintainer of the thunar-shares-plugin) have offered their help with xfdesktop and xfce4-session.

Brian is not the only one having little time at hand though. I’m preparing myself for my final university exams, so ideally I’d be sticking my nose into lecture notes all day long. I still have the time to write mails like this but there hasn’t been much activity around thunar and related projects lately.

Again, I’m really happy to see people volunteering to help because that’s what we need right now. There’s a lot left to do before we can release 4.8. Let me get to that now.

As some of might have heard, thunar was ported to GIO this summer. Through GVfs, GIO brings new features such as SMB, SFTP, FTP browsing which some people use one a daily basis already. Now, GVfs has turned out to be problematic for us for various reasons. At first it shipped a HAL-based volume monitor with a hard-coded dependency on gnome-mount. Today it ships a volume monitor based on gnome-disk-utility (uses DeviceKit-disks itself) which proves to be inconsistent and somewhat incompatible to the HAL mounting code in exo.

The result: thunar-volman (not part of the core but important for thunar nonetheless) and xfdesktop will have to be ported to udev (the mounting being done with GIO, ideally). I’ve started working on this but this is far from being finished.

Question to the other developers: Didn’t xfce4-session use HAL for logging out and stuff? We might have to look into replacing those portions of code with something based on ConsoleKit, I guess?

HAL/udev is not the only issue however. With Xfce 4.8 we’ll be replacing libxfcegui4 with a new library called libxfce4ui. Not all core applications (again, xfdesktop being one of them, I think) have been ported to it yet. In most cases, this is no big deal and probably could be resolved within a few days though.

Then we have garcon, the much improved menu library that is supposed to replace libxfce4menu. At the time of writing the only feature it is lacking that is crucial for 4.8 is file system monitoring. We’ll probably implement basic monitoring like we had in libxfce4menu. Work on this hasn’t started yet.

Also, xfdesktop needs to be ported not only from ThunarVFS/HAL to GIO/udev but also from libxfce4menu to garcon.

So, as you can see there is quite a lot of work ahead of us. Taking into account the little free time some of us have these days, we’ve decided to postpone the 4.8 release until June 12th instead of April 12th. The entire release phase in our schedule has been moved by two months in time, as you can see on the official schedule wiki page:

 http://wiki.xfce.org/releng/4.8/schedule

To be honest, I wouldn’t consider this new date fixed either. It all depends on how much we can do until the feature freeze on April 1st. I’m optimistic that meeting the deadlines is possible though.

For all of you who can’t wait until June, try out our development releases which are announced on http://identi.ca/xfce. I have at least something good to share: For a few weeks now I’ve been running Fedora 12 with a mixture of Xfce 4.6 packages and development package from the upcoming 4.8 series and the new components have proven to be very stable already.

I’m especially happy about the new panel which works almost flawlessly (except for a few dual head issues) and not only supports real transparency and more comfortable launcher creation based on garcon, but is also compatible to panel plugins written for Xfce 4.6. (Good work, Nick!)

So, I guess this is it. A mixture of good and bad. I hope nobody is too disappointed. As always, we’re doing the best we can.

Cheers!

Thunar-volman and the deprecation of HAL in Xfce

  • January 16, 2010
  • Jannis Pohlmann

Last week I started looking at thunar-volman (a program that performs certain actions when new devices are plugged in) with the goal to make it compatible with the latest release of thunar which uses GIO instead of ThunarVFS for almost everything that takes place under the hood.

Until now, volume management (monitoring and mounting) in Xfce was done through HAL, the hardware abstraction layer that is currently being deprecated and dropped by major distributions. The functionality previously provided by HAL has been moved into udev, udisks (formerly known as DeviceKit-disks) and upower (formerly known as DeviceKit-power).

Volume management is transparently supported by GIO, meaning that applications don’t have to worry about the backend implementation. It should, in theory, not matter whether HAL is used or udev/udisks. Unsurprisingly, in reality, things are not that trivial, mainly for two reasons:

  1. Due to its focus on file management, GIO only supports monitoring and detecting storage devices (DVD drives, USB sticks etc.). There is no way to be notified when e.g. a digital camera or a portable media player is plugged in. This is critical for the functionality of thunar-volman which until now supported everything from cameras, media players, blank CDs/DVDs, audio CDs, PDAs and printers to input devices like keyboards, mice and tablets.
  2. Mounting volumes with udisks seems to be somewhat incompatible with HAL. I tried to mount volumes with thunar-volman and exo-mount (both implemented on top of HAL) and was for the root password upon unmounting in Thunar (using GIO and gnome-disk-utility/DeviceKit-disks). It seems like volumes mounted with HAL are assumed to be mounted by a different than the current user and thus, require root privileges to be unmounted.

HAL being deprecated and somewhat incompatible with udisks, what are the consequences for Xfce, and for thunar and thunar-volman in particular?

Let us, for a moment, assume Xfce 4.8 and thunar 1.0 were released as they are today, with thunar using GIO (and udisks instead of HAL in all major Linux distributions) and the rest (like thunar-volman and exo-mount) depending on HAL. As mentioned before, exo-mount and thunar wouldn’t work together in multi-user setups. Thunar would no longer detect cameras, PDAs, audio CDs, blank disks, mice, keyboards, tablets, media players and thunar-volman would end up being completely useless, as it is not detecting devices by itself. I think it is safe to say that this is not what we want.

In the following, I will focus on how to deal with thunar-volman. The rest of Xfce faces a similar roadmap, however. With regards to thunar-volman, there are (at least) three sane options:

  1. Drop thunar-volman and only support auto-mounting storage devices from now on, directly implemented in thunar. What is very obvious about this solution is that a lot of possibly useful functionality is lost.
  2. Port thunar-volman to (g)udev/udisks/GIO and make it a standalone daemon so that thunar no longer has to spawn it when new devices are plugged in. The advantage of this approach is that thunar only needs to depend on GIO and doesn’t have to implement the device detection part.
  3. Port thunar-volman to (g)udev/udisks/GIO as described above and make thunar depend on (g)udev for device detection. Spawn thunar-volman when devices are added/removed. The advantage over the previous approach is that thunar-volman doesn’t have to run permanently as a daemon. The additional thunar dependency on (g)udev could be seen as a disadvantage but on the other hand, it basically replaces another (HAL).

Now, everyone knows that programmers are lazy people. So, in the hope of being able to save some work, I started a survey on the usage of thunar-volman. The idea was to find out which of its features are used most and whether there are some that nobody really cares about. Here are the results:

=======================================================================================
                                                        Feature   #Users   Percentage 
---------------------------------------------------------------------------------------
                        Mount removable drives when hot-plugged       86        92.5%
                            Mount removable media when inserted       83        89.2%
                           Browse removable media when inserted       69        74.2%
             Cameras: Import digital photographs when connected       31        33.3%
                          Play video CDs and DVDs when inserted       31        33.3%
                                   Play audio CDs when inserted       30        32.3%
                 Burn a CD or DVD when a blank disc is inserted       21        22.6%
        Portable Media Players: Play music files when connected       11        11.8%
                      Auto-run programs on new drives and media        7         7.5%
        Automatically run a program when a printer is connected        7         7.5%
                        Auto-open files on new drives and media        6         6.5%
                               Sync Palm devices when connected        5         5.4%
  Automatically run a program when an USB keyboard is connected        3         3.2%
     Automatically run a program when an USB mouse is connected        3         3.2%
         Automatically run a program when a tabled is connected        2         2.2%
                          Sync Pocket PC devices when connected        2         2.2%
=======================================================================================
                Thunar Volume Manager Usage Survey with 93 participants

According to the results of this survey, auto-mounting and browsing of removable drives and media have highest priority among the 93 participating thunar-volman users. This more or less covers the functionality we could cover with GIO alone (plus automatically running a program when new drives and media are inserted). However, a third of the users also use thunar-volman for importing photographs from digital cameras and for playing video and audio CDs as well as DVDs automatically. Almost a 25 percent of all users use thunar-volman to start their favorite burning software when a blank CD or DVD is inserted. Slightly more than 10 percent want thunar-volman to start playing music on portable media players when they are plugged in. Printers and Palms are also somewhat relevant.

This survey confirms my expectations that handling storage devices alone is not enough even though they clearly are the most important use case for thunar-volman. Our users seem to like the flexibility of thunar-volman and make use of it. This disqualifies option 1 and leaves us with options 2 and 3. I’m inclined to avoid another daemon and go for number 3.

In preparation for porting thunar and thunar-volman to udev/udisks/GIO, I’ve created a wiki page to collect information about how we can reliably distinguish the different device types based on udev properties: http://wiki.xfce.org/dev/thunar-volman-udev. If you have blue-ray disks, video CDs, a digital camera, a Pocket PC, a Palm, a USB printer or a graphics tablet, you could make me very happy if you inserted them or plugged them in and sent me the output of udevadm info --export-db to my Xfce email address together with a short hint what devices you’ve plugged in. Alternatively, you can paste/upload the output somewhere on the internet and comment on this blog post, and thereby help making future versions of Xfce better.

Cheers!