Meine persönliche, unglaublich schnelle und effiziente Statusleiste + Widgets, falls jemand eine Verwendung dafür findet.
gBar: G TK Bar
Wenn Sie nicht über die optionalen Abhängigkeiten verfügen, sind einige Funktionen nicht verfügbar.
gBar klonen
git clone https://github.com/scorpion-26/gBar
Mit Meson konfigurieren
Alle optionalen Abhängigkeiten aktiviert
meson setup build
Erstellen und installieren
ninja -C build && sudo ninja -C build install
Für Arch-Systeme ist gBar im AUR zu finden. Sie können es beispielsweise installieren: mit yay yay -S gbar-git
Wenn Sie sich für die Nix/NixOS-Installation entscheiden, gibt es mehrere Möglichkeiten, dies zu tun, aber alle erfordern die Aktivierung von Flakes.
gBar.defaultPackage.x86_64-linux
entweder zu Environment.systemPackages oder Home.Packages hinzu.gBar.homeManagerModules.x86_64-linux.default
zu Ihrem Home-Manager-Importabschnitt hinzufügen. Dadurch wird die Option „Programme.gBar“ für den Home-Manager verfügbar gemacht. Verwenden Sie sie wie unten beschrieben. # 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 = [ " " " " ] ;
} ;
} ;
} ;
Offene Leiste auf Monitor „DP-1“
gBar bar DP-1
Offene Leiste auf Monitor 0 (ältere Methode zur Angabe des Monitors)
gBar bar 0
Audio-Flyin öffnen (entweder auf dem aktuellen Monitor oder auf dem angegebenen Monitor)
gBar audio [monitor]
Offenes Mikrofon-Flyin, dies entspricht dem Audio-Flyin
gBar mic [monitor]
Öffnen Sie das Bluetooth-Widget
gBar bluetooth [monitor]
Leiste mit Standard-CSS
Audio-Widget mit Standard-CSS
Bluetooth-Widget mit Standard-CSS
Bar:
UseHyprlandIPC
auf „false“ gesetzt ist, obwohl die Arbeitsbereichssteuerung auf Hyprland basiert.)Bluetooth:
Audio-Flyin:
Kopieren Sie die Beispielkonfiguration (zu finden unter data/config) nach ~/.config/gBar/config und ändern Sie sie entsprechend Ihren Anforderungen.
gBar nutzt ein Plugin-System für benutzerdefinierte Widgets, die jeder erstellen kann, ohne den Quellcode zu ändern. Plugins sind native gemeinsam genutzte Bibliotheken, die in ~/.local/lib/gBar
, /usr/lib/gBar
oder /usr/local/lib/gBar
platziert werden müssen. Im Beispiel/ gibt es ein Beispiel-Plugin-Setup. Um es zu erstellen und auszuführen, führen Sie die folgenden Befehle im Beispielverzeichnis aus:
meson setup build -Dprefix=~/.local
für den lokalen Benutzer OR
meson setup build
für alle Benutzer
ninja -C build install
gBar gBarHelloWorld
Das zweite Argument ist der Name der gemeinsam genutzten Bibliothek (ohne „lib“ und „.so“).
Weitere Beispiele zur Verwendung der gBar-API finden Sie in den integrierten Widgets (AudioFlyin.cpp, BluetoothDevices.cpp, Bar.cpp), da sie dieselbe API verwenden.
Und zu guter Letzt: Es selbst umzusetzen macht Spaß und ist ein toller Vorwand, etwas Neues zu lernen!
Dieses Projekt ist für meinen persönlichen Gebrauch gedacht, ich möchte jedoch, dass es von anderen problemlos verwendet werden kann, ohne Fehler oder eine komplizierte Einrichtung. Das bedeutet Folgendes:
Die Farben stammen aus dem Dracula-Thema: https://draculatheme.com
Finden Sie zunächst heraus, wo sich die Daten für gBar befinden. Mögliche Standorte:
echo $XDG_DATA_DIRS
aufgelisteten Verzeichnisse gefunden wirdKopieren Sie die SCSS- und CSS-Dateien aus der Datenrichtung nach ~/.config/gBar. z.B:
mkdir ~/.config/gBar/
cp /usr/local/share/gBar/* ~/.config/gBar/
Dadurch wird das Standardverhalten außer Kraft gesetzt. Wenn Sie Sass installiert haben, können Sie die SCSS-Datei ändern und die CSS-Datei dann entsprechend neu generieren. Andernfalls ändern Sie die CSS-Datei direkt.
Wenn Sie ein benutzerdefiniertes style.[s]css haben, stellen Sie sicher, dass die Ränder/Namen/... mit denen in style/style.[s]css
identisch sind.
Wenn Sie das CSS mit dem Upstream-gBar verglichen haben und das Problem weiterhin besteht, öffnen Sie bitte ein Problem.
Wichtige (bahnbrechende) Änderungen am CSS:
.lock-button
in Ihr CSS aufnehmen. Löschen Sie /tmp/gBar__audio
/ /tmp/gBar__bluetooth
. Dies geschieht, wenn Sie das Widget beenden, bevor es ordnungsgemäß geschlossen wird (automatisch nach einigen Sekunden beim Audio-Widget oder nach der Schaltfläche „Schließen“ beim Bluetooth-Widget). Strg-C im Terminal (SIGINT) ist jedoch in Ordnung.
Siehe Konfiguration für Ihr System
Bitte installieren Sie eine Nerd-Schriftart von https://www.nerdfonts.com (ich verwende Caskaydia Cove NF) und ändern Sie style.css/style.scss entsprechend (siehe dazu „Ich möchte die Farben anpassen“). Sie benötigen eine Nerd-Schriftart mit Version 2.3.0 oder neuer (Weitere Details finden Sie in diesem Kommentar)
Einige Apps fragen manchmal nicht aktiv nach Taskleistenanwendungen ab. Eine Lösung hierfür besteht darin, gBar vor der Taskleisten-App zu starten. Wenn es immer noch nicht angezeigt wird, öffnen Sie bitte ein Problem mit Ihrer Anwendung. Es wurde bestätigt, dass die Taskleistensymbole mit Discord, Telegram, OBS, Steam und KeePassXC funktionieren
Dies ist halbabsichtlich und ein bekannter Fehler (siehe Nr. 12 (Kommentar) für eine Erklärung). Sie können es undurchsichtig machen, indem Sie die Eigenschaft „Hintergrundfarbe“ von .popup in style.css/style.scss festlegen
Ab bc0281c ist dies nun behoben! Damit alles richtig aussieht, sollten Sie Ihr CSS aktualisieren (insbesondere die Selektoren .popup
und menu
).