QGtkStyle 設定

設定腳本

設定檔案

前提

因為我慣用「pcmanfm-qt」,所以做了這個設定後,

我設定「gtk」的「佈景主題」,只要該「佈景主題」有提供「gtk2」的外觀設定,

跟「qt」相關的程式外觀,就會依據「gtk2」的外觀設定來顯示。

設定說明

必須安裝「qt5-gtk2-platformtheme」,

sudo apt-get install qt5-gtk2-platformtheme

並且「環境變數」要設定「QT_QPA_PLATFORMTHEME=gtk2」。

有幾個地方可以設定,下面只要選擇其中一種就行了

  • /etc/environment
  • /etc/profile.d/ (上面設定腳本採用的方式)
  • /etc/X11/Xsession.d/
  • ~/.profile

上面設定腳本採用的方式,

在「/etc/profile.d/」這個資料夾,

產生一個檔案「/etc/profile.d/qt-style-follow-gtk.sh」,

內容如下


if [ "$XDG_CURRENT_DESKTOP" != "KDE" ]; then
	export QT_QPA_PLATFORMTHEME=gtk2
fi

Package

Arch Wiki

  • Uniform look for Qt and GTK applications / QGtkStyle

案例

ubuntu-mate-default-settings

執行

dpkg -S /etc/profile.d/mate-qt.sh

顯示

ubuntu-mate-default-settings: /etc/profile.d/mate-qt.sh

執行

cat /etc/profile.d/mate-qt.sh

顯示

# MATE Desktop Qt integrations
if [ "x$DESKTOP_SESSION" = "xmate" ] || [ "x$XDG_SESSION_DESKTOP" = "xmate" ]; then
    # QT apps to use GTK styling
    export QT_QPA_PLATFORMTHEME=gtk2
fi

qt5ct

執行

dpkg -S /etc/X11/Xsession.d/99qt5ct

顯示

qt5ct: /etc/X11/Xsession.d/99qt5ct

執行

cat /etc/X11/Xsession.d/99qt5ct

顯示

# Enable qt5ct by default unless another PLATFORMTHEME option is set
# or KDE is running.
if [ -z "$QT_QPA_PLATFORMTHEME" ] && [ "$XDG_CURRENT_DESKTOP" != "KDE" ]
then
        export QT_QPA_PLATFORMTHEME=qt5ct
fi

相關討論

  • #3 - 回覆: 關於「桌面環境」便利操作的按鍵組合設定