แถบสถานะ + วิดเจ็ตส่วนตัวที่รวดเร็วและมีประสิทธิภาพของฉัน ในกรณีที่ใครก็ตามพบว่ามีประโยชน์
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.packagesgBar.homeManagerModules.x86_64-linux.default
ลงในส่วนการนำเข้าผู้จัดการบ้านของคุณ สิ่งนี้จะแสดงตัวเลือกที่ 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
เปิดเสียง flyin (ทั้งบนจอภาพปัจจุบันหรือบนจอภาพที่ระบุ)
gBar audio [monitor]
เปิดไมโครโฟนฟลายอิน ซึ่งเทียบเท่ากับเสียงฟลายอิน
gBar mic [monitor]
เปิดวิดเจ็ตบลูทูธ
gBar bluetooth [monitor]
แถบที่มี CSS เริ่มต้น
วิดเจ็ตเสียงพร้อม CSS เริ่มต้น
วิดเจ็ต Bluetooth พร้อม CSS เริ่มต้น
บาร์:
UseHyprlandIPC
เป็นเท็จ แม้ว่าการควบคุมพื้นที่ทำงานจะขึ้นอยู่กับ Hyprland)บลูทูธ:
เสียง Flyin:
คัดลอกการกำหนดค่าตัวอย่าง (อยู่ใต้ data/config) ลงใน ~/.config/gBar/config และแก้ไขตามความต้องการของคุณ
gBar ใช้ระบบปลั๊กอินสำหรับวิดเจ็ตแบบกำหนดเองที่ใครๆ ก็สามารถสร้างได้โดยไม่ต้องแก้ไขซอร์สโค้ด ปลั๊กอินเป็นไลบรารีที่ใช้ร่วมกันแบบดั้งเดิมซึ่งจำเป็นต้องวางไว้ภายใน ~/.local/lib/gBar
, /usr/lib/gBar
หรือ /usr/local/lib/gBar
ตัวอย่างภายใน/ มีตัวอย่างการตั้งค่าปลั๊กอิน หากต้องการสร้างและรัน ให้รันคำสั่งต่อไปนี้ภายในไดเร็กทอรีตัวอย่าง:
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
คัดลอกไฟล์ 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
หากคุณได้ตรวจสอบ CSS กับอัปสตรีม gBar แล้ว แต่ปัญหายังคงมีอยู่ โปรดเปิดปัญหา
การเปลี่ยนแปลงที่สำคัญ (แตกหัก) ใน css:
.lock-button
เริ่มต้นลงใน css ของคุณ ลบ /tmp/gBar__audio
/ /tmp/gBar__bluetooth
สิ่งนี้จะเกิดขึ้นเมื่อคุณฆ่าวิดเจ็ตก่อนที่จะปิดอย่างถูกต้อง (โดยอัตโนมัติหลังจากผ่านไปไม่กี่วินาทีสำหรับวิดเจ็ตเสียง หรือปุ่มปิดสำหรับวิดเจ็ต Bluetooth) Ctrl-C ในเทอร์มินัล (SIGINT) ก็ใช้ได้
ดู การกำหนดค่าสำหรับระบบของคุณ
โปรดติดตั้งแบบอักษร Nerd จาก https://www.nerdfonts.com (ฉันใช้ Caskaydia Cove NF) และเปลี่ยน style.css/style.scss ตามนั้น (โปรดดูที่ 'ฉันต้องการปรับแต่งสี' สำหรับสิ่งนั้น) คุณ จะ ต้องมีแบบอักษร Nerd เวอร์ชัน 2.3.0 หรือใหม่กว่า (สำหรับรายละเอียดเพิ่มเติมโปรดดูความคิดเห็นนี้)
แอพบางตัวบางครั้งไม่ค้นหาแอปพลิเคชันถาดอย่างจริงจัง วิธีแก้ปัญหานี้คือเริ่ม gBar ก่อนแอปถาด หากยังไม่แสดง โปรดเปิดปัญหากับแอปพลิเคชันของคุณ ไอคอนถาดได้รับการยืนยันว่าใช้งานได้กับ Discord, Telegram, OBS, Steam และ KeePassXC
นี่เป็นข้อผิดพลาดกึ่งตั้งใจและเป็นข้อบกพร่องที่ทราบ (ดูคำอธิบาย #12 (ความคิดเห็น)) คุณสามารถทำให้มันทึบได้โดยการตั้งค่าคุณสมบัติสีพื้นหลังของ .popup ใน style.css/style.scss
ณ วันที่ bc0281c สิ่งนี้ได้รับการแก้ไขแล้ว! เพื่อให้สิ่งต่าง ๆ ดูถูกต้อง คุณอาจต้องการอัปเดต css ของคุณ (โดยเฉพาะตัวเลือก .popup
popup และ menu
)