This is a small Panel applet for the Budgie Desktop to display the battery charge of a connected Bluetooth device.

Overview

BudgieBluetoothBattery

This is a small Panel applet for the Budgie Desktop to display the battery charge of a connected Bluetooth device.
It uses the library Bluetooth_Headset_Battery_Level by @TheWeirdDev.

Panel example


Installation

With Archlinux or Manjaro, you can install this applet using AUR:

yay -S budgie-bluetooth-battery-applet

It is possible that you need to re-login to make the Applet visible in Budgie Settings.


With less cool Linux Distributions ( 😉 ) one way to get it working is to copy the following files to the paths in which they are expected by Budgie:

# Local installation
mkdir -p ~/.local/share/budgie-desktop/plugins/budgie-bluetooth-battery-applet
cp BudgieBluetoothBatteryApplet.plugin budgie_bluetooth_battery_applet.py ~/.local/share/budgie-desktop/plugins/budgie-bluetooth-battery-applet/
mkdir -p ~/.local/share/glib-2.0/schemas
cp schema/de.galaxy102.budgie.bluetooth-battery.gschema.xml ~/.local/share/glib-2.0/schemas/
glib-compile-schemas ~/.local/share/glib-2.0/schemas

# System-wide installation
sudo mkdir -p /usr/lib/budgie-desktop/plugins/budgie-bluetooth-battery-applet
sudo cp BudgieBluetoothBatteryApplet.plugin budgie_bluetooth_battery_applet.py /usr/lib/budgie-desktop/plugins/budgie-bluetooth-battery-applet/
sudo cp schema/de.galaxy102.budgie.bluetooth-battery.gschema.xml /usr/share/glib-2.0/schemas/
sudo glib-compile-schemas /usr/share/glib-2.0/schemas

You need to Re-Login for the changes to take effect.


Configuration

When adding the applet, you need to enter the MAC address of the device you want to see the battery charge of. To find that address, go to the Bluetooth Settings and click the device.

MAC address

Enter this address in the same format in Budgie Settings when adding the Applet to your Panel.


Known issues

  • By now, multiple Applet instances are not supported (and I have no idea how to implement that...)
  • The Behaviour when the device is not connected is to show "NC" as battery state. This could be made configurable.
  • The Poll interval is fixed to 30 seconds and could be made configurable.
  • This is my first work with Gtk. I have no idea whether the code style is adequate.

Please feel free to open PRs or write Github Issues.


Thanks

Owner
Konstantin Köhring
Computer Science Student at TU Dresden, DevOps Starter at Peerox GmbH
Konstantin Köhring
A Classroom Engagement Platform

Project Introduction This is project introduction Setup Setting up Postgres This is the most tricky part when setting up the application. You will nee

Santosh Kumar Patro 1 Nov 18, 2021
A tool for fixing inconsistent timestamp metadata (atime, ctime, and mtime).

Mtime Fixer Mtime Fixer is a tool for fixing inconsistent timestamp metadata (atime, ctime, and mtime). Sometimes timestamp metadata of folders are in

Halit Şimşek 2 Jan 11, 2022
Hacktoberfest2021 🥳- Contribute Any Pattern In Any Language😎 Every PR will be accepted Pls contribute

✨ Hacktober Fest 2021 ✨ 🙂 All Contributors are requested to star this repo and follow me for a successful merge of pull request. 🙂 👉 Add any patter

Md. Almas Ali 103 Jan 07, 2023
Async-first dependency injection library based on python type hints

Dependency Depression Async-first dependency injection library based on python type hints Quickstart First let's create a class we would be injecting:

Doctor 8 Oct 10, 2022
Port of the OpenCascade library to JavaScript / WebAssembly using Emscripten

OpenCascade.js A port of the OpenCascade CAD library to JavaScript and WebAssembly via Emscripten. Explore the docs » Examples · Issues · Discuss Proj

Sebastian Alff 347 Jan 08, 2023
Problem statements on System Design and Software Architecture as part of Arpit's System Design Masterclass

Problem statements on System Design and Software Architecture as part of Arpit's System Design Masterclass

Relog 1.1k Jan 04, 2023
WriteAIr is a website which allows users to stream their writing.

WriteAIr is a website which allows users to stream their writing. It uses HSV masking to detect a pen which the user writes with. Plus, users can select a wide range of options through hand gestures!

Atharva Patil 1 Nov 01, 2021
Python 3 script for installing kali tools on your linux machine

Python 3 script for installing kali tools on your linux machine

gh0st 2 Apr 20, 2022
Cross-Encoder-with-Bi-Encoder를 활용한 WebPage 데모

Retrieval_Streamlit_Demo Cross-Encoder-with-Bi-Encoder를 활용한

5 Dec 29, 2021
Data-driven Computer Science UoB

COMS20011_2021 Data-driven Computer Science UoB Staff Laurence Aitchison [ 6 May 16, 2022

Sardana integration into the Jupyter ecosystem.

sardana-jupyter Sardana integration into the Jupyter ecosystem.

Marc Espín 1 Dec 23, 2021
PyCASCLib: CASC interface for Warcraft III

PyCASCLib CASC interface for Warcraft III. This repo provides bindings for JCASC: https://github.com/DrSuperGood/JCASC Installation Jdk is required fo

2 Jun 04, 2022
pybind11 — Seamless operability between C++11 and Python

pybind11 — Seamless operability between C++11 and Python Setuptools example • Scikit-build example • CMake example pybind11 is a lightweight header-on

pybind 12.1k Jan 08, 2023
🍏 Make Thinc faster on macOS by calling into Apple's native Accelerate library

🍏 Make Thinc faster on macOS by calling into Apple's native Accelerate library

Explosion 81 Nov 26, 2022
An upgraded version of extractJS

extractJS_2.0 An enhanced version of extractJS with even more functionality Features Discover JavaScript files directly from the webpage Customizable

Ali 4 Dec 21, 2022
Rick Astley Language is a rick roll oriented, dynamic, strong, esoteric programming language.

Rick Roll Language / Rick Astley Language A rick roll oriented, dynamic, strong, esoteric programming language. Prolegomenon The reasons that I made t

Rick Roll Programming Language 658 Jan 09, 2023
A programming language that for tech savvy graphic designers

Microsoft Hackathon - PhoTex Idea A programming language that allows tech savvy graphic designers develop scalable vector graphics using plain text co

Joe Furfaro 5 Nov 14, 2021
GEGVL: Google Earth Based Geoscience Video Library

Google Earth Based Geoscience Video Library is transforming to Server Based. The

3 Feb 11, 2022
A general-purpose wallet generator, for supported coins only

2gen A general-purpose generator for keys. Designed for all cryptocurrencies supporting the Bitcoin format of keys and addresses. Functions To enable

Vlad Usatii 1 Jan 12, 2022
objectfactory is a python package to easily implement the factory design pattern for object creation, serialization, and polymorphism

py-object-factory objectfactory is a python package to easily implement the factory design pattern for object creation, serialization, and polymorphis

Devin A. Conley 6 Dec 14, 2022