我個人的快速高效的狀態列+小部件,以防有人發現它的用途。
gBar: G TK欄
如果您沒有可選的依賴項,則某些功能將無法使用。
克隆 gBar
git clone https://github.com/scorpion-26/gBar
用介子配置
啟用所有可選依賴項
meson setup build
建置並安裝
ninja -C build && sudo ninja -C build install
對於 Arch 系統,可以在 AUR 上找到 gBar。您可以安裝它,例如:使用 yay yay -S gbar-git
如果您選擇 Nix/NixOS 安裝,有多種方法可以實現,但它們都要求您啟用 flake。
gBar.defaultPackage.x86_64-linux
新增至environment.systemPackages 或 home.packages 中。gBar.homeManagerModules.x86_64-linux.default
添加到 home-manager imorts 部分來完成的。這會將選項programs.gBar公開給home-manager,如下使用它。 # Inputs section
inputs . gBar . url = "github:scorpion-26/gBar" ;
...
# Inside home config
home-manager . users . user = {
...
imports = [ inputs . gBar . homeManagerModules . x86_64-linux . default ] ;
...
programs . gBar = {
enable = true ;
config = {
Location = "L" ;
EnableSNI = true ;
SNIIconSize = {
Discord = 26 ;
OBS = 23 ;
} ;
WorkspaceSymbols = [ " " " " ] ;
} ;
} ;
} ;
開啟顯示器“DP-1”上的欄
gBar bar DP-1
在監視器 0 上開啟欄位(指定監視器的傳統方法)
gBar bar 0
開啟音訊飛入(在目前監視器或指定監視器上)
gBar audio [monitor]
打開麥克風flyin,這個相當於音頻flyin
gBar mic [monitor]
開啟藍牙小工具
gBar bluetooth [monitor]
帶有預設 css 的欄
具有預設 CSS 的音訊小部件
具有預設 CSS 的藍牙小部件
酒吧:
UseHyprlandIPC
為 false 時,適用於所有實作 ext_workspace 的合成器,儘管工作區控制依賴於 Hyprland)藍牙:
音訊飛入:
將範例配置(在 data/config 下找到)複製到 ~/.config/gBar/config 並根據您的需求進行修改。
gBar 利用插件系統來創建任何人都可以創建的自訂小部件,而無需修改原始程式碼。插件是本機共享庫,需要放置在~/.local/lib/gBar
、 /usr/lib/gBar
或/usr/local/lib/gBar
內。在 example/ 中有一個範例插件設定。要建置並運行它,請在範例目錄中執行以下命令:
meson setup build -Dprefix=~/.local
對於本地用戶或
meson setup build
對於所有用戶
ninja -C build install
gBar gBarHelloWorld
第二個參數是共享庫的名稱(不含“lib”和“.so”)。
有關如何使用 gBar API 的更多範例,您可以查看內建小工具(AudioFlyin.cpp、BluetoothDevices.cpp、Bar.cpp),因為它們使用相同的 API。
最後:自己實現它很有趣,也是學習新事物的好藉口!
該項目僅供我個人使用,但我希望其他人可以輕鬆使用它,而不會出現錯誤或複雜的設定。這意味著以下內容:
顏色來自 Dracula 主題:https://draculatheme.com
首先,找到 gBar 的資料所在位置。可能的地點:
echo $XDG_DATA_DIRS
列出的任何目錄中找到的“gBar”目錄中將資料方向內的 scss 和 css 檔案複製到 ~/.config/gBar 中。例如:
mkdir ~/.config/gBar/
cp /usr/local/share/gBar/* ~/.config/gBar/
這將覆蓋預設行為。如果安裝了sass,可以修改scss文件,然後重新產生對應的css檔案。否則直接修改css文件。
如果您有自訂 style.[s]css,請確保 margins/names/... 與style/style.[s]css
中的內容相同。
如果您已針對上游 gBar 檢查了 css 並且問題仍然存在,請提出問題。
對 CSS 的主要(破壞性)變更:
.lock-button
部分來解決。刪除/tmp/gBar__audio
/ /tmp/gBar__bluetooth
。當您在正確關閉之前殺死小部件時,就會發生這種情況(對於音訊小部件,在幾秒鐘後自動關閉,對於藍牙小部件,則在關閉按鈕後自動關閉)。不過,在終端機中使用 Ctrl-C (SIGINT) 就可以了。
請參閱您的系統的配置
請從 https://www.nerdfonts.com 安裝 Nerd 字體(我使用 Caskaydia Cove NF),並相應地更改 style.css/style.scss (請參閱「我想自訂顏色」)。您將需要 2.3.0 或更高版本的 Nerd 字體(有關更多詳細信息,請參閱此評論)
某些應用程式有時不會主動查詢托盤應用程式。解決此問題的方法是在托盤應用程式之前啟動 gBar 如果它仍然不顯示,請向您的應用程式提出問題。托盤圖示已確認可與 Discord、Telegram、OBS、Steam 和 KeePassXC 搭配使用
這是半故意的並且是一個已知的錯誤(請參閱#12(評論)以了解解釋)。您可以透過在 style.css/style.scss 中設定 .popup 的背景顏色屬性使其不透明
從 bc0281c 開始,此問題現已修復!為了讓事情看起來正確,你可能需要更新你的CSS(特別是選擇器.popup
和menu
)