Prayer Times — Waybar Widget
Shows Islamic prayer times in your status bar — auto-detects location via IP.
What it does
- Displays how much time is left in the current prayer (e.g. "Isha 20m remaining")
- Shows "Forbidden 12m" during sunrise and midday periods when prayer isn't allowed
- Shows time until the next prayer when nothing is active (e.g. "Dhuhr in 1h")
How to use
- Left-click the prayer time to switch between two display modes:
- Context-aware (shows what matters right now)
- Always show time until next prayer
- Hover over it to see the complete daily timetable
Installation
From PyPI (recommended)
uv tool install waybar-salah
Or with pip:
pip install waybar-salah
From source
Requires uv.
uv tool install git+https://github.com/shahriyardx/waybar-salah
Or from a local copy:
cd /path/to/prayer-times
uv tool install .
Then add to your Waybar config:
"custom/prayer": {
"exec": "waybar-salah",
"return-type": "json",
"interval": 30,
"on-click": "waybar-salah --toggle",
"tooltip": true
}
Add some CSS to colour the states:
#custom-prayer.current { color: #a6e3a1; }
#custom-prayer.forbidden { color: #f38ba8; }
#custom-prayer.next { color: #89b4fa; }
Customisation
Open src/waybar_salah/main.py and change CITY, COUNTRY, or METHOD at the top.
| Method | Organisation |
|---|---|
| 1 | University of Islamic Sciences, Karachi |
| 2 | Islamic Society of North America |
| 3 | Muslim World League |
| 4 | Umm Al-Qura, Makkah |
| 8 | University of Tehran |
Files
src/waybar_salah/main.py # main logic
pyproject.toml # package config
cache.json # daily timings (auto-generated)
Metadata
Release files for waybar-salah 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| waybar_salah-0.1.1.tar.gz | 4.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| waybar_salah-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 7.9 kB
Release files / waybar_salah-0.1.1.tar.gz
| Download URL | waybar_salah-0.1.1.tar.gz |
|---|---|
| Size | 4.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
06a7ce78b100eea3a24f5a66220d186833588b74d2144223013fa0766fade27b
|
|
BLAKE2b-256 checksum How to use checksums |
cdffa408ecb4f284ecae15b677ff972570a543ec07e0093cf1303643cc0874e7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / waybar_salah-0.1.1-py3-none-any.whl
| Download URL | waybar_salah-0.1.1-py3-none-any.whl |
|---|---|
| Size | 3.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
25a61088a818c458659a6685cb36338c89e81d1036ca8068cb3d3589883a920a
|
|
BLAKE2b-256 checksum How to use checksums |
25b6a4ecbc661cf058377e2d4c5a2cc42a352a97ebb216c7aed2ce636a45ac34
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|