Xfce Forum

Sub domains
 

You are not logged in.

#1 2025-12-14 15:46:22

Fragrant1470
Member
From: Poland
Registered: 2025-03-01
Posts: 43
LinuxFirefox 140.0

How to force xfce4 to use update-alternatives instead of exo-open?

Hello,

I know xfce4 makes cool layers of abstractions for various reasons, but I would like to stop using the "Preferred application" system which exo-open uses and always fallback to the update-alternatives standard (I think it comes from POSIX).

I think using both creates unnecessary conflicts and complicates things, so I would like to disable that xfce4 functionality or tell it to delegate its action to update-alternatives.

I hope my message is clear. Please let me know how I can do this.

System:
Host: debian Kernel: 6.12.38+deb13-amd64 arch: x86_64 bits: 64
Desktop: Xfce v: 4.20.1 Distro: Debian GNU/Linux 13 (trixie)

Offline

#2 2025-12-31 15:02:18

Fragrant1470
Member
From: Poland
Registered: 2025-03-01
Posts: 43
LinuxFirefox 140.0

Re: How to force xfce4 to use update-alternatives instead of exo-open?

I solved it. Here's a summary that can help you fix it too:


Desktop Environments (DEs) like Xfce often implement their own "Preferred Applications" logic (via `libexo`) to provide a consistent user experience within their ecosystem.

- **The Conflict:** Xfce applications (Thunar, Panel) consult Xfce's internal config (`helpers.rc`) *before* consulting the standard XDG or Debian layers.
- **The Solution (Delegation):**
    To maintain a "Single Source of Truth" and system portability, you must configure the DE to delegate responsibility to the lower layers.
    - **Terminals:** Set Xfce to use `debian-x-terminal-emulator`. This passes control to Layer 1 (`update-alternatives`).
    - **Browsers/Mail:** Ensure Xfce helpers are either unset or explicitly match the XDG setting.

**Critical commands**

- **Bypass GUI:** Directly edit the Xfce helper configuration to force delegation or specific matching.
    ```bash
    # Example: Check current helpers
    grep "TerminalEmulator" ~/.config/xfce4/helpers.rc
   
    # Example: Edit via sed to delegate to Debian system
    sed -i 's/TerminalEmulator=.*/TerminalEmulator=debian-x-terminal-emulator/' ~/.config/xfce4/helpers.rc
    ```

Offline

Registered users online in this topic: 0, guests: 1
[Bot] ClaudeBot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.010 seconds, 7 queries executed - Memory usage: 517.15 KiB (Peak: 517.77 KiB) ]