Entwicklungsideen

Hallo zusammen,

Wir ( @Entwickler ) haben wir uns im Juli in Giengen getroffen, und wir haben natürlich genügend Ideen für die Zukunft von Linuxmuster.net, uns ist es nicht langweilig.

Aber wir möchten auch eure Meinungen sammeln über neue Funktionalitäten, die euch vielleicht am Herz liegen. Es ist für uns nicht möglich, alles zu implementieren, aber falls eine Idee mehr Stimmen als die andere hat, und nocht nicht von unsere Seite schon geplant ist, werden wir auf die Machbarkeit schauen.

Z.B., ich glaube wir sind alle einig, dass wir mehr Rollen für das Benutzermanagement brauchen. Dieser Punkt haben wir schon im Juli gesprochen und sollte in die Zukunft kommen.

Was auch kommen wird, ist die Trennung zwischen UserWebui und AdminWebui, aus Sichereitsgründen, und auch damit die UserWebui pädagogische Funktionen von „außen“ anbieten könnte. Daran arbeite ich schon seit Monaten.

Ein Wunsch, der deutlich komplizierter zu implementieren wäre, ist z.B. die SSO. Dafür wäre es nötig die Infrastruktur anzupassen, und einen Keycloack Server laufen zu lassen.

Um Ideen zu sammeln, schlage ich vor einfach eine Umfrage auf Nextcloud zu nutzen, in dem jeder einen Vorschlag machen kann. Da zwei Wörter nicht unbedingt reichen um etwas zu beschreiben, und da alle dafür evtl wählen könnten, biete ich die „Vorschläger“ hier in diesem Thread eine kurze Beschreibung hinzufügen. Bei jedem Update können damit andere User neu wählen.

Ich werde es von dem Strand beobachten und lasse die Umfrage bis Ende September offen, aber eine letzte Bitte : sei bitte vernünftigt mit den Ideen :slight_smile:

Mithelfer und neue Entwickler sind immer willkommen !

VIele Grüße

Arnaud

Ha, der Link zur Umfrage : nc.linuxmuster.net
Ich hoffe ich habe alles richtig eingestellt.

2 „Gefällt mir“

Hallo @arnaud.
Super Idee. :+1:

Ich habe direkt einen Vorschlag:
Da die meisten von uns Untis als Stundenplan-Programm nutzen dürften, fände ich es extrem sinnvoll, wenn man auf dem v7-Server die GPU00x.txt-Dateien von Untis importieren könnte, um z.B. automatisch die Zuordnung Lehrer → Fächer oder auch Lehrer → Kürzel im System zu haben. Auf diese Weise könnte man auch „automatisch“ sämtliche Fachgruppen anlegen lassen, was im Moment noch Handarbeit ist. Ich lasse die Projekte „p_Fachgruppe_Mathe“, „p_Fachgruppe_XY“ usw im Moment mit einem selbst gestrickten Script befüllen aber schöner wäre es, wenn diese Funktion integriert wäre, meine ich. Vielleicht finden sich für diesen Vorschlag ja ein paar Stimmen :thinking:

Viele Grüße,
Michael

1 „Gefällt mir“

Hallo Michael,

Die Kürzel kann man im Custom Fields speichern.
Wenn ich richtig verstehe, ich glaube deine Frage könnte mal allgemein so aüßern : mehr Ldap-Felder für die Lehrer beim Import (Kürzel, Pro-Email, Fächer, usw … ).

Aber um Stimmen zu bekommen, solltest du vielleicht einen Eintrag in die Umfrage schreiben :slight_smile:

Gruß

Arnaud

Hallo,

Danke @thoschi für die neue Ideen, es wäre vielleicht gut es hier eine kurze Beschreibung für die andere zu schreiben ?

Beim Punkt REST kann ich folgende sagen:

Das ist nur einen Proof of Concept, aber das ist schon auf dem Weg.

Gruß

Arnaud

Erläuterungen:

Sophomorix

Ich empfinde die Ausgabe von Sophomorix als… sagen wir mal recht „verbose“. Selbst das Hinzufügen eines Geräts oder Nutzers produziert seitenweise Output.
Ich fände es hilfreich, wenn es zwei „Modi“ gibt (ggf. zusätzlich):

  • -h(uman) würde eine Ausgabe produzieren, die Erfolg/Fehler auf das nötigste reduziert und z.B. so eine Zeile wie „* Benutzer xyz mit Passwort abc wurde erstellt“ erzeugt, so dass man auf einen Blick sieht, was passiert ist
  • -m(achine) hingegen könnte durchaus mehr enthalten, aber wäre so (json/xml/…)-formatiert, dass man schnell mit Bordmitteln herausfiltern kann, was man wissen möchte
  • --lastlog könnte man dann noch anbieten, um eine letzte Log-Ausgabe erneut und evtl. im anderen Format anzuzeigen - dann könnte man gezielt nachschauen, wenn etwas schief gegangen ist. Das geht dann aber schon deutlich weiter und wäre ja auch über eine Pipe problemlos machbar.

REST

Ich habe den Ansatz gesehen - das wäre eine Schnittstelle zu Ajenti, oder? Mir schwob da eher eine möglichst servernahe Schnittstelle vor, mit der eben so Dinge wie linbo-remote, sophomorix, etc. über eine einheitliche Schnittstelle erreichbar wären, aber letztlich kommt es natürlich auf das feature-set an. Aber ich denke, es gibt schon Sachen, die ihren Weg nicht in die Schulkonsole finden werden, aber auf die Zugriff dennoch nützlich wäre.

Die Frage ist für mich inzwischen grundsätzlich, wie viel man bei linuxmuster noch direkt auf dem Server machen kann/soll - ich habe mir das halt bis zur 6.2 angewöhnt, weil mir die Kommandozeile liegt und mir ist bewusst, dass viele sich mit der GUI wohler fühlen. Es ist halt wie bei vielem - eine „Abstraktionsschicht“ mehr, die Fehler produziert und von der die Lösung abhängig ist.

Für die Integration von linuxmuster in andere Lösungen, wenn man mal eine „App“ programmieren möchte (z.B. als „Fernbedienung“ für Funktionen), etc., wäre das toll.
Wir hatten mal für die 6.2 in einem Kurs eine Flask-App geschrieben, um das Prinzip zu demonstrieren: eine Webseite, auf der man sich (gegenüber dem LDAP) authentifizieren musste und dann einen Knopf hatte, der im Hintergrund einen Linbo-Remote-Befehl gestartet hat. Das war halt total nett und der Code am Ende nicht mal besonders lang.

Image-Sync aus dem OS heraus

Die Idee gab es auch anderswo im Forum schon: Der Linbo-Cache würde aus dem laufenden OS heraus aktualisiert (theoretisch könnte man sogar nicht-laufende Betriebssysteme synchronisieren - da müsste man dann aber schon seh aufpassen).
Wie? Entweder bindet man die Cache-Partition auf Systemebene ein und lässt in diesem Kontext z.B. einen torrent-client laufen - oder (vielleicht etwas leichter zu erreichen) man startet ein angepasstes Linbo in einer VM (das habe ich mit qemu mal getestet und grundsätzlich funktioniert es, nur muss man z.B. den Netzwerkkram anders bauen).

Die Zeiten, in denen Images heruntergeladen werden, würden weitgehend entfallen und Torrent könnte seine Stärken in großen Netzwerken ideal ausspielen.

SSO

Da inzwischen immer mehr Dienste für Schulen interessant sind und an Linuxmuster angeflanscht werden, wäre es eigentlich schön, wenn ein richtiges SSO integriert wäre. Also z.B. ein Keycloak-Dienst, dessen Einstellungen zu linuxmuster passen. Für die 6.2 hatten wir das testweise laufen, ohne Dienste daran anzuschließen.

Man könnte „nebenher“ für sicherheitskritische Dienste oder Gruppen Zwei-Faktor-Authentifizierung (z.B. per Smartphone oder Yubi-Key) ermöglichen bzw. erzwingen. Das entspräche dann gängigen Sicherheitsstandards.

Den Anschluss der verschiedenen optionalen Dienste könnte man in der Doku dokumentieren (so wie das jetzt ja auch mit LDAP/AD passiert).

(in anderen Lösungen ist so etwas z.T. bereits integriert)

So viel für den Moment - wenn es noch nachfragen gibt, kann ich dazu ja noch etwas schreiben.

Viele Grüße
Thomas

1 „Gefällt mir“

Was genau wünscht du dir hier? Ich hab bei mir ein Keycloak am Laufen, womit ich alle web-Dienste authentifiziere.
Das Keycloak synchronisiert sich automatisch mit dem ldap.
Das funktioniert alles eigentlich ziemlich out of the box.

VG,
Dorian

Hallo Dorian,

meine Idee wäre, dass das standardmäßig und für alle vorkonfiguriert Teil von linuxmuster ist - für die, die sich das nicht „mal eben“ einrichten. Dann wäre der Weg, Dienste anzubinden, für viel einen Schritt kürzer.

Zudem müsste ja an sich auch eine Verknüpfung mit der Windows-/Linux-Anmeldung gehen (das habe ich allerdings noch nie probiert). Dann würde man von den Clients aus ohne Anmeldung in die Webdienste kommen. Aber das ist für mich eher technisch interessant, als besonders relevant.
Einen Keycloak standardmäßig verfügbar zu haben, wäre schon etwas, mit dem man werben könnte.

Viele Grüße
Thomas

PS: Keycloak anbinden ist kein Hexenwerk, wenn man die Idee verstanden hat und Du hast ja irgendwann letztens sogar eine Anleitung für den Linuxmuster-Teil gepostet. Natürlich kann es auch gut dabei bleiben. Aber während sicher viele Schulen Moodle und/oder Nextcloud nutzen, ist Keycloak vermutlich eher die Ausnahme.

Hallo zusammen,

wenn man an die LDAP-Anbindung von Moodle und Nextcloud denkt, wäre es toll, wenn es nicht nur die Gruppe einer Klasse sonder auch die reinen Schülergruppen geben würde.
Beispiel:
In der Gruppe 8a sind alle Schüler und Lehrer der Klasse 8a. Wenn man jetzt in der Nextcloud eine Datei mit der 8a teilt bekommen diese Datei alle Schüler der 8a und alle Lehrer, die in der 8a unterrichten.
Wenn es jetzt eine Gruppe s8a geben würde, die nur die Schüler der 8a enthält, würde man in diesem Fall die Datei mit den Mitgliedern der Gruppe s8a teilen. So würden nur die Schüler der Klasse 8a die Datei erhalten.

s8a müsste alle User, bei denen das Attribut sophomorixAdminClass=8a ist enthalten.

Zugegeben in Moodle erledigt das das Plugin local_profilecohort.

Gruß,
Mathias

Jetzt wo du es sagst: Das sollte es eigentlich schon länger geben, wir hatten schon oft darüber gesprochen und auch skiziiert wie wir das umsetzen.

2 „Gefällt mir“

Toll!!!
Gruß,
Mathias

Hallo,
falls es das inzwischen nicht doch schon gibt: Ich vermisse eine Datei wie die ehemalige „user.log“, die einfach und schnell darüber Aufschluss geben kann, wer wann an welchem Gerät eingeloggt war.
Viele Grüße
Wilfried

3 „Gefällt mir“

Halo Thomas,

Nein, allgemein: mit einem Schlüssel gibt es dann aus einer bestimmter IP die Möglichkeit Befehle am Server zu schicken. FastAPI ist nach meiner Meinung geeigneter Tool als Flask dafür.

Gruß

Arnaud

Hallo Wilfried,

Gute Idee finde ich. Kannst du bitte es in die Umfrage kopieren ?

Danke unf Gruß

Arnaud

Hallo Arnaud,

okay - das wäre, was mir auch vorschwebte. Ich bin auf die API gespannt. Hatte vor Jahren mal etwas zusammengeschrieben, aber das war damals noch für die 6.2.

Und klar - Flask nutze ich halt oft und damit habe ich schon mal APIs geschrieben, aber die Lösung ist mir egal (und da gibt es bestimmt mehrere bessere Lösungen).

Viele Grüße
Thomas

Hallo Wilfried!

Ich finde die Anmeldeinformation in der samba-log-Datei.
Dazu habe ich folgendes gemacht:

Ist zwar nicht so übersichtlich, wie die „user.log“, weiß dafür aber viel mehr. :wink:

Gruß - Rainer

3 „Gefällt mir“

Hallo Rainer,

danke für die Hinweise. Ich werde es ausprobieren, sobald ich dazukomme.

Viele Grüße

Wilfried

Hallo Arnaud,

kannst du das mal bitte vergleichen mit „REST-Schnittstelle zu Linuxmuster-Befehlen“ in der Umfrage Entwicklungsideen
Ich würde sagen, das geht in die gleiche Richtung daher: Ist das identisch?

Beste Grüße

Thorsten

Hallo Thorsten,

REST-Schnittstelle ist das Ziel, und FastApi/Flask sind zwei verschiedene Bibliotheke um dieses Ziel zu erreichen. Von daher ist ein Update der Umfrage nicht nötig :wink:

Gruß

Arnaud

1 „Gefällt mir“

Hallo zusammen,

wo geht die Reise hin? In meinen Augen hat die LMN dann einen Wert und Mehrwert in der zunehmend Apple-zentrierten Unterrichtswelt, wenn sie einen Datenhub darstellt (oder einen Datenhub unterstützt), von dem aus Vielfalt möglich ist. Zur Vielfalt gehören dann sicher wichtige Player wie Moodle und Nextcloud, aber auch seltenere Applikationen wie Matrix oder eigene Konstruktionen. Ob da dann auch proprietäre System versorgt werden müssen wie WebUntis, Untis, iServ etc. kann man ja separat entscheiden.

Mit Datenhub meine ich nichts anderes als a.) „mehr Rollen“ b.) „Daten füttern aus Untis“ oder eben eine REST-API für alternative Systeme. Ich bin ja der vorsichtigen Meinung, dass Aleksis viel von dem bietet, was ich suche und es ist open source und willig sich zu erweitern. Das kann man ja bei den Entwicklungsideen bedenken.

Beispiel für Rollen bzw. „Projekte“, die man typischerweise für Moodle braucht:

  • ein Lehrerkollegium
  • einen Klassenverband „8a“,
    • den/die Fachlehrer dieses Klassenverbands,
    • den/die Klassenlehrer dieses Klassenverbands
    • die Eltern dieses Klassenverbands
  • eine Lerngruppe „8abef“ für Klappklassen / ohne Klassenverband / Kursstufe
    • die Fachlehrer für diese Lerngruppe
  • die Liste aller Fächer / AGs
  • die Liste aller Lehrer und ihr Kürzel
  • eine Lehrerfachschaft
    • ein Fachschaftsleiter

Probleme, die ich immer wieder sehe, sind:

  • Automatisierung ja oder nein? ein CVS aus Untis oder ASV zu erstellen ist nur Semi- Automatisierung mit Vor- und Nachteilen.
  • Inkosistenzen und Arbeitszeitverschwendung und Kommunikationsprobleme durch mehrfache Datenhaltung
  • Egoistischer Umgang mit Daten: Sowohl Untis als auch ASV (BW) gehen davon aus, dass sie die Weisheit gefressen haben und der Dreh- und Angelpunkt sein müssen. Sie sind aber proprietär (im Fall von ASV ein Fall für public money - public code)
  • Umgang mit sensitiven Daten: in BW gibt es getrennte Netze, sensible (Lehrer)daten liegen im Verwaltungsnetz in egoistischen Datenhalden. Es wird schwierig, einen Datenhub in der LMN im pädagogischen Netz zu etablieren.
    Beispiel bei uns: Untis → WebUntis, aber auch ASV --csv–> LMN ← WebUntis (LDAP). Will man nicht penibel bei jeder Änderung CSV-Daten durch die Gegend tragen, kriegt man immer wieder Inkonsistenzen.

Will mit meinem Post sagen: Wenn neue Features entwickelt werden, lasst uns (oder ihr Entwickler euch) gut überlegen, was die LMN leisten kann und was sie nicht leisten können will. Abwägen, ob die Integration von Aleksis Potenzial hat.

VG, Tobias

3 „Gefällt mir“

Ich Idiot hab das aus dem Gedächtnis hier aufgeschrieben, dabei hatte ich mein Entwicklungsprojekt ja halbwegs dokumentiert:

Danke an @thoschi und @eneoli. Nach hunderten Ein-Mannstunden in dieses Projekt wäre ich allerdings froh es nicht zur Produktreife führen zu müssen, denn es ändern sich so viele Dinge:

  • Moodle wird aus Belwue geschmissen und vermutlich gibt es keine API-Schnittstelle mit den benötigten Berechtigungen mehr, d.h. selfhosting or out.
  • Ihr (LML) entwickelt hier die geilen Rollen und Zuordnungen, so dass viel von obigem überflüssig wird
  • Jemand tut sich mit Aleksis zusammen und das übernimmt den Part meiner Skripte

Wobei doch das Wahrscheinlichste ist:

  • Das Land BW stellt sein Identitätsmanager vor, der Open Source ist, man kann lokal dezentral einen Replikant ins Netz stellen oder als nicht BW alleinig betreiben. Das Identitätsmanagement enthält alle diese Rollen + Zuordnungen als Template und man kann mit ASV syncronisieren oder nicht-BWler können die Grunddaten mit CSV-DAteien und die sich ändernden Daten per API-Schnittstelle füttern. Ja und für Moodle wird ein enrol-Plugin programmiert, dass sich dorthin verbindet. Und das alles wurde von Digitalisierungspakt-Millionen bezahlt und es war sogar Geld übrig, das eine Marketingfirma bezahlt um diese Investition im Backend der Allgemeinheit richtig zu verkaufen: „Kein Bock CSV-Dateien in Moodle zu importieren? Dann werde Lehrer in BW!“

He, Tobias, wach auf! Schule!