System-wide application of specific cursor theme (Simple-and-Soft)

Hi there!

My preferred cursor theme is applied almost everywhere BUT so far not with system-wide scope. My preferred theme is one of the standard themes. It is: Simple-and-Soft.

In some contexts I still get cursors of another theme:
Right after I have logged into my system there is a loading-cursor of a different theme. This loading-cursor is also applied when I open specific documents (e.g. odt-files) by clicking on them in Thunar. (The correct loading-cursor is used e.g. by pamac or LibreOffice.)
Also of another theme are the cursors that appear when one hovers over the edges of windows on the screen. (When I hover over the corners of windows everything is fine.)

What needs to be done such that my preferred cursor theme is applied with system-wide scope?

What I did so far:
(1) xfce4-mouse-settings/Theme: I chose: Default
(2) /usr/share/icons/default/index.theme: In this file I wrote 2 lines containing the following content:

[Icon Theme]
Inherits=Simple-and-Soft

(3) /etc/lightdm/lightdm-gtk-greeter.conf: In this file I changed one line to: cursor-theme-name = Simple-and-Soft

Output of the inxi command:

System:
  Kernel: 6.1.22-1-MANJARO arch: x86_64 bits: 64 compiler: gcc v: 12.2.1
    parameters: BOOT_IMAGE=/boot/vmlinuz-6.1-x86_64
    root=UUID=c2ef179e-3eed-4200-ba12-98251d0c2d41 rw
    drm.edid_firmware=eDP-1:edid/edid.bin quiet apparmor=1 security=apparmor
    udev.log_priority=3
  Desktop: Xfce v: 4.18.1 tk: Gtk v: 3.24.36 info: xfce4-panel wm: xfwm
    v: 4.18.0 vt: 7 dm: LightDM v: 1.32.0 Distro: Manjaro Linux base: Arch Linux
Machine:
  Type: Laptop System: SLIMBOOK product: Executive v: Standard
    serial: <superuser required>
  Mobo: SLIMBOOK model: Executive v: Standard serial: <superuser required>
    UEFI: American Megatrends LLC. v: N.1.05GRU05 date: 10/20/2022
Battery:
  ID-1: BAT0 charge: 82.1 Wh (100.0%) condition: 82.1/82.1 Wh (100.0%)
    volts: 17.7 min: 15.5 model: standard type: Li-ion serial: <filter>
    status: full
Memory:
  RAM: total: 15.37 GiB used: 2.54 GiB (16.5%)
  RAM Report: permissions: Unable to run dmidecode. Root privileges required.
CPU:
  Info: model: 12th Gen Intel Core i7-12700H bits: 64 type: MST AMCP
    arch: Alder Lake gen: core 12 level: v3 note: check built: 2021+
    process: Intel 7 (10nm ESF) family: 6 model-id: 0x9A (154) stepping: 3
    microcode: 0x429
  Topology: cpus: 1x cores: 14 mt: 6 tpc: 2 st: 8 threads: 20 smt: enabled
    cache: L1: 1.2 MiB desc: d-8x32 KiB, 6x48 KiB; i-6x32 KiB, 8x64 KiB
    L2: 11.5 MiB desc: 6x1.2 MiB, 2x2 MiB L3: 24 MiB desc: 1x24 MiB
  Speed (MHz): avg: 2596 high: 2700 min/max: 400/4600:4700:3500 scaling:
    driver: intel_pstate governor: powersave cores: 1: 2700 2: 2700 3: 2700
    4: 2700 5: 627 6: 2700 7: 2700 8: 2700 9: 2700 10: 2700 11: 2700 12: 2700
    13: 2700 14: 2700 15: 2700 16: 2700 17: 2700 18: 2700 19: 2700 20: 2700
    bogomips: 107560
  Flags: 3dnowprefetch abm acpi adx aes aperfmperf apic arat
    arch_capabilities arch_lbr arch_perfmon art avx avx2 avx_vnni bmi1 bmi2
    bts cat_l2 cdp_l2 clflush clflushopt clwb cmov constant_tsc cpuid
    cpuid_fault cx16 cx8 de ds_cpl dtes64 dtherm dts epb ept ept_ad erms est
    f16c flexpriority flush_l1d fma fpu fsgsbase fsrm fxsr gfni hfi ht hwp
    hwp_act_window hwp_epp hwp_notify hwp_pkg_req ibpb ibrs ibrs_enhanced ibt
    ida intel_pt invpcid invpcid_single lahf_lm lm mca mce md_clear mmx
    monitor movbe movdir64b movdiri msr mtrr nonstop_tsc nopl nx ospke pae pat
    pbe pcid pclmulqdq pdcm pdpe1gb pebs pge pku pln pni popcnt pse pse36 pts
    rdpid rdrand rdseed rdt_a rdtscp rep_good sdbg sep serialize sha_ni smap
    smep smx split_lock_detect ss ssbd sse sse2 sse4_1 sse4_2 ssse3 stibp
    syscall tm tm2 tpr_shadow tsc tsc_adjust tsc_deadline_timer tsc_known_freq
    umip vaes vme vmx vnmi vpclmulqdq vpid waitpkg x2apic xgetbv1 xsave xsavec
    xsaveopt xsaves xtopology xtpr
  Vulnerabilities:
  Type: itlb_multihit status: Not affected
  Type: l1tf status: Not affected
  Type: mds status: Not affected
  Type: meltdown status: Not affected
  Type: mmio_stale_data status: Not affected
  Type: retbleed status: Not affected
  Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via
    prctl
  Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer
    sanitization
  Type: spectre_v2 mitigation: Enhanced IBRS, IBPB: conditional, RSB
    filling, PBRSB-eIBRS: SW sequence
  Type: srbds status: Not affected
  Type: tsx_async_abort status: Not affected
Graphics:
  Device-1: Intel Alder Lake-P Integrated Graphics vendor: Tongfang Hongkong
    driver: i915 v: kernel arch: Gen-12.2 process: Intel 10nm built: 2021-22+
    ports: active: eDP-1 empty: DP-1, DP-2, DP-3, DP-4, HDMI-A-1
    bus-ID: 00:02.0 chip-ID: 8086:46a6 class-ID: 0300
  Device-2: NVIDIA GA107M [GeForce RTX 3050 Ti Mobile]
    vendor: Tongfang Hongkong driver: N/A alternate: nouveau non-free: 530.xx+
    status: current (as of 2023-03) arch: Ampere code: GAxxx
    process: TSMC n7 (7nm) built: 2020-22 pcie: gen: 4 speed: 16 GT/s lanes: 4
    link-max: lanes: 16 bus-ID: 01:00.0 chip-ID: 10de:25a0 class-ID: 0302
  Device-3: Chicony FHD Webcam type: USB driver: uvcvideo bus-ID: 3-6:3
    chip-ID: 04f2:b75c class-ID: 0e02 serial: <filter>
  Display: x11 server: X.Org v: 21.1.8 compositor: xfwm v: 4.18.0 driver: X:
    loaded: modesetting alternate: fbdev,vesa dri: iris gpu: i915
    display-ID: :0.0 screens: 1
  Screen-1: 0 s-res: 2560x1600 s-dpi: 96 s-size: 677x423mm (26.65x16.65")
    s-diag: 798mm (31.43")
  Monitor-1: eDP-1 model: BOE Display 0x0aca built: 2021 res: 2560x1600
    hz: 90 dpi: 85 gamma: 1.2 size: 768x480mm (30.24x18.9") diag: 400mm (15.7")
    ratio: 16:10, 15:9 modes: 2560x1600
  API: OpenGL Message: Unable to show GL data. Required tool glxinfo missing.
Audio:
  Device-1: Intel Alder Lake PCH-P High Definition Audio
    vendor: Tongfang Hongkong driver: snd_hda_intel v: kernel
    alternate: snd_sof_pci_intel_tgl bus-ID: 00:1f.3 chip-ID: 8086:51c8
    class-ID: 0403
  API: ALSA v: k6.1.22-1-MANJARO status: kernel-api with: aoss
    type: oss-emulator tools: alsamixer,amixer
  Server-1: JACK v: 1.9.22 status: off tools: N/A
  Server-2: PipeWire v: 0.3.67 status: off tools: pw-cli
  Server-3: PulseAudio v: 16.1 status: active tools: pacat,pactl,pavucontrol
Network:
  Device-1: Intel Alder Lake-P PCH CNVi WiFi driver: iwlwifi v: kernel
    bus-ID: 00:14.3 chip-ID: 8086:51f0 class-ID: 0280
  IF: wlo1 state: up mac: <filter>
  IP v4: <filter> type: dynamic noprefixroute scope: global
    broadcast: <filter>
  IP v6: <filter> type: dynamic noprefixroute scope: global
  IP v6: <filter> type: noprefixroute scope: link
  WAN IP: <filter>
Bluetooth:
  Device-1: Intel AX201 Bluetooth type: USB driver: btusb v: 0.8 bus-ID: 3-10:4
    chip-ID: 8087:0026 class-ID: e001
  Report: rfkill ID: hci0 rfk-id: 0 state: up address: see --recommends
Logical:
  Message: No logical block device data found.
RAID:
  Message: No RAID data found.
Drives:
  Local Storage: total: 3.66 TiB used: 2.28 TiB (62.4%)
  SMART Message: Required tool smartctl not installed. Check --recommends
  ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: TeamGroup model: TM8FP6001T
    size: 953.87 GiB block-size: physical: 512 B logical: 512 B speed: 31.6 Gb/s
    lanes: 4 type: SSD serial: <filter> rev: U0708A3 temp: 33.9 C scheme: GPT
  ID-2: /dev/sda maj-min: 8:0 type: USB vendor: Hitachi
    model: HDS5C3030BLE630 size: 2.73 TiB block-size: physical: 4096 B
    logical: 4096 B type: HDD rpm: 5940 serial: <filter> scheme: MBR
  Message: No optical or floppy data found.
Partition:
  ID-1: / raw-size: 953.57 GiB size: 937.53 GiB (98.32%) used: 72.06 GiB (7.7%)
    fs: ext4 dev: /dev/nvme0n1p2 maj-min: 259:2 label: N/A
    uuid: c2ef179e-3eed-4200-ba12-98251d0c2d41
  ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
    used: 312 KiB (0.1%) fs: vfat dev: /dev/nvme0n1p1 maj-min: 259:1
    label: NO_LABEL uuid: F1BA-3B3B
  ID-3: /run/media/susurration/TOSHIBA EXT raw-size: 2.73 TiB
    size: 2.73 TiB (100.00%) used: 2.21 TiB (81.1%) fs: ntfs dev: /dev/sda1
    maj-min: 8:1 label: TOSHIBA EXT uuid: BA70934070930275
Swap:
  Alert: No swap data was found.
Unmounted:
  Message: No unmounted partitions found.
USB:
  Hub-1: 1-0:1 info: Hi-speed hub with single TT ports: 1 rev: 2.0
    speed: 480 Mb/s chip-ID: 1d6b:0002 class-ID: 0900
  Hub-2: 2-0:1 info: Super-speed hub ports: 1 rev: 3.1 speed: 20 Gb/s
    chip-ID: 1d6b:0003 class-ID: 0900
  Hub-3: 3-0:1 info: Hi-speed hub with single TT ports: 12 rev: 2.0
    speed: 480 Mb/s chip-ID: 1d6b:0002 class-ID: 0900
  Hub-4: 3-3:2 info: Genesys Logic Hub ports: 2 rev: 2.1 speed: 480 Mb/s
    chip-ID: 05e3:0610 class-ID: 0900
  Device-1: 3-6:3 info: Chicony FHD Webcam type: Video driver: uvcvideo
    interfaces: 4 rev: 2.0 speed: 480 Mb/s power: 500mA chip-ID: 04f2:b75c
    class-ID: 0e02 serial: <filter>
  Device-2: 3-10:4 info: Intel AX201 Bluetooth type: Bluetooth driver: btusb
    interfaces: 2 rev: 2.0 speed: 12 Mb/s power: 100mA chip-ID: 8087:0026
    class-ID: e001
  Hub-5: 4-0:1 info: Super-speed hub ports: 4 rev: 3.1 speed: 10 Gb/s
    chip-ID: 1d6b:0003 class-ID: 0900
  Device-1: 4-2:2 info: Toshiba America External Disk 3TB type: Mass Storage
    driver: usb-storage interfaces: 1 rev: 3.0 speed: 5 Gb/s power: 144mA
    chip-ID: 0480:d010 class-ID: 0806 serial: <filter>
  Hub-6: 4-4:3 info: Genesys Logic GL3523 Hub ports: 2 rev: 3.2 speed: 5 Gb/s
    chip-ID: 05e3:0620 class-ID: 0900
  Device-1: 4-4.1:4 info: Realtek Card Reader type: Mass Storage
    driver: usb-storage interfaces: 1 rev: 3.0 speed: 5 Gb/s power: 800mA
    chip-ID: 0bda:0316 class-ID: 0806 serial: <filter>
Sensors:
  System Temperatures: cpu: 53.0 C mobo: N/A
  Fan Speeds (RPM): N/A
Info:
  Processes: 354 Uptime: 58m wakeups: 3945 Init: systemd v: 252
  default: graphical tool: systemctl Compilers: gcc: 12.2.1 clang: 15.0.7
  Packages: pm: pacman pkgs: 1284 libs: 379 tools: pamac pm: flatpak pkgs: 0
  Shell: Bash v: 5.1.16 running-in: xfce4-terminal inxi: 3.3.26

Content of /usr/share/icons/Simple-and-Soft/index.theme:

[Icon Theme]
Name=Simple-and-Soft
Comment=A simple and soft X cursor theme
Example=left_ptr_watch

Content of /usr/share/icons/Simple-and-Soft/cursors/:

00008160000006810000408080010102
028006030e0e7ebffc7f7070c0600140
03b6e0fcb3499374a867c041f52298f0
14fef782d02440884392942c11205230
2870a09082c103050810ffdffffe0204
3ecb610c1bf2410f44200f48c40d3599
4498f0e0c1937ffe01fd06f973665830
6407b0e94181790501fd1e167b474872
640fb0e74195791501fd1ed57b41487f
arrow_up
based_arrow_up
c7088f0f3e6c8088236ef8e1e3e70000
copy
crossed_circle
d9ce0ab605698f320427677b458ad60b
e29285e634086352946a0e7090d73106
fcf1c3c7cd4491d801f1e1c78f100000
fleur
hand
hand1
hand2
left_ptr
left_ptr_watch
link
move
pirate
question_arrow
sb_h_double_arrow
top_left_corner
top_right_corner
watch
xterm

Thanks for your help!

Cheers
Rana

Hi @Rana ,

I wonder whether you installed the theme. Did you choose the /usr/share/theme folder or the /usr/share/icons/ directory?

You can also always create a directory .themes in your home folder and choose the theme from SettingsApearenceTheme.

Hope it help, regards

You can try setting it manually with the following file and content:
~/.config/gtk-3.0/settings.ini

[Settings] gtk-cursor-theme-name=Simple-and-Soft

And Since its XFCE you can also try this command to set it:

xfconf-query --channel xsettings --property /Gtk/CursorThemeName --set Simple-and-Soft

We can also try and get it to load extra early (before the window manager) by adding the following line to ~/.Xresources

Xcursor.theme: Simple-Soft

And lastly you can also try setting the environment variable XCURSOR_THEME like

XCURSOR_THEME=Simple-and-Soft

I dont necesarilly suggest using all of the above. Try and use as few as possible to get your desired result. Your future self would thank you to avoid a later “I’ve unset it in 3 places. Why cant I change my cursor theme?!”

1 Like

Thanks for your suggestions, @j8a and @cscs!

@j8a:
The cursor theme was installed in the course of my Manjaro installation. If I understood it correctly the files of this cursor theme are located only in /usr/share/icons/ and no file of this cursor theme should be located in another directory. I also reinstalled the cursor theme from the AUR but that did not change anything.

@cscs:
Unfortunately none of these configurations did the trick.

I do not have any idea how to proceed to solve the problem. What information could I provide such that somebody could figure out what to do?

I could finally solve the problem!

So what I did to apply my preferred cursor theme (Simple-and-Soft) with system-wide scope was:

(1) xfce4-mouse-settings/Theme: I chose: Default
(2) /usr/share/icons/default/index.theme: In this file I wrote 2 lines containing the following content:

[Icon Theme]
Inherits=Simple-and-Soft

(3) /etc/lightdm/lightdm-gtk-greeter.conf: In this file I changed one line to: cursor-theme-name = Simple-and-Soft
(4) /usr/share/icons/Simple-and-Soft/cursors/: First, I made a backup of that directory. Second, I looked up which cursors are used by a more comprehensive cursor theme (e.g. Breeze) than the one I prefer to use (Simple-and-Soft). Third, for each cursor that is provided by the more comprehensive cursor theme (Breeze) but not my preferred cursor theme (Simple-and-Soft) I created a link (in /usr/share/icons/Simple-and-Soft/cursors/) that points to an appropriate cursor of my preferred theme. For example: Breeze provides a cursor with the name “wait” but Simple-and-Soft does not. But Simple-and-Soft provides a cursor with the name “watch” that I find appropriate also as a wait cursor. So I created a link using the following command:

# command structure: ln -s [TARGET] [LINK_NAME]
ln -s watch wait

(5) System restart.

See also: Cursor themes - ArchWiki

I used a bash file with the following content to create the links (you might want to create different links):

#!/bin/bash
ln -s left_ptr_watch 08e8e1c95fe2fc01f976f1e063a24ccd
ln -s hand 9d800788f1b08800ae810202380a0822
ln -s question_arrow 1081e37283d90000800003c07f3ef6bf
ln -s question_arrow 3085a0e285430894940527032f8b26df
ln -s left_ptr_watch 00000000000000020006000e7e9ffc3f
ln -s hand 9081237383d90e509aa00f00170e968f
ln -s question_arrow a2a266d0498c3104214a47bd64ab0fc8
ln -s question_arrow alias
ln -s fleur all-scroll
ln -s left_ptr arrow
ln -s top_right_corner bottom_left_corner
ln -s top_left_corner bottom_right_corner
ln -s arrow_up bottom_side
ln -s fleur cell
ln -s left_ptr center_ptr
ln -s crossed_circle circle
ln -s hand closedhand
ln -s hand color-picker
ln -s sb_h_double_arrow col-resize
ln -s question_arrow context-menu
ln -s fleur cross
ln -s fleur crosshair
ln -s left_ptr default
ln -s question_arrow dnd_copy
ln -s hand dnd_move
ln -s crossed_circle dnd-no-drop
ln -s hand dnd-none
ln -s arrow_up down-arrow
ln -s question_arrow draft
ln -s sb_h_double_arrow e-resize
ln -s sb_h_double_arrow ew-resize
ln -s hand fcf21c00b30f7e3f83fe0dfd12e71cff
ln -s crossed_circle forbidden
ln -s hand grab
ln -s hand grabbing
ln -s left_ptr_watch half-busy
ln -s sb_h_double_arrow h_double_arrow
ln -s question_arrow help
ln -s xterm ibeam
ln -s sb_h_double_arrow left-arrow
ln -s question_arrow left_ptr_help
ln -s sb_h_double_arrow left_side
ln -s top_right_corner ne-resize
ln -s top_right_corner nesw-resize
ln -s crossed_circle no-drop
ln -s crossed_circle not-allowed
ln -s arrow_up n-resize
ln -s arrow_up ns-resize
ln -s top_left_corner nw-resize
ln -s top_left_corner nwse-resize
ln -s hand openhand
ln -s hand pencil
ln -s fleur plus
ln -s hand pointer
ln -s hand pointing_hand
ln -s left_ptr_watch progress
ln -s sb_h_double_arrow right-arrow
ln -s left_ptr right_ptr
ln -s sb_h_double_arrow right_side
ln -s arrow_up row-resize
ln -s arrow_up sb_v_double_arrow
ln -s top_left_corner se-resize
ln -s fleur size_all
ln -s left_ptr size-bdiag
ln -s top_right_corner size_bdiag
ln -s left_ptr size-fdiag
ln -s top_left_corner size_fdiag
ln -s left_ptr size-hor
ln -s sb_h_double_arrow size_hor
ln -s left_ptr size-ver
ln -s arrow_up size_ver
ln -s sb_h_double_arrow split_h
ln -s arrow_up split_v
ln -s arrow_up s-resize
ln -s top_right_corner sw-resize
ln -s fleur tcross
ln -s xterm text
ln -s left_ptr top_left_arrow
ln -s arrow_up top_side
ln -s arrow_up up-arrow
ln -s arrow_up v_double_arrow
ln -s xterm vertical-text
ln -s watch wait
ln -s question_arrow whats_this
ln -s sb_h_double_arrow w-resize
ln -s move zoom-in
ln -s move zoom-out

Now /usr/share/icons/Simple-and-Soft/cursors/ contains much more:

00000000000000020006000e7e9ffc3f
00008160000006810000408080010102
028006030e0e7ebffc7f7070c0600140
03b6e0fcb3499374a867c041f52298f0
08e8e1c95fe2fc01f976f1e063a24ccd
1081e37283d90000800003c07f3ef6bf
14fef782d02440884392942c11205230
2870a09082c103050810ffdffffe0204
3085a0e285430894940527032f8b26df
3ecb610c1bf2410f44200f48c40d3599
4498f0e0c1937ffe01fd06f973665830
5c6cd98b3f3ebcb1f9c7f1c204630408
6407b0e94181790501fd1e167b474872
640fb0e74195791501fd1ed57b41487f
9081237383d90e509aa00f00170e968f
9d800788f1b08800ae810202380a0822
a2a266d0498c3104214a47bd64ab0fc8
alias
all-scroll
arrow
arrow_up
b66166c04f8c3109214a4fbd64a50fc8
based_arrow_up
bottom_left_corner
bottom_right_corner
bottom_side
c7088f0f3e6c8088236ef8e1e3e70000
cell
center_ptr
circle
closedhand
color-picker
col-resize
context-menu
copy
cross
crossed_circle
crosshair
d9ce0ab605698f320427677b458ad60b
default
dnd-copy
dnd_move
dnd-no-drop
dnd-none
down-arrow
draft
e29285e634086352946a0e7090d73106
e-resize
ew-resize
fcf1c3c7cd4491d801f1e1c78f100000
fcf21c00b30f7e3f83fe0dfd12e71cff
fleur
forbidden
grab
grabbing
half-busy
hand
hand1
hand2
h_double_arrow
help
ibeam
left-arrow
left_ptr
left_ptr_help
left_ptr_watch
left_side
link
move
ne-resize
nesw-resize
no-drop
not-allowed
n-resize
ns-resize
nw-resize
nwse-resize
openhand
pencil
pirate
plus
pointer
pointing_hand
progress
question_arrow
right-arrow
right_ptr
right_side
row-resize
sb_h_double_arrow
sb_v_double_arrow
se-resize
size_all
size-bdiag
size_bdiag
size-fdiag
size_fdiag
size-hor
size_hor
size-ver
size_ver
split_h
split_v
s-resize
sw-resize
tcross
text
top_left_arrow
top_left_corner
top_right_corner
top_side
up-arrow
v_double_arrow
vertical-text
wait
watch
whats_this
w-resize
xterm
zoom-in
zoom-out
1 Like

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.