PQ
PQ.Hosting

Currency

How to Install Cursor Themes in Linux: GNOME, KDE, and Xfce

Author
PQ
March 02, 2026
5 min read
7 views

A cursor theme in Linux is a set of files in the Xcursor format that replaces the default arrows, loading indicators, and link pointers. Installation takes a few minutes, but there are nuances: different desktop environments apply themes differently, and a theme that works in GNOME may not be picked up in GTK applications under KDE.

Where to Get Cursor Themes

From the repository — the simplest option. Cursor packages in Debian/Ubuntu have the prefix xcursor- or suffix -cursor-theme:

apt search xcursor
apt search cursor-theme

Popular packages: xcursor-themes (base set), dmz-cursor-theme (minimalist white/black), comixcursors.

From gnome-look.org — the largest resource for Linux themes. The "Cursors" section has hundreds of themes in .tar.gz format. Popular ones: Bibata, Phinger, Capitaine, Breeze, Vimix.

Installing from the Repository

sudo apt install xcursor-themes

After installation the theme appears in /usr/share/icons/ and is immediately available in environment settings.

Manual Installation

Download the theme archive from gnome-look.org or another source and extract it to the appropriate directory.

For the Current User Only

tar xvf cursor-theme.tar.gz -C ~/.local/share/icons/

Or to the legacy directory (also works):

tar xvf cursor-theme.tar.gz -C ~/.icons/

If the folder does not exist — create it:

mkdir -p ~/.local/share/icons/

For All System Users

sudo tar xvf cursor-theme.tar.gz -C /usr/share/icons/

Verify the Structure After Extraction

The theme must be laid out like this:

~/.local/share/icons/ThemeName/cursors/

If extraction produced a nested folder ThemeName/ThemeName/cursors/ — move the contents up one level:

mv ~/.local/share/icons/ThemeName/ThemeName ~/.local/share/icons/ThemeNameFixed

Confirm that the cursors directory with files is present:

ls ~/.local/share/icons/ThemeName/cursors/ | head -5

Applying the Theme in GNOME

Method 1 — via GNOME Tweaks:

sudo apt install gnome-tweaks

Open Tweaks → AppearanceCursor → select the theme from the list.

Method 2 — via gsettings (terminal):

gsettings set org.gnome.desktop.interface cursor-theme "ThemeName"

Check the current theme:

gsettings get org.gnome.desktop.interface cursor-theme

Change cursor size:

gsettings set org.gnome.desktop.interface cursor-size 32

Standard sizes: 24, 32, 48, 64.

Wayland note: after changing the theme in GNOME under Wayland, logging out and back in may be required — the change does not always apply immediately.

Applying the Theme in KDE Plasma

Via the graphical interface:

System Settings → WorkspaceCursors → select theme → Apply.

If the theme was installed manually to ~/.local/share/icons/, it will appear in the list automatically.

Via terminal:

kwriteconfig5 --file kcminputrc --group Mouse --key cursorTheme "ThemeName"

Apply without restarting:

qdbus org.kde.KWin /KWin reconfigureAll

KDE + GTK applications problem: KDE applies the cursor theme to its own applications, but GTK apps (Firefox, GIMP) may use a different theme. Fix — set an environment variable:

Add to ~/.profile or ~/.bashrc:

export XCURSOR_THEME=ThemeName
export XCURSOR_SIZE=32

Applying the Theme in Xfce

Settings Manager → Mouse and TouchpadTheme tab → select cursor.

Or via terminal:

xfconf-query -c xsettings -p /Gtk/CursorThemeName -s "ThemeName"

Applying the Theme System-Wide (All Environments)

A universal method — create or edit /usr/share/icons/default/index.theme:

sudo mkdir -p /usr/share/icons/default
sudo nano /usr/share/icons/default/index.theme

File contents:

[Icon Theme]
Inherits=ThemeName

This tells Xcursor to use this theme by default for all applications and environments.

For a specific user — the same in the home directory:

mkdir -p ~/.icons/default
nano ~/.icons/default/index.theme
[Icon Theme]
Inherits=ThemeName

Applying via ~/.Xresources (X11)

For X11-based environments, the theme and size can be set via ~/.Xresources:

nano ~/.Xresources

Add these lines:

Xcursor.theme: ThemeName
Xcursor.size: 32

Apply without restarting:

xrdb -merge ~/.Xresources

Common Problems

Theme does not appear in GNOME Tweaks list Check the directory structure — a cursors/ directory must exist inside the theme folder. If it is missing — the theme was not installed correctly.

Cursor changes only in some applications GTK and Qt applications may use different settings sources. The most reliable approach to apply the theme everywhere is a combination of index.theme and XCURSOR_THEME environment variable.

Theme resets after reboot in KDE A classic bug. Fix — set the theme via update-alternatives:

sudo update-alternatives --config x-cursor-theme

Select the desired theme from the list.

Cursor is too small on HiDPI display Increase the size: in GNOME via gsettings set org.gnome.desktop.interface cursor-size 48, in ~/.Xresources via Xcursor.size: 48.

Quick Reference

Task Command / Action
Install from repository sudo apt install xcursor-themes
Install manually for user tar xvf theme.tar.gz -C ~/.local/share/icons/
Install for all users sudo tar xvf theme.tar.gz -C /usr/share/icons/
Apply in GNOME gsettings set org.gnome.desktop.interface cursor-theme "Name"
Apply in KDE System Settings → Cursors
Apply in Xfce xfconf-query -c xsettings -p /Gtk/CursorThemeName -s "Name"
Apply system-wide /usr/share/icons/default/index.theme with Inherits=Name
Set cursor size gsettings set org.gnome.desktop.interface cursor-size 32

Share this article