Catch Sunset
A CLI tool to track sunset, sunrise, moonrise, and moonset events with optional alarm notifications via ntfy.sh.
Installation
uv sync
Usage
# Show today's events
catch-sunset today
# Show today's events with alarm notifications for sunrise and sunset
catch-sunset today -s -S
# Show tomorrow's events with custom ntfy topic
catch-sunset tomorrow -s -S --ntfy-topic mysunset
# Show events with custom cloud cover threshold (only notify if ≤30% clouds)
catch-sunset today -s -S --cloud-threshold 30
# Show events for a date range
catch-sunset range --start-date 2025-01-15 --end-date 2025-01-20
Features
- Auto-detects location via IP geolocation
- Manual location specification via --lat and --lon
- Configurable alert buffer time
- Optional alarm notifications via ntfy.sh
- Shows moon phase and moonrise/moonset during full moon periods
- Granular cloud cover display with 5-level emoji system (☀️ 🌤️ ⛅ 🌥️ ☁️)
- Configurable cloud cover threshold for notifications (default: 50%)
- Smart notification system: only alerts when sky conditions are favorable
Cloud Cover Notifications
By default, notifications are sent only when cloud cover is 50% or less. This threshold can be customized:
Via CLI flag:
# Only notify if very clear (≤25% clouds)
catch-sunset today -s -S --cloud-threshold 25
# Notify even with more clouds (≤75% clouds)
catch-sunset today -s -S --cloud-threshold 75
Via config file (~/.config/influxdb/totalconfig.conf):
[ntfy sunset]
server = https://ntfy.sh
topic = mytopic
cloud_cover_threshold = 50
Cloud Cover Icons
The tool displays granular cloud cover information:
- ☀️ 0-10%: Sunny, perfect conditions
- 🌤️ 11-35%: Mostly sunny
- ⛅ 36-65%: Partly cloudy
- 🌥️ 66-90%: Mostly cloudy
- ☁️ 91-100%: Overcast
Metadata
Release files for catch-sunset 0.1.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| catch_sunset-0.1.6.tar.gz | 28.6 kB | Without provenance | Details for catch_sunset-0.1.6.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| catch_sunset-0.1.6-py3-none-any.whl | Python 3 | none | any | Details for catch_sunset-0.1.6-py3-none-any.whl |
Total release size: 61.5 kB
Release files / catch_sunset-0.1.6.tar.gz
| Download URL | catch_sunset-0.1.6.tar.gz |
|---|---|
| Size | 28.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e89c47926cd1eb246815fd5362febd27d2690b8cb3f017bbd662ee672b88165d
|
|
BLAKE2b-256 checksum How to use checksums |
a601ca3af5977171d483b52da52b40638c075ae3f3eee16a78b435653f3da2f5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.7
|
Release files / catch_sunset-0.1.6-py3-none-any.whl
| Download URL | catch_sunset-0.1.6-py3-none-any.whl |
|---|---|
| Size | 33.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3124e4e11dc98758a22adaf488a458b159e5af1c7271066594a6bfb0f50a750a
|
|
BLAKE2b-256 checksum How to use checksums |
7a4a2a37753344c0701b545831a65c73885d7456c4b443cf2ca148edc333ea18
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.7
|
Security for catch-sunset 0.1.6
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.