Xfce

Subdomains
 

An Estimate on the Total Number of Xfce Users

  • April 7, 2024
  • Alexander Schwinn

Apr 06,2024

An Estimate on the Total Number of Xfce Users

Recently, my wife asked me how many people in total actually use the software I develop in my free time (mostly thunar).

I never thought about that question, so I just made a wild guess. Based on the number of people I believed are active on the Xfce Matrix / IRC channels, I answered: "... maybe between 2000 and 10.000 people do use Xfce".

I know nobody can give exact numbers. It's all about package downloads, OS types reported by browsers, and other more or less biased data harvesting.

However, the question nagged me, so I searched for some more reliable numbers.

Ubuntu came to my mind. Since it collects some user-data, I thought it might be a good starting point for my investigation.

Via web search, I found out that there seem to be about 40 Million Ubuntu users.

According to this post, 15% of them use Xubuntu.

--> 6 million Xubuntu users (holy crap)

Further digging revealed that aproximately 33% of Linux desktop users use a Ubuntu based distro.

--> Approximately 120 million Linux desktop users in total

--> Considering a rather conservative estimate of 10% Xfce users on non-Ubuntu systems --> another 8 million installs

That would be approximately 14 million Xfce users. So many people do use the software I tinker with? /o\

Considered that estimate is more or less accurate, than why are the Xfce communication channels rather calm?

For example, we currently have around 6000 non-blocked accounts at gitlab.xfce.org. That would be roughly one in every 2000 users (0,043%) who create an account. Can that be true?

Since I was not sure if my numbers are reasonable, I asked for feedback in the Xfce forums.

The estimate seems to be mostly fine. On the question about the rather low percentage of people who get in contact via official Xfce communication channels, there are several guesses:

  • If users are looking for answers to Xfce related problems, most of them search/ask on Reddit, Stack Exchange, ChatGPT, etc., or in distro specific channels.
  • Xfce is a very stable DE. Many Xfce users probably don't try to get in contact because things just work fine for them.
  • Many people might just use software "as is" and don't even bother to ask for any advice.

I wanted to share this estimate with you, since for me, it was a surprise to see that such a huge number of people actually seem to use Xfce. Knowing so gives me even more motivation to further improve Xfce.

Xfce 4.18 released

  • December 15, 2022
  • Alexander Schwinn

Dec 15,2022

Xfce 4.18 released

After almost two years of work, we are happy to announce the release of Xfce 4.18 !

Since Xfce 4.16 a lot of major development happened. Our team added multiple nice new features, did a gazillion of bug fixes and did various minor improvements. Finally, all that is going to be released for your pleasure.

This development cycle was influenced a lot by GSoC 2021 and GSoC 2022, which led to various new features, most of them for Thunar, the Xfce File Manager. Though as well multiple other Xfce components got a lot of love and many improvements were done under the hood.

Assuming you have installed Xfce 4.16, here is an overview on the major changes you will see on an upgrade to Xfce 4.18:

libxfce4ui

XfceFilenameInput

XfceFilenameInput is a comfortable widget for filename input, which was added in order to prevent invalid filenames at an early stage and to give detailed feedback on the concrete problem.

XfceFilenameInput - trailing whitespaces XfceFilenameInput - slash

XfceShortcutsEditor

This widget is a shortcut editor which was introduced in order to have a graphical interface to modify component-specific shortcuts. Currently, it is only used inside Thunar, Xfce4-terminal and Mousepad, though other components might follow.

XfceShortcutsEditor in Thunar

tumbler

Some performance improvements for the pixbuf-thumbnailer and the scheduler were done. As well now there are multiple overwrite options for the desktop-thumbnailer.

There is now support for the thumbnail sizes x-large and xx-large, which are very useful for high resolution displays.

Tumbler and Thunar now support shared thumbnail repositories, like described in the freedesktop.org thumbnail specification. This feature can be used to produce thumbnails for a folder in advance, directly located near the pictures. Like that, the thumbnails don't need to be re-generated for each individual user.

For more information on shared thumbnails, check the related blog post.

xfce4-panel

The DateTime and the Clock plugin provided overlapping functionallity. In order to prevent parallel development, they have been merged into a single plugin.

The new 'Clock' panel widget

The new Clock plugin received a new binary time mode now and provides a sleep monitor. Here's a screenshot of all possible layouts which are: Analog, Binary, Digital, Fuzzy and LCD.

All possible Clock Modes

xfdesktop

Like in thunar, the "Delete" menu entry in the context menu can now be hidden.

In order to don't mess the desktop by accident on pressing 'rearrange desktop icons', the user is asked for confirmation now.

xfce4-settings

The search entry for xfce4-settings-manager was a bit simplified. Now it will always be shown, without any slider or button.

xfce4-display-settings

xfce4-display-settings got some minor improvements and the possibility to decide what to do when new displays are connected.

xfce4-display-settings - minor improvements

xfce4-appearance-settings

On selecting a new theme, there is now the option to automatically set a matching xfwm4 theme, if available.

xfce4-appearance-settings - toggle to set matching Xfwm4 theme

thunar

List View

For directories, the count of containing files can now be displayed in the size column. It is now possible to add a 'file creation date' column, and the 'configure columns' dialog can be opened with a right-click on any column head.

Thunar - List View - Preferences Thunar - List View - File count and file creation date

Image Preview

Finally, an image preview side pane has been added to Thunar. No, wait, actually two of them! You can choose to either use the 'embedded' mode which will take no extra space, but hide parts of the left side pane. Or you can go for the 'standalone' mode, which will use a separate pane on the right and display as well some basic information.

Thunar - Embedded Image Preview Thunar - Standalone Image Preview

Undo and Redo

It is now possible to undo basic file operations and to redo them. Undo and Redo can be used for 'move', 'rename', 'trash', 'link' and 'create' operations. Per default, a history of the last 10 operations is stored, though the history length is configurable. Whenever an Undo/Redo is triggered, a notification with few details will be shown.

Thunar - Undo and Redo

File Highlight

Files now can be highlighted by setting the background and the filename to different colors. This can be done via an additional tab, located in the 'properties' dialog. The view menu provides a checkbox in order to enable/disable the feature. Once enabled, files now can be shown in all the colors of the rainbow.

Thunar - File Highlight Options Thunar - Hightlighted file in List View Thunar - Hightlighted files in Icon View

For more information on file highlight, check the related blog post.

Toolbar

It is now possible to customize the toolbar according to your personal needs! An additional dialog has been added for that purpose, on which the visibility and position of specific items can be managed. As well custom actions, which appear for folders can be used in the toolbar.

When the menubar is hidden, an additional toolbar button which can be used to show the menu will be displayed.

Thunar - Toolbar with all configurable Elements Thunar - Toolbar Configuration Dialog Thunar - Show Menubar button

For more information on the configurable toolbar, check the related blog post.

Split View

Thunar now provides the option to use split panes. The pane separator can be moved, and its position will be stored. Via a xfconf setting, it is as well possible to have a vertical split.

Thunar - Split Panes

Statusbar

The status bar style was tweaked and '|' is now used to separate entries. Furthermore, it is now possible to customize it by using the context menu.

Thunar - Statusbar Customization

Recursive Search

Thunar has now the possibility to search recursively, directly inside Thunar itself. The search is done in a separate thread and search results are added rapidly into a List View. A new row 'Location' shows where the search results are located, and the context menu provides the option 'Open Item Location' in order to travel there quickly. The preferences dialog provides an option to limit recursive search to local folders, or to disable it.

Thunar - Recursive Search Thunar - Recursive Search Preferences

For more information on the recursive search feature, check the related blog post.

Recent

Recently used files now can be accessed in the side pane. Like for the 'Recursive Search' feature, the new 'Location' row can be used in List View. Additionally, for 'Recent' a new row 'Recency' can be added to sort the files by their latest usage.

Thunar - Recently Used Files

For more information on 'Recent' in Thunar check the related blog post.

Bookmark Menu

In order to keep the 'Go' menu compact, bookmarks have been moved into a separate, new 'Bookmarks' menu. The menu item 'add Bookmark' was rather hidden in the 'send to' menu in Thunar 4.16. As part of the new 'Bookmarks' menu, it is more prominent now.

Thunar - Bookmarks Menu

Trash directory

With the new release, the trash directory provides an info bar which gives easy access to `Empty Trash` and 'Restore' functionality. When using List View, a 'Date Deleted' column will be shown, so that the files can be sorted by deletion date. Via context menu, it is now possible to select 'Restore and Show' in order to automatically open a new tab in the folder of the restored file(s).

Thunar - Trash Infobar and Date Deleted Column

Default Applications

The management to set/unset default applications for specific mime types was improved. The context menu got a dedicated item 'Set Default Application' which will open the 'ApplicationChooserDialog' with 'use as default' preselected. The dialog now has a section 'Default Application' in order to make clear which default application currently is set. If you want to remove applications from the list, right click it and select 'forget association'.

Thunar - Context Menu Entry to set Default Application Thunar - Revamped Application Chooser Dialog

Custom Actions

It is now possible to arrange custom actions in cascading submenus. Just enter the same submenu name for a custom action in order to place it into the same menu. If you require multiple menu levels, you can achieve that by using '/' in the path of the 'Submenu' entry.

Thunar - Custom Action Submenu Thunar - Custom Action Configuration Dialog

Preferences

The thumbnail settings in the preferences dialog got grouped together, and meanwhile it is possible to limit the file size for which thumbnails should be generated. That should mitigate possible performance issues by preventing thumbnail generation for huge video files.

Thunar - Thumbnail Preferences

File transfer operations optionally can use *.partial~ as an intermediate file now. After a transfer operation, there is now the option to verify the file checksums in order to make sure that no single bit got corrupted. Note that the checksum feature will require some extra time during copy when activated.

Thunar - File Transfer Preferences

For more information on the new file transfer options, check the related blog post.

A checkbox was added in order to allow running shell scripts. In Thunar 4.16 it only was possible to change that behavior by changing a hidden setting. Use that option with caution!

Thunar - Script Execution Preferences

There is now the possibility to restore tabs on startup, and to show the full directory path in the tab title.

Thunar - Tab and Window Preferences

xfce4-appfinder

Configuration

Appfinder got support for the 'PrefersNonDefaultGPU' property, which is useful for systems with hybrid graphic cards.

Environment variables are now parsed when passed in collapsed mode.

Appearance

An option to hide the window decorations was added.

xfce4-appfinder without window decorations

xfwm4

Workspaces

Workspace setting will now work as well with other window managers.

Compositor

The compositor now supports adaptive vsync with GLX.

General

Scaling

Improved support for UI scaling and fix for many blurry icons in the core components when scaling is used. This will be particularly useful for Hi DPI screens.

Window Header Bars

All header bars of Xfce Windows/Dialogs by default will be drawn by the window manager now (Xfwm4). Some dialogs optionally support 'GtkHeaderBar' (CSD) which can be enabled via a xfconf setting.

xfce-appearance-settings - Preference to enable GtkHeaderBar

For the sake of readability, this list only shows main highlights. Check the full Xfce 4.18 changelog for a detailed list of changes.

This summary can as well be viewed as a localized online tour.

This release can be downloaded here, either as a set of individual packages or as a single tarball including all these individual versions.

 

Best regards,

The Xfce development team

Xfce 4.18 Pre2 Released

  • December 1, 2022
  • Alexander Schwinn

Dec 01,2022

Xfce 4.18 Pre2 Released

Dear Xfce community, I am happy to announce the release of Xfce4.18 pre2.

This platform pre-release consists of the Xfce core components and will be followed by the final Xfce4.18 release soon. We fixed some quirks which were found in Xfce4.18 pre1, did some further polishing and the result is now released as Xfce4.18 pre2.

Early adopters are invited to give it a try and to check for compatibility before the final release, which is planned for 15. December.

Xfce4.18 pre2 includes all Xfce core components. The tarballs for building it can be found here:

Though, you might prefer to wait for distribution specific development packages.

Wallpaper contest

It is a pleasure for me to present you the outcome of our Xfce4.18 wallpaper contest, which received numerous nice wallpaper submissions.

The winner wallpaper, which will be the new Xfce4.18 default wallpaper, was brought to you by Katerina Shkel:

xfce-4.18-final.svg

The second and third place both go to Denis Kuzminok. As well these wallpapers will be shipped within Xfce:

xfce-4.18-final.svg xfce-4.18-final.svg

You as well might be interested in the complete list of submissions !

Coming soon

A detailed sum up of all new features in Xfce4.18 is planned for the final release, so stay tuned!

 

Best regards,

The Xfce development team

Wallpaper Contest for Xfce 4.18 – End of submissions

  • November 20, 2022
  • Alexander Schwinn

Nov 20,2022

Wallpaper Contest for Xfce 4.18 - End of submissions

The submission deadline for the Xfce 4.18 wallpaper contest just ended, and I am happy to see that many submissions!

Starting by now, one week of voting will show which wallpapers are the most popular ones.

In order to cast your vote, login at gitlab.xfce.org and add a ❤️ or 👍 reaction to all wallpapers you want to upvote.

Please keep in mind that you should vote for the best wallpaper, not for the best picture. E.g. it makes sense to leave some free space where desktop items can be placed.

Voting will be closed on 27. November. Like that, the new wallpaper can be utilized for the Xfce4.18 pre2 announce, which is planned for beginning of December.

Happy voting !

GSoC’22 – [Part 3] Tree-View in Thunar

  • October 30, 2022
  • Amrit Borah

About the Feature

This feature aims to enable the user, when in list-view, to expand non-empty folders (as shown in the image above).

Additions & Behaviors,

  • An entry has been added to the preferences dialog under Display > View Settings to define the default behavior when a new tab/window with list-view is opened.
  • When a new tab/window is opened with the list-view as the active view, it will respect the above mentioned setting for the tree-view option and default to that.
  • This feature can be toggled on and off using the Enable Tree View entry under the View menu but this only affects the currently active tab/window.

 MR: https://gitlab.xfce.org/xfce/thunar/-/merge_requests/297 

Note: This feature hasn't yet been merged.

I am working with  Sergios Anestis Kefalidis (@SKefalidis), Yongha Hwang (@MShrimp4) and Alexander Schwinn (@alexxcons) to have this feature out swiftly 😁.

 


GSoC’22 – [Part 2] User Profiles in Xfce-Terminal

  • October 23, 2022
  • Amrit Borah

User-Profiles in Xfce-Terminal

Note: This feature has not yet been merged. The UI/UX have been finalized but there are some internal implementations that are being reviewed.


MRhttps://gitlab.xfce.org/apps/xfce4-terminal/-/merge_requests/57

The Task

The aim of this feature is to enable users to create multiple different profiles. A profile is just a combination of preferences.

This allows the user to quickly switch between predefined profiles when the need arises.
As a use case scenario, let us consider the following example. One might want to have one particular tab transparent. So one can just create a new profile and change the transparency value on that profile. Then proceed to switch the profile by selecting the desired profile form the newly added "Profiles" menu.

Some considerations on the behavior of this feature,
  • There has to exist at-least one profile.
  • Terminal creates a "default" profile if no profiles are found on the system. Old configuration will be migrated to this profile.
  • One of the profiles is set to be "Default", i.e each new tab or window is opened using this profile. So if one wishes to change profile on a particular tab/window then one can just do so by selecting the desired profile from the Profiles menu.

On the implementation

  • Xfce4-terminal will now be using Xfconf as backend for storing and organizing settings.
  • The TerminalPreferencesDialog, which was previously written using glade, has now been re-written in C as an attempt to make it easier to work on it.
  • A new setting has been added that allows users to specify the orientation of the tabs of the preferences dialog. In the picture above I have set it to the "Left".

 

Work Left

  • I am closely working with my Mentor Sergios to fix a synchronization bug: mismatch in background images when multiple windows are open.

GSoC 22 – The Closing Blog Post

  • October 21, 2022
  • Pratyaksh Gautam

In the summer of 2022, I participated in Google’s Summer of Code, contributing to the Thunar file manager at XFCE, with the help of my mentor Alexander Schwinn. It’s been about a month since my GSoC term was officially over, and after a hectic couple weeks, I’ve finally decided to sit down and write down the closing blog post.

New features in Thunar

I’ll start off by introducing the features that I worked on, and a rough idea of how the implementation for the same works. Of these, undo-redo and file counts for folders are already merged on master and have been released with Xfce 4.18. The tour probably does a much better job than I will here, so be sure to go through it as well!

Undo-redo

This is the big one. While adding support for undo and redo, one of the most crucial things for me was doing it in an elegant way that would make it easy to have multi-level undo and redo.

How we decided to do this was to maintain a global linked list, containing information about the last performed operation, including what type of an operation it was, what files were involved in it, etc. This allowed it to be as trivial as moving a few pointers around to keep track of the state of the system once an undo or a redo is performed. The actual undo/redo operation is simply executing either the inverse of the last performed operation, or executing the exact same operation that was last undone.

I’m of course glossing over a lot of the details that made this a fair bit harder than we had initially anticipated. Nonetheless, with some help from Alex, we were able to ship this in time for the 4.18 release! :raised_hands:

File counts for folders

Adding file counts for features was just a little addition to help better utilize the ‘size’ column for folders, which was essentially wasted space earlier.

It was essential to be asynchronous with its implementation, which turned out to be a bit trickier than I had initially expected. It mostly boiled down to a line of conversions between file abstractions that I had taken for granted would have a low overhead (spoiler alert: they did not have a low overhead).

I was less than confident when first approaching Gallery view, since I thought I’d have to create an entire view from scratch. Luckily, that really wasn’t necessary. I was able to make a new view based off the same abstract view class that the existing icon view used. This is probably better for multiple reasons, since building on existing things makes for much simpler design for the new additions, and easier code review as well.

While I initially had envisioned a masonry image gallery, like the kind you would see on sites such as Pinterest, the abstract icon view lent itself much better to a square icon based gallery, similar to what most Android phone galleries have by default these days.

The gallery view PR is not yet merged into master, needing a few minor fixes on the dialog tooltips (which I’ve sadly been a bit too busy to work on yet), before it’s completely ready.

Not all smooth sailing

While I had initially hoped to complete what I had mapped out in my GSoC proposal in my summer vacations itself, that didn’t work out as intended. Once my semester at college started, I started struggling a bit to balance my academics and my GSoC commitments, but I was steadily making progress.

GSoC being flexible with its contributor timelines this year was an absolute life-saver, since I had to extend my deadline multiple times in order to hit the milestones on my proposal.

The lowest point was when in the midst of all this, some personal family issues cropped up and I essentially went incommunicado for almost a week. This would’ve been enough to fail my proposal in some organizations, but Alex still gave me a chance to make up on lost time when I was back, and for that I’m incredibly grateful. I was able to capitalize on this opportunity and get plenty of work done, though it was really quite hard (and probably not very good for my health long term :sweat_smile:).

Advice for others

I recently received an email from someone who was looking to contribute to XFCE in this year’s GSoC, and wanted some advice. I’ll relay part of what I wrote back over here:

I’d say the most important thing is to dive into it while still knowing that you don’t know anything :P

Try at a problem with your intuition for what might work. If you get stuck, push for another 15-20 mins and note down what you try. In this time you should be consulting documentation, StackOverflow, Github issues etc.
If you still aren’t able to figure it out, send a message on the XFCE IRC/Matrix channel, and be descriptive about what you tried, why you think it should work, and why you think it might not have worked. The mentors are incredibly helpful, and you’ll often get an answer that will deepen your understanding of the system and coding in general.

In addition, I’d also like to stress that communication is key!. Your mentors are there to help you, and they want nothing more than a successful and productive summer for the both of you. Raising issues that you’re facing as early as you can allows the both of you to think about and discuss how to tackle them.

Acknowledgements

I’m incredibly grateful to my mentor Alexander Schwinn, who is one of the most helpful people I’ve had the pleasure of working with. He’s been incredibly kind and polite, more than one could reasonably expect out of anyone given the circumstances.

I’m also very thankful for all the help I’ve received from the dedicated XFCE community, including Sergios Kefalidis, Yonghwa Hong, Gaël Bonithon, and many others.

Finally, I’d like to thank Google Summer of Code for the wonderful opportunity, which has definitely been a fantastic hands-on learning experience for me.

Wallpaper Contest for Xfce 4.18 – End of submissions

  • October 20, 2022
  • Alexander Schwinn

Nov 20,2022

Wallpaper Contest for Xfce 4.18 - End of submissions

The submission deadline for the Xfce 4.18 wallpaper contest just ended, and I am happy to see that many submissions!

Starting by now, one week of voting will show which wallpapers are the most popular ones.

In order to cast your vote, login at gitlab.xfce.org and add a ❤️ or 👍 reaction to all wallpapers you want to upvote.

Please keep in mind that you should vote for the best wallpaper, not for the best picture. E.g. it makes sense to leave some free space where desktop items can be placed.

Voting will be closed on 27. November. Like that, the new wallpaper can be utilized for the Xfce4.18 pre2 announce, which is planned for beginning of December.

Happy voting !

Thunar: Image Preview and Hidden Preferences

  • October 10, 2022
  • Sergios - Anestis Kefalidis

  Welcome back, it's been a while!

Where have I been?

I haven't had much time to actively contribute to Xfce in the past few months. Between mentoring Amrit for GSoC and completing my undegraduate thesis, I wasn't able to write patches at my normal pace. Things have started to pick back up, now that I've finished my undegraduate studies. I still won't be able to work on Xfce as much as I used to. In addition to starting my Master's degree, I have joined the AI Research Team of the University of Athens. Nonetheless, I will continue to maintain Xfce Terminal and contribute to Thunar and other core Xfce components. Now that this is out of the way, let's talk Thunar!

Image Preview

  Thunar just got an image preview, hooray! Well, actually, Thunar now has two images previews. The user can select to use a standalone image preview pane, which also shows some details about the files (work in progress), or use an image preview that is embedded in the left sidepane.

Embedded Image Preview

Embedded Image Preview.

Standalone Image Preview

Standalone Image Preview.

Eliminating Hidden Preferences

  In my previous blog post, I wrote about wanting to eliminate hidden preferences, which I consider bad design. I've been working on a solution for both Thunar and Xfce Terminal, that reuses code from the Xfce Settings Editor. Instead of hiding preferences, all preferences that are considered secondary/niche, or don't fit in the existing tabs of the Preferences Dialog, we moved them to a new tab.

Miscelaneous Preferences

Miscelaneous Preferences.


Previous post

GSoC’22: The Final Report

  • September 19, 2022
  • Yogesh Kaushik

My days as a GSoC mentee have ended, and I would like to share everything I have done during these days and what is left. I have posted a few blogs already, so if you have read them, you already know what I have done, and thus you can skip to the last section.

Thunar

(MR #267)

The Bulk Renamer, although very well functional, had a flaw. In case of a new name for a file matches the original name of a file that is yet to be renamed, then the Bulk Renamer used to fail. But now, I have modified it so that it can resolve any such kind of dependencies.

This new enhancement has been successfully added to the Thunar. More details about how this enhancement is added can be found in my blog (GSoC'22: Making Thunar Bulk Renamer More Advanced)

Screenshooter

(MR #37)

Screenshooter had some predefined options that users could choose from once the screenshot was taken. But now, the user can execute a custom action. This new feature has been successfully added to the Screenshooter and tested quite well. More details about this can be found in my blog (GSoC'22: Adding Custom Actions to Screenshooter)

Panel Plug-in

(MR #101) (MR #99)

Panel had an external plug-in Date Time and an internal plug-in Clock. These two plug-ins were somewhat overlapping, and now all the features of these plug-ins are merged into the Clock plug-in. The clock plug-in can now show the date and the time, and the font is also customizable. This merge is almost completed and is just left for the final reviews. Pretty soon, it will be present in Panel 4.17.4.

The Future

An extended goal was proposed to add command line support for the custom actions. Even though my coding period under GSoC is ending, I wish to complete that extended goal to make the custom actions feature more accessible for the users.