I don't understand the themes (GTK/Qt etc.)

So i have a really big problem with themeing. I dont understand.
I have xfce installed, but im running i3 as wm and no de. So i have “apps” like:

  • qt5settings
  • kvantum manager
  • lx appearance
  • gtk theme config
  • lightDM greater …
  • qt assistant/designer/lingust

So what do all of these things do? What is the difference between Qt and GTK , how can i determine if im using one or the another and how/where should i install themes?

What is the theme that i sould use to get rid of this theme and color in firefox:

How should/could i chose the system vide theme for apps without config file themeing (like firefox etc.)

sorry if its messy and not understandable, i dont know how to say and im really anoyed of this decentralization.
Thanks for your time!

  Kernel: 5.15.74-3-MANJARO arch: x86_64 bits: 64 compiler: gcc v: 12.2.0
    Desktop: i3 v: 4.21 dm: LightDM Distro: Manjaro Linux base: Arch Linux
  Type: Laptop System: LENOVO product: 20L6S1LV2F v: ThinkPad T480
    serial: <superuser required> Chassis: type: 10 serial: <superuser required>
  Mobo: LENOVO model: 20L6S1LV2F v: SDK0J40697 WIN
    serial: <superuser required> UEFI: LENOVO v: N24ET69W (1.44 )
    date: 05/25/2022
  ID-1: BAT0 charge: 8.4 Wh (45.4%) condition: 18.5/23.9 Wh (77.2%)
    volts: 11.3 min: 11.4 model: LGC 01AV489 serial: <filter>
    status: discharging
  ID-2: BAT1 charge: 16.0 Wh (89.4%) condition: 17.9/24.0 Wh (74.5%)
    volts: 12.4 min: 11.5 model: SMP 01AV452 serial: <filter>
    status: not charging
  Info: quad core model: Intel Core i5-8350U bits: 64 type: MT MCP
    arch: Coffee Lake rev: A cache: L1: 256 KiB L2: 1024 KiB L3: 6 MiB
  Speed (MHz): avg: 799 high: 800 min/max: 400/1901 boost: disabled cores:
    1: 800 2: 800 3: 800 4: 800 5: 800 6: 800 7: 800 8: 792 bogomips: 30409
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
  Device-1: Intel UHD Graphics 620 vendor: Lenovo driver: i915 v: kernel
    arch: Gen-9.5 ports: active: eDP-1 empty: DP-1, DP-2, HDMI-A-1, HDMI-A-2
    bus-ID: 00:02.0 chip-ID: 8086:5917
  Device-2: Chicony Integrated Camera (1280x720@30) type: USB
    driver: uvcvideo bus-ID: 1-8:2 chip-ID: 04f2:b604
  Display: x11 server: X.Org v: 21.1.4 compositor: Picom v: git-7e568
    driver: X: loaded: intel dri: i965 gpu: i915 display-ID: :0 screens: 1
  Screen-1: 0 s-res: 1920x1080 s-dpi: 96
  Monitor-1: eDP-1 mapped: eDP1 model: LG Display 0x0521 res: 1920x1080
    dpi: 157 diag: 355mm (14")
  OpenGL: renderer: Mesa Intel UHD Graphics 620 (KBL GT2) v: 4.6 Mesa
    22.1.7 direct render: Yes
  Device-1: Intel Sunrise Point-LP HD Audio vendor: Lenovo ThinkPad T480
    driver: snd_hda_intel v: kernel bus-ID: 00:1f.3 chip-ID: 8086:9d71
  Sound API: ALSA v: k5.15.74-3-MANJARO running: yes
  Sound Server-1: JACK v: 1.9.21 running: no
  Sound Server-2: PulseAudio v: 16.1 running: yes
  Sound Server-3: PipeWire v: 0.3.58 running: no
  Device-1: Intel Ethernet I219-LM vendor: Lenovo driver: e1000e v: kernel
    port: N/A bus-ID: 00:1f.6 chip-ID: 8086:15d7
  IF: enp0s31f6 state: down mac: <filter>
  Device-2: Intel Wireless 8265 / 8275 driver: iwlwifi v: kernel pcie:
    speed: 2.5 GT/s lanes: 1 bus-ID: 03:00.0 chip-ID: 8086:24fd
  IF: wlp3s0 state: up mac: <filter>
  Local Storage: total: 238.47 GiB used: 66.92 GiB (28.1%)
  ID-1: /dev/nvme0n1 vendor: Intel model: SSDPEKKF256G8L size: 238.47 GiB
    speed: 31.6 Gb/s lanes: 4 serial: <filter> temp: 29.9 C
  ID-1: / size: 116.5 GiB used: 66.9 GiB (57.4%) fs: ext4 dev: /dev/nvme0n1p5
  ID-2: /boot/efi size: 96 MiB used: 25.3 MiB (26.4%) fs: vfat
    dev: /dev/nvme0n1p1
  ID-1: swap-1 type: file size: 8 GiB used: 0 KiB (0.0%) priority: -2
    file: /swapfile
  System Temperatures: cpu: 40.0 C pch: 38.0 C mobo: N/A
  Fan Speeds (RPM): N/A
  Processes: 246 Uptime: 1h 59m Memory: 7.51 GiB used: 3.05 GiB (40.6%)
  Init: systemd v: 251 default: graphical Compilers: gcc: 12.2.0 Packages:
  pm: pacman pkgs: 1384 Shell: Bash v: 5.1.16 running-in: kitty inxi: 3.3.22
  • qt5settings is an application for setting the look & feel of qt-based applications, many (if not most) of which will be KDE applications.

  • kvantummanager is for setting the application theme — i.e. that which is shown inside the application window only — of qt/KDE applications. In your case, it must be used in conjunction with qt5settings — if you set the qt theme to kvantum, then you can use kvantummanager to load and tweak kvantum-specific themes, of which you can find many at store.kde.org.

  • Lx Appearance is the equivalent of qt5settings for the LXDE and LXQt desktop environments, but if you started from an XFCE system, then you must have installed that package yourself, or possibly as a dependency to another package you manually installed.

  • lightdm is the XFCE login screen.

  • Qt Assistent/Designer/Linguist are packages for developing a qt-based graphical interface/application. They don’t normally come installed by default — not even in Plasma — so you must have installed them yourself.

Both are graphical widget toolkits, but they are radically different.

  • qt is the graphical widget toolkit used by KDE Plasma and all of the KDE applications, as well as by the LXQt, Deepin and Cutefish desktop environments.

  • gtk is the graphical widget toolkit used by the GNOME, XFCE, LXDE, Budgie, MATE and Cinnamon desktop environments, and by applications such as (among many others) GIMP.

There is a distinct difference in look & feel between qt and gtk, with the former having more features and customizability, and the latter being a lot less flexible.

That said, applications like firefox and thunderbird are gtk-based, but both use a Mozilla-specific user interface that does not necessarily correspond to the general look & feel of gtk.

I am not familiar with the i3 window manager, but the default theme in Manjaro Plasma is Breath for both KDE/qt applications and GNOME/gtk applications, and Breath is based upon the Breeze theme, which aims to unify the look of qt and gtk applications.

Outside of the Plasma edition, I believe that the GNOME edition uses the Adwaita theme by default. I don’t know what XFCE uses by default, but it’ll either way be a gtk theme, because gtk is what XFCE is based upon.


This should answer some interrogations about their differences.