Skip to content

T480 Batteries v1.0.0

Choose a tag to compare

@ijonas ijonas released this 05 Sep 12:19
· 2 commits to main since this release

First public release of T480 Batteries for the Lenovo ThinkPad T480 on Omarchy.

  • Independent internal BAT0 and external BAT1 readings, including percentage, capacity, cycles, power and per-pack time estimates.
  • Combined charge weighted by battery energy capacity.
  • Omarchy power profiles, panel navigation and battery bar integration.
  • Optional lifespan saver: 75% start / 80% stop when enabled, factory 0% / 100% when disabled. No forced discharge.
  • Root-owned charge helper, authenticated Polkit actions and a timer that restores saved limits for present packs.

Install the tagged plugin:

omarchy plugin add https://github.com/stackingturtles/t480batteries.git
git -C ~/.config/omarchy/plugins/io.github.stackingturtles.t480batteries checkout --detach v1.0.0
omarchy plugin validate ~/.config/omarchy/plugins/io.github.stackingturtles.t480batteries
omarchy plugin enable io.github.stackingturtles.t480batteries

Click the battery icon to open the panel. Keep stock omarchy.battery enabled for low-charge warnings. To install optional charge control:

pkexec ~/.config/omarchy/plugins/io.github.stackingturtles.t480batteries/install-saver.sh

Omarchy's updater follows the default branch even from detached checkouts. Select future release tags explicitly to stay on releases; reinstall the root-owned helper when upgrading charge control. Removing the panel alone retains the helper, timer and saved mode; full removal is documented in the README.

The public namespace is io.github.stackingturtles.t480batteries. Existing users of the original personal namespace must disable/remove the old plugin entry and update any configuration-manager references. Do not install both versions together. The helper installer backs up and migrates the original Polkit policy, refusing customized or symlinked legacy policies.

Validation: 22 Python tests and 5 Node tests pass, along with manifest and Bash syntax validation. Live namespace/Polkit migration preserved both batteries' 75/80 thresholds and the active timer.

Hardware limits: actual charging cutoff, physical battery reinsertion and suspend/resume were not independently re-tested for this release. Estimated per-pack times are not total laptop runtime. Node is only a test dependency; monitoring uses Python's standard library.

MIT licensed. Original contributions copyright Stacking Turtles Ltd.; upstream Omarchy attribution retained.