Skip to main content

A simple GTK power menu styled after hyprland.

Project description

HyprPwr

A minimal power/session menu for Hyprland written in Python and GTK3.

HyprPwr provides a small keyboard-friendly popup for common session management actions:

  • Logout
  • Shutdown
  • Restart
  • Suspend

Features

  • Lightweight GTK3 interface
  • Keyboard navigation (/, j/k)
  • Mouse support
  • Clean floating window design
  • Designed specifically for Hyprland
  • No external menu launcher required

Requirements

  • Python 3
  • GTK3
  • PyGObject
  • Hyprland

Dependencies

Runtime Dependencies

Dependency Purpose
Python 3.8+ Application runtime
GTK 3 User interface
PyGObject Python GTK bindings
Hyprland Session management integration
systemd Shutdown, reboot, and suspend actions

Distribution Packages

Arch Linux

sudo pacman -S python python-gobject gtk3

Debian / Ubuntu

sudo apt install python3 python3-gi gir1.2-gtk-3.0

Fedora

sudo dnf install python3 python3-gobject gtk3

openSUSE

sudo zypper install python3-gobject gtk3

Gentoo

sudo emerge dev-python/pygobject x11-libs/gtk+

Support Matrix

Component Status
Hyprland ✅ Supported
GTK 3 ✅ Supported
Wayland ✅ Supported
X11 ⚠️ Untested
systemd ✅ Supported
elogind ⚠️ Suspend/Reboot may require customization
seatd ⚠️ Untested

Distribution Support

Distribution Status
Arch Linux ✅ Tested
EndeavourOS ✅ Expected to work
CachyOS ✅ Expected to work
Manjaro ✅ Expected to work
Fedora ✅ Expected to work
openSUSE Tumbleweed ✅ Expected to work
Debian 12+ ✅ Expected to work
Ubuntu 22.04+ ✅ Expected to work
NixOS ⚠️ Untested
Alpine Linux ❌ Not supported (no systemd)

Notes

  • Logout functionality requires hyprctl.
  • Shutdown, reboot, and suspend functionality require systemctl.
  • The application is intended for Hyprland sessions and has not been tested on other Wayland compositors.
  • Running as a normal user is recommended.

Installation

Make the script executable:

git clone https://github.com/jacobjuneau6/hyprpwr
cd hyprpwr
chmod +x hyprpwr.py

Optionally install it system-wide:

sudo install -Dm755 hyprpwr.py /usr/local/bin/hyprpwr

Usage

Run:

hyprpwr

or

python3 hyprpwr.py

Keyboard Controls

Key Action
Up / k Move selection up
Down / j Move selection down
Enter Execute selected action
Space Execute selected action
Esc Close menu

Available Actions

Action Command
Logout hyprctl dispatch exit
Shutdown systemctl poweroff
Restart systemctl reboot
Suspend systemctl suspend

Hyprland Binding

Example keybind for launching HyprPwr:

bind = SUPER, X, exec, hyprpwr

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hyprpwr-0.1.0.tar.gz (17.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hyprpwr-0.1.0-py3-none-any.whl (17.5 kB view details)

Uploaded Python 3

File details

Details for the file hyprpwr-0.1.0.tar.gz.

File metadata

  • Download URL: hyprpwr-0.1.0.tar.gz
  • Upload date:
  • Size: 17.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.5

File hashes

Hashes for hyprpwr-0.1.0.tar.gz
Algorithm Hash digest
SHA256 679a6c00bb29501d7d166f6ef55a31b1354341dc802c23c4d99199f577675690
MD5 e97d7e0ce87f1468cd5bf6950402ae94
BLAKE2b-256 8835352fd607f7c62fd5c2f1fd13fdba5809c4b97f5bf3148547dbe64cd25b2f

See more details on using hashes here.

File details

Details for the file hyprpwr-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: hyprpwr-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 17.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.5

File hashes

Hashes for hyprpwr-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5e3b0f7eeb14c31c3fffc36dfd29e9d33d4ac73ae7a70d06d1ed0802cde5f29e
MD5 e2ccfc6ec4301d40b95a9b1121f4ba1d
BLAKE2b-256 8b0f8b704b0d7de3415c22b6da9b838ff367b956bd98e64f62ad7e517f3ba527

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page