Files
idriz/admin
idriz f4a99beaeb Refaktor 2/4: superheroji izdvojen u plugin (apps/superheroji) + AppContext
Prvi pravi mini-app kao samostalan folder:
- idriz/apps/base.py: AppSpec, AppTool, AppContext (uski most ka runtime-u).
- idriz/apps/__init__.py: load_apps() (lijeni uvoz manifesta).
- idriz/apps/superheroji/: logic.py (bivši game.py), store.py (bivši gamestore.py),
  manifest.py (prompt fragment + sheme + handleri preko ctx).

Assistant više NEMA game_* metode ni self.match: prompt/tools/pozdrav/dispatch se
grade iz registra app-ova + jezgra. Admin uvozi apps.superheroji.store (bez openai).
Ponašanje isto (testirano: mehanika, handleri kroz AppContext, admin bez openai).

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

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.