GitHub

Logo

GitHub commit activity GitHub top language GitHub contributors GitHub issues or pull requests GitHub license GitHub release Flathub downloads

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.

General power device information Health and energy statistics Device history information Options and preferences

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.

Packaging Status

Download as an AppImage Get it on Flathub

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:

  1. Add the repository to your Nix configuration flake inputs:
inputs = {
  # ...
  wattage.url = "github:v81d/wattage";
  # ...
};
  1. 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

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.

  1. Clone the repository:
git clone https://github.com/v81d/wattage.git
cd wattage
  1. Configure the build directory using Meson:
meson setup build
  1. Compile and build the project:
meson compile -C build
  1. Install project libraries and schemas:
meson install -C build --destdir staging
glib-compile-schemas build/staging/usr/local/share/glib-2.0/schemas
  1. 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.

Read the original on github.com ↗