Files
idriz/admin/README.md
idriz 24cbe280d6 Dodaj admin web panel u repo (admin/), sinhronizuj systemd unite
- admin/: LAN web panel (Flask + waitress + python-pam), status servisa,
  PAM login sa idriz korisnikom, vertikalni meni. Port 8080, samo LAN.
- systemd/idriz-admin.service: korisnički servis, enabled + Restart=always
  + StartLimitIntervalSec=0.
- systemd/idriz.service: dodan StartLimitIntervalSec=0 (repo je bio zastario).

Od sada sav aplikacioni source code ide u ovaj repo.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LzKpYaEsuWDevuNnvSjcFW
2026-09-04 11:26:45 +02:00

1.5 KiB

Idriz Admin

Jednostavan LAN web panel za mašinu idriz. Namjerno minimalan: Flask + waitress + python-pam, jedan fajl (app.py), bez baze podataka.

Šta radi

  • Prijava preko PAM-a (Linux korisnik idriz, ista lozinka kao sistemska).
  • Stranica Status servisa — pregled sistemskih i korisničkih servisa (idriz, CUPS, VNC, PipeWire...) sa stanjem, autostartom, uptime-om, PID-om i memorijom.
  • Vertikalni meni sa lijeve strane (spremno za dodavanje novih stranica).

Pristup

  • URL: http://192.168.1.10:8080/ (samo sa LAN-a).
  • Korisnik: idriz, lozinka: sistemska lozinka tog korisnika.

Pokretanje

Radi kao korisnički systemd servis (mora biti user servis zbog pristupa systemctl --user servisima kao što je idriz.service):

systemctl --user status idriz-admin
systemctl --user restart idriz-admin
journalctl --user -u idriz-admin -f

Enabled je za boot; Restart=always + StartLimitIntervalSec=0 (nikad ne odustaje).

Struktura

  • app.py — cijela aplikacija (konfiguracija servisa je lista SERVICES na vrhu).
  • templates/base.html — layout + vertikalni meni + stil.
  • templates/login.html, templates/status.html.
  • PAM servis: /etc/pam.d/idriz-admin.

Dodavanje novog servisa u praćenje

Dopiši red u listu SERVICES u app.py (unit, scope, label, desc) i restartuj: systemctl --user restart idriz-admin.

Dodavanje nove stranice u meni

  1. Nova ruta u app.py sa @login_required.
  2. Novi <a> u templates/base.html (u .nav), sa active klasom preko active_page.