Switch LibreOffice Backends: GTK3, GTK4, Qt5, Qt6
LibreOffice utilizes the Visual Class Library (VCL) plugin system on
Linux to adapt its graphical interface to different desktop
environments. By changing the SAL_USE_VCLPLUGIN environment
variable, you can override the default UI rendering backend and switch
between GTK3, GTK4, Qt5, and Qt6 (including KF5/KF6 for KDE Plasma).
This guide provides the necessary steps to install the required backend
packages, run LibreOffice with a specific backend temporarily via the
terminal, set a permanent configuration, and verify the active rendering
engine.
1. Install the Backend Packages
Before switching backends, ensure the corresponding VCL plugins are installed on your distribution.
Ubuntu / Debian:
sudo apt install libreoffice-gtk3 libreoffice-gtk4 libreoffice-qt5 libreoffice-qt6 libreoffice-kf5Fedora:
sudo dnf install libreoffice-gtk3 libreoffice-gtk4 libreoffice-qt5 libreoffice-qt6 libreoffice-kf5Arch Linux:
sudo pacman -S libreoffice-fresh(Arch packages include multiple VCL backends by default or as optional dependencies).
2. Identify the VCL Plugin Names
Set the SAL_USE_VCLPLUGIN environment variable to any of
the following supported identifiers:
gtk3: Modern GNOME / GTK3 interface.gtk4: Experimental GTK4 interface (availability depends on LibreOffice version).qt5: Generic Qt5 interface.qt6: Generic Qt6 interface.kf5: KDE Frameworks 5 integration with native file dialogs.kf6: KDE Frameworks 6 integration for modern Plasma 6 desktops.gen: Generic X11 interface (fallback mode with no toolkit theming).
3. Test Backends via Terminal
To launch LibreOffice with a specific backend temporarily, prepend the environment variable to the command:
Launch with GTK3:
SAL_USE_VCLPLUGIN=gtk3 libreofficeLaunch with GTK4:
SAL_USE_VCLPLUGIN=gtk4 libreofficeLaunch with Qt5:
SAL_USE_VCLPLUGIN=qt5 libreofficeLaunch with Qt6:
SAL_USE_VCLPLUGIN=qt6 libreofficeLaunch with KDE Plasma (KF6):
SAL_USE_VCLPLUGIN=kf6 libreoffice
4. Set the Backend Permanently
Method A: User Profile (Applies to all sessions)
Export the variable in your shell profile configuration
(~/.profile, ~/.bashrc, or
~/.zshrc):
echo 'export SAL_USE_VCLPLUGIN=qt6' >> ~/.profileLog out and log back in to apply the changes.
Method B: Desktop Launcher (Applies only to app menu launches)
Copy the system desktop entry to your local application directory:
cp /usr/share/applications/libreoffice-writer.desktop ~/.local/share/applications/Open
~/.local/share/applications/libreoffice-writer.desktopin a text editor.Modify the
Execline to define the variable:Exec=env SAL_USE_VCLPLUGIN=gtk3 libreoffice --writer %U
5. Verify the Active Backend
To confirm that LibreOffice is using the desired UI backend:
- Open LibreOffice.
- Navigate to Help > About LibreOffice.
- Locate the User Interface entry in the information
box. It will display the active backend (e.g.,
UI render: default; VCL: gtk3orVCL: qt6).