Wattage is an application designed for monitoring the health and status of your power devices. It displays quick data regarding battery capacity, energy metrics, and device information through a clean, modern GTK 4 and libadwaita interface.
Notices
Wattage does not support Windows, macOS, or any system that does not support retrieving power information from UPower. However, nearly all Linux distributions with a user interface or desktop environment (such as GNOME, KDE Plasma, etc.) have UPower installed, so Wattage should work on almost all desktops. Some BSD operating systems also support UPower, but full functionality is not guaranteed.
Features
- Monitor a variety of statistics regarding your battery.
- View battery health, voltage data, model information, manufacturing details, and device status.
- Support for multiple batteries or power sources.
- Interface built with GTK 4 and libadwaita.
- Written in Vala, which is fast since it compiles to C.
- Designed for systems with UPower power information.
Installation
The following guide provides instructions on how to install Wattage on your device.
Nix Flake
You can install Wattage using the official Nix flake. You can either do this declaratively (recommended for NixOS / Home Manager users) or imperatively.
Declarative/Flake Installation (Recommended for NixOS / Home Manager Users)
To install Wattage declaratively using Nix flakes, follow the steps:
- Add the repository to your Nix configuration flake inputs:
inputs = { # ... wattage.url = "github:v81d/wattage"; # ... };
- Add Wattage to package list:
# System-wide packages (configuration.nix) environment.systemPackages = [ # ... inputs.wattage.packages.${pkgs.stdenv.hostPlatform.system}.default # ... ]; # Home Manager home.packages = [ # ... inputs.wattage.packages.${pkgs.stdenv.hostPlatform.system}.default # ... ]
Imperative Installation
To install Wattage imperatively, simply run the command:
nix profile add "github:v81d/wattage"This will install all dependencies for the package and Wattage itself. After installation, you should be good to go.
Run Once
To run Wattage only once without installing it, run:
nix run "github:v81d/wattage"Manual Installation
Build Requirements
- The Vala language
- Blueprint Compiler
- The Meson build system
- Ninja
- GNU gettext
- pkg-config
- glib
- libadwaita (version >= 1.8)
- GTK 4 (version >= 4.18.0)
- libgee
- GObject Introspection
- AppStream
Other requirements should be installed automatically as dependencies of the packages above.
Build Instructions
The steps for manually building Wattage is quite straightforward. Before starting, please make sure you installed all necessary requirements listed above.
- Clone the repository:
git clone https://github.com/v81d/wattage.git
cd wattage- Configure the build directory using Meson:
meson setup build
- Compile and build the project:
meson compile -C build
- Install project libraries and schemas:
meson install -C build --destdir staging glib-compile-schemas build/staging/usr/local/share/glib-2.0/schemas
- Run the program:
GSETTINGS_SCHEMA_DIR=build/staging/usr/local/share/glib-2.0/schemas ./build/staging/usr/local/bin/wattage
Contributing
Please see the official Contributing Guide for information about contributing to Wattage.
License
Wattage is free software distributed under the GNU General Public License, version 3.0 or later (GPL-3.0+).
You are free to use, modify, and share the software under the terms of the GPL. For full details, see the GNU General Public License v3.0.



