chore: cut GitHub, make project Gitea-only

- relink README/CHANGELOG/pyproject/SECURITY to git.engelgardt23.ru
- port CI from GitHub Actions to .gitea/workflows (publishes Gitea release via API)
- rename GITHUB_REPO -> REPO; drop GitHub mentions in code/docs/comments
- remove .github (workflow + issue templates); drop made-by lines
This commit is contained in:
2026-06-01 12:34:21 +03:00
parent 07b93d1382
commit 27304992a0
13 changed files with 50 additions and 137 deletions
+5 -6
View File
@@ -6,15 +6,14 @@
```
dhcpsrv/
├── .github/
── workflows/release.yml ← CI: tag-driven build + GitHub Release
│ └── ISSUE_TEMPLATE/ ← bug / feature / security routing
├── .gitea/
── workflows/release.yml ← CI: tag-driven build + Gitea Release
├── src/dhcpsrv/ ← package source (≤200 lines per module)
│ ├── __init__.py ← single source of truth for __version__
│ ├── __main__.py ← entry: python -m dhcpsrv
│ ├── app.py ← main flow, wires everything
│ ├── platform_win.py ← VT enable + UAC self-elevate
│ ├── update_check.py ← GitHub /releases/latest poll
│ ├── update_check.py ← Gitea /releases/latest poll
│ ├── network.py ← list_adapters, netsh, ping (no shared state)
│ ├── dhcp.py ← DhcpConfig, DhcpServer, packet parse/build
│ └── ui.py ← rich-based full-screen TUI
@@ -64,7 +63,7 @@ flag tells PyInstaller where to find the `dhcpsrv` package itself. Output:
4. Tag: `git tag vX.Y.Z`.
5. Push: `git push && git push --tags`.
That's it. GitHub Actions picks up the tag, builds the exe, writes the SHA-256, and creates the GitHub Release with the zip attached.
That's it. Gitea Actions picks up the tag, builds the exe, writes the SHA-256, and creates the Gitea Release with the zip attached.
## Where features go
@@ -76,4 +75,4 @@ That's it. GitHub Actions picks up the tag, builds the exe, writes the SHA-256,
| Something shown in the header | `ui.py``Ui._render_header` |
| A startup check or banner line | `app.py``main()` |
| A change to UAC / VT logic | `platform_win.py` |
| Tweaking the GitHub update-check UX | `update_check.py` |
| Tweaking the update-check UX | `update_check.py` |