2c146b07118e8d111343017a5c84ea35cf51fc9c
Playliste-abonnement henter nye videoer efterhånden som de lægges i playlisten. Kanal-abonnement holder en rullende buffer: cycle X = de X nyeste videoer ligger klar, og kommer der en ny, ryger den ældste ud. X tæller kun kanal-abonnementets egne hentninger. Manuelle hentninger, playliste-abonnementer og favoritter tæller ikke med — og favoritter slettes aldrig, så en favoritering frigør en plads i cyklussen til næste video. Tre ting der måtte designes udenom: 1. `seen` husker hvert video-id abonnementet nogensinde har hentet, også efter videoen er slettet igen. Uden det ville set-reglen slette en video efter 7 dage, hvorefter kanalen stadig har den blandt sine nyeste og henter den igen — i en uendelig løkke. 2. Playliste og kanal primer forskelligt ved oprettelse. En playliste kan have hundredvis af videoer, og ønsket var NYE videoer, så første tjek markerer det eksisterende som kendt uden at hente. En kanal henter derimod de X nyeste med det samme; det er hele pointen med cycle X. Resten af bagkataloget markeres som kendt, så den aldrig begynder at hente gammelt indhold. 3. enforce_cycles rører intet hvis Emby ikke svarer. Uden favorit-data kunne den komme til at slette noget fredet — samme konservative holdning som mediaclean. Downloads gemmer nu video-id og upload-dato, så cyklussen kan sortere efter hvor ny videoen ER, ikke hvornår vi tilfældigvis hentede den. Timeren kører i rækkefølgen: tjek abonnementer -> hent -> håndhæv cyklus -> slet sete. Cyklussen skal håndhæves efter hentningen, ellers ser den et halvt bibliotek. Claude-Session: https://claude.ai/code/session_011WxG8pbLj61jYU1MMaD7VC
weircon-front
Forside og admin-portal for weircon.dk — et selv-hostet homelab.
FastAPI-app der:
- Logger ind via Authentik (OIDC) og viser de tjenester brugeren har adgang til (hentet fra Authentiks app-liste pr. bruger), grupperet efter app-gruppe.
- Favoritter + visnings-toggle (grupperet/alfabetisk), gemt server-side pr. bruger.
- ⌘K kommandopalette til hurtig søgning/navigation.
- Lys/mørkt tema (ført videre fra asger.weirsoe.dk).
- Admin (kun for medlemmer af
ADMIN_GROUP), udvidbare moduler:- IP -> label & land (skrives til NPMplus ip_labels.json)
- Cookie-tekster
- Matomo-statistik
- App-beskrivelser & grupper (skriver tilbage til Authentik)
Kør
python3 -m venv /opt/portal/venv
/opt/portal/venv/bin/pip install -r requirements.txt
cp deploy/portal.env.example /etc/portal.env # udfyld secrets
cp deploy/portal.service /etc/systemd/system/
systemctl enable --now portal
Appen kører bag NPMplus (TLS + proxy) paa weircon.dk. Tilfoej nye admin-moduler i ADMIN_MODULES + en route + en template der extender base.html.
Description
Basal front for weircon.dk, mine hosted services. Gemt bag authentik SSO som kun viser hvad man har adgang til jf. Authentik. Samt et administrator panel, som viser pending opdateringer af de opensource services der hostes, basal bruger administration mv.
https://weircon.dk
1.1 MiB
Languages
Python
61.5%
HTML
36%
CSS
2.2%
Shell
0.3%