eb-personal-kit
A collection of handy tools.
Install
pip install eb-personal-kit
Removing this GitHub trusted publisher will prevent automated package uploads from this source. You can re-add it later if needed
Usage
DDNS
DDNS client that keeps a domain's A record in sync with the current public IP via Tencent Cloud DNSPod.
# Quick Install Service
eb service generate ddns
sudo mkdir -p /etc/eb
sudo mv eb-ddns.env /etc/eb/eb-ddns.env
sudo mv eb-ddns.service /etc/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable --now eb-ddns
# Reads config from .env (EB_DDNS_*) in the working directory
eb-ddns
Monitor
# Quick Install Service
service generate --bin eb --extra-args "monitor --quiet --upload" monitor
sudo mkdir -p /etc/eb
sudo mv eb-monitor.env /etc/eb/eb-monitor.env
sudo mv eb-monitor.service /etc/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable --now eb-monitor
# Reads config from .env (EB_DDNS_*) in the working directory
# Debug
eb monitor
Development
uv sync # set up dev environment
uv run pytest # run tests
uv build # build
python -m eb_personal_kit.cli service generate --bin eb --extra-args "monitor --quiet --upload" monitor
Publish
Publishing is automated by GitHub Actions (.github/workflows/publish.yml): pushing a v* tag runs lint/tests, builds with uv, and uploads to PyPI via Trusted Publishing.
# 1. Commit and push changes to master first (the tag must point to master HEAD)
git push
# 2. Tag the release: v<major>.<minor>.<YYMMDD>, e.g. v0.1.260930
git tag v0.1.260930
# 3. Push the tag to trigger the publish workflow
git push origin v0.1.260930
# If the release was wrong: fix on master, then re-tag with a patch number
git tag v0.1.260930.1
git push origin v0.1.260930.1
Note: the tag must point to master HEAD and match v<major>.<minor>.<YYMMDD>[.<n>]; pushed version numbers cannot be reused or overwritten.
Metadata
Release files for eb-personal-kit 0.1.260930
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| eb_personal_kit-0.1.260930.tar.gz | 72.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| eb_personal_kit-0.1.260930-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 92.6 kB
Release files / eb_personal_kit-0.1.260930.tar.gz
| Download URL | eb_personal_kit-0.1.260930.tar.gz |
|---|---|
| Size | 72.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e1bf4476950cd04a027b3b1aae8799a27fa48361b7e960d0ebbccc3e65d7dd4d
|
|
BLAKE2b-256 checksum How to use checksums |
d20a4b8f5882a958359b8f4288cfa4a968064a266239aa526422a79782121cd5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.
Transparency logRelease files / eb_personal_kit-0.1.260930-py3-none-any.whl
| Download URL | eb_personal_kit-0.1.260930-py3-none-any.whl |
|---|---|
| Size | 20.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
65bb1c252bc74e000b5245c8cd610cba33007562f805c541565b52d0d0dd4e95
|
|
BLAKE2b-256 checksum How to use checksums |
1ccef5c3061ffc78f598312466996ac02774f3ee21672916ed308ca88037bab7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.
Transparency log