透過環境變數「QT_STYLE_OVERRIDE」,設定「Qt Style」

主題

lxqt-config-appearance

理論上,透過「lxqt-config-appearance (LXQt Appearance Configuaration)」這個「圖形介面程式」來操作

在「Widget Style」這個這個頁面,

有一個選項「Qt Style」,有一個下拉選單,預設有以下三個選項可選

  • Breeze
  • Windows
  • Fusion

預設是採用「Breeze」。

這個「設定值」,會被保存在「~/.config/lxqt/lxqt.conf」這個檔案,設定片段類似如下。

[Qt]
style=Breeze

議題

不過我在「Lubuntu Daily Live System」測試過程中,

發現「環境變數」有設定到「QT_STYLE_OVERRIDE」,

目前在「Lubuntu Daily Live System」,我還找不到是在那裡有設定到「QT_STYLE_OVERRIDE」這個變數。

我在「Debian」測試,以及在「Lubuntu」安裝後的系統測試,則是正常的

所以我們以下的範例是透過設定「QT_STYLE_OVERRIDE」這個方式「環境變數」這個方式來設定,

這個方式是原本「Qt Style Plugin」的設定方式。

環境變數

執行

env | grep QT

顯示

QT_ACCESSIBILITY=1
SAL_VCL_QT5_USE_CAIRO=true
LXQT_SESSION_CONFIG=session
QT_QPA_PLATFORMTHEME=lxqt
QT_STYLE_OVERRIDE=Breeze
QT_IM_MODULE=fcitx
QT_PLATFORM_PLUGIN=lxqt

在設定「Qt Style」這個議題,我們關注的是其中兩行如下

QT_QPA_PLATFORMTHEME=lxqt
QT_STYLE_OVERRIDE=Breeze

設定「Qt Style」採用「kvantum」

執行下面指令,安裝「qt5-style-kvantum

sudo apt-get install qt5-style-kvantum

安裝完畢後,

重新執行「lxqt-config-appearance (LXQt Appearance Configuaration)」這個「圖形介面程式」,

在「Widget Style」這個這個頁面,

在選項「Qt Style」的下拉選單,

就會多出「kvantum」和「kvantum-dark」兩個選項

  • Breeze
  • kvantum-dark
  • kvantum
  • Windows
  • Fusion

上面提到這個機制

因為在「Lubuntu Daily Live System」有設定到「QT_STYLE_OVERRIDE」,

所以會無法如預期的運作。

所以我們回歸到「環境變數」這個方式來設定,

也就是我們要再複寫「QT_STYLE_OVERRIDE」這個「環境變數」。

於是我們可以透過「lxqt-config-session (LXQt Session Settings)」這個「圖形介面程式」來操作。

在「Environment (Advanced)」這個頁面,

我們可以新增一個「環境變數」,

名稱是「QT_STYLE_OVERRIDE」,

設定值填入「kvantum

這個設定值,會被保存在「~/.config/lxqt/session.conf」這個檔案,內容類似如下

[Environment]
QT_STYLE_OVERRIDE=kvantum

在設定「kvantum」要採用的「佈景主題」前,

我們先執行下面的指令,安裝「arc-kde

sudo apt-get install arc-kde

因為「arc-kde」這個「Package」,有包含我們要舉例的「佈景主題」

執行

dpkg -L arc-kde | grep -i kvantum

顯示

/usr/share/Kvantum
/usr/share/Kvantum/Arc
/usr/share/Kvantum/Arc/AUTHORS
/usr/share/Kvantum/Arc/Arc.kvconfig
/usr/share/Kvantum/Arc/Arc.svg
/usr/share/Kvantum/ArcDark
/usr/share/Kvantum/ArcDark/AUTHORS
/usr/share/Kvantum/ArcDark/ArcDark.kvconfig
/usr/share/Kvantum/ArcDark/ArcDark.svg
/usr/share/Kvantum/ArcDarker
/usr/share/Kvantum/ArcDarker/AUTHORS
/usr/share/Kvantum/ArcDarker/ArcDarker.kvconfig
/usr/share/Kvantum/ArcDarker/ArcDarker.svg

也就是有下面三個「kvantum」佈景主題

  • Arc
  • ArcDark
  • ArcDarker

接著我們可以透過「kvantummanager (Kvantum Manager)」這個「圖形介面程式」來設定「kvantum」要採用的「佈景主題」,

在「Change/Delete Theme」這個頁面,可以設定。

這裡我們舉例,採用「ArcDark」這個「kvantum」佈景主題。

這個設定值,會被保存在「~/.config/Kvantum/kvantum.kvconfig」這個檔案,

執行下面指令,觀看「~/.config/Kvantum/kvantum.kvconfig」這個檔案的內容

cat ~/.config/Kvantum/kvantum.kvconfig

顯示

[General]
theme=ArcDark

最後只要重新登出登入,設定「Qt Style」採用「kvantum」就會生效。

爾後只要透過「kvantummanager (Kvantum Manager)」這個「圖形介面程式」來設定「kvantum」要採用的「佈景主題」。

設定「Qt Style」採用「gtk2」

執行下面指令,安裝「qt5-style-plugins

sudo apt-get install qt5-style-plugins

就會安裝下面四個「Package」

安裝完畢後,

重新執行「lxqt-config-appearance (LXQt Appearance Configuaration)」這個「圖形介面程式」,

在「Widget Style」這個這個頁面,

在選項「Qt Style」的下拉選單,

就會多出「cleanlooks」,「gtk2」,「cde」,「motif」,「plastique」這幾個選項

  • Breeze
  • kvantum-dark
  • kvantum
  • cleanlooks
  • gtk2
  • cde
  • motif
  • plastique
  • Windows
  • Fusion

如同上面設定「Qt Style」採用「kvantum」提到的,

我們回歸到「環境變數」的作法

只要設定「QT_STYLE_OVERRIDE=gtk2」就行了。

這樣「Qt Style」就會跟隨「gtk2」的設定。

由於在「lubuntu」我們並沒有起任何「xsettings」的「Server」,

所以「gtk2」和「gtk3」就會採用「設定檔」的設定

我們除了可以直接編輯這兩個檔案。

也可以透過「lxqt-config-appearance (LXQt Appearance Configuaration)」這個「圖形介面程式」來設定,

在「Gtk Style」這個這個頁面,就可以設定。

相關的佈景主題