誰かが使用できるように、私個人の非常に高速で効率的なステータス バーとウィジェットを用意しました。
gBar: G TKバー
オプションの依存関係がない場合、一部の機能は使用できません。
gBar を複製する
git clone https://github.com/scorpion-26/gBar
中間子で設定する
すべてのオプションの依存関係が有効になっています
meson setup build
ビルドしてインストールする
ninja -C build && sudo ninja -C build install
Arch システムの場合、gBar は AUR にあります。たとえば、yay yay -S gbar-git
でインストールできます。
Nix/NixOS インストールを選択した場合、いくつかの方法がありますが、いずれもフレークを有効にする必要があります。
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]
オープンマイクフライイン、これはオーディオフライインと同等です
gBar mic [monitor]
Bluetooth ウィジェットを開く
gBar bluetooth [monitor]
デフォルトのCSSを含むバー
デフォルトのCSSを使用したオーディオウィジェット
デフォルトの CSS を使用した Bluetooth ウィジェット
バー:
UseHyprlandIPC
を実装するすべてのコンポジタで動作しますが、ワークスペース制御は 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
2 番目の引数は、共有ライブラリの名前です (「lib」と「.so」を除く)。
gBar API の使用方法のその他の例については、同じ API を使用する組み込みウィジェット (AudioFlyin.cpp、BluetoothDevices.cpp、Bar.cpp) を参照してください。
そして最後に、自分で実装するのは楽しいし、何か新しいことを学ぶ素晴らしい口実になります。
このプロジェクトは個人的な使用を目的としていますが、バグや複雑な設定なしで他の人が簡単に使用できるようにしたいと考えています。これは次のことを意味します。
色はドラキュラのテーマからのものです: 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 がある場合は、マージン/名前/... がstyle/style.[s]css
にあるものと同じであることを確認してください。
上流の gBar に対して CSS をチェックしても問題が解決しない場合は、問題を開いてください。
CSS への主要な (重大な) 変更:
.lock-button
セクションを CSS に含めることで修正できます。/tmp/gBar__audio
/ /tmp/gBar__bluetooth
を削除します。これは、ウィジェットが適切に閉じる前にウィジェットを強制終了した場合に発生します (オーディオ ウィジェットの場合は数秒後、Bluetooth ウィジェットの場合は閉じるボタンが自動的に終了します)。ただし、ターミナル (SIGINT) で Ctrl-C を押しても問題ありません。
システムの構成を参照してください
https://www.nerdfonts.com から Nerd Font をインストールし (私は Caskaydia Cove NF を使用しています)、それに応じて style.css/style.scss を変更してください (これについては、「色をカスタマイズしたい」を参照してください)。バージョン 2.3.0 以降の Nerd Font が必要になります(詳細については、このコメントを参照してください)
一部のアプリは、トレイ アプリケーションを積極的にクエリしないことがあります。これを修正するには、トレイ アプリの前に gBar を起動します。それでも表示されない場合は、アプリケーションの問題を開いてください。トレイアイコンはDiscord、Telegram、OBS、Steam、KeePassXCで動作することが確認されています
これは半ば意図的なものであり、既知のバグです (説明については #12 (コメント) を参照してください)。 style.css/style.scssの.popupのbackground-colorプロパティを設定することで不透明にできます。
bc0281c 以降、この問題は修正されました。正しく表示するには、CSS (特にセレクター.popup
とmenu
) を更新するとよいでしょう。