


###########################################################
Nächstes Entwicklertreffen:

------------------------------------------------------------
geöffnete Dateien können nicht eingesammelt werden
--> opslock --> sernet
falsche id auf linux-clients
--> mount optionen
smbstatus:
--> aktuelle ausgabe,
  mehrere user pro Rechner möglich
smbstatus --shares zeigt, welche IP, welches shares gemountet hat
NUR wenn benutzerzeile UND --sharezeile da, dann Echter Nutzer im Raum.
Wenn nur benutzerzeile, dann zu WARNING dazu
------------------------------------------------------------
sophomorix-query --smbstatus
- Dauer 6s am BSZ
- Mithilfe
- computer ohne Anmeldung auch wichtig?
--> mit mehrerern usern auf ein
------------------------------------------------------------
Info win-1252: Fehler bei latex ausgaben:
sophomorix-print
Bitte auf allen Rechnern, die ihr habt nachschauen
------------------------------------------------------------

teamviewer erst mit Maurice zusammen
--> opslock auf extra fileserver abschalten, vielleicht geht das?

------------------------------------------------------------
tickets abarbeiten
"urgent" zuerst
sophomorix-check error output
------------------------------------------------------------
command log:

2020-02-18 15:57:46::start::  /usr/sbin/sophomorix-transfer -jj --scopy --from-user bruce --to-user frayka,imbroghe,ilkesju,genglefe,kruegeri --from-path transfer/LBOOT.EPB --to-path transfer/::28765::

2020-02-18 16:00:22::start::  /usr/sbin/sophomorix-session --session 2020-02-03_15-18-41 -j --participants genglefe,imbroghe,kruegeri,frayka,ilkesju::29229::

2020-02-18 16:00:24::end  ::  /usr/sbin/sophomorix-session --session 2020-02-03_15-18-41 -j --participants genglefe,imbroghe,kruegeri,frayka,ilkesju::29229::

2020-02-18 16:00:24::start::  /usr/sbin/sophomorix-exam-mode --unset --subdir transfer/collected/20200218_16-00-20-10a-GruppeB/exam -j --participants genglefe,imbroghe,kruegeri,frayka,ilkesju::29267::

2020-02-18 16:00:26::start::  /usr/sbin/sophomorix-transfer --collect-copy-exam genglefe-exam --subdir transfer/collected/20200218_16-00-20-10a-GruppeB/exam -j::29279::

2020-02-18 16:00:27::end  ::  /usr/sbin/sophomorix-transfer --collect-copy-exam genglefe-exam --subdir transfer/collected/20200218_16-00-20-10a-GruppeB/exam -j::29279::

2020-02-18 16:00:29::start::  /usr/sbin/sophomorix-transfer --collect-copy-exam imbroghe-exam --subdir transfer/collected/20200218_16-00-20-10a-GruppeB/exam -j::29314::

2020-02-18 16:00:30::end  ::  /usr/sbin/sophomorix-transfer --collect-copy-exam imbroghe-exam --subdir transfer/collected/20200218_16-00-20-10a-GruppeB/exam -j::29314::

2020-02-18 16:00:32::start::  /usr/sbin/sophomorix-transfer --collect-copy-exam kruegeri-exam --subdir transfer/collected/20200218_16-00-20-10a-GruppeB/exam -j::29349::

2020-02-18 16:00:33::end  ::  /usr/sbin/sophomorix-transfer --collect-copy-exam kruegeri-exam --subdir transfer/collected/20200218_16-00-20-10a-GruppeB/exam -j::29349::

2020-02-18 16:00:35::start::  /usr/sbin/sophomorix-transfer --collect-copy-exam frayka-exam --subdir transfer/collected/20200218_16-00-20-10a-GruppeB/exam -j::29384::

2020-02-18 16:00:36::end  ::  /usr/sbin/sophomorix-transfer --collect-copy-exam frayka-exam --subdir transfer/collected/20200218_16-00-20-10a-GruppeB/exam -j::29384::

2020-02-18 16:00:38::start::  /usr/sbin/sophomorix-transfer --collect-copy-exam ilkesju-exam --subdir transfer/collected/20200218_16-00-20-10a-GruppeB/exam -j::29419::

2020-02-18 16:00:39::end  ::  /usr/sbin/sophomorix-transfer --collect-copy-exam ilkesju-exam --subdir transfer/collected/20200218_16-00-20-10a-GruppeB/exam -j::29419::

------------------------------------------------------------





Performancesteigerung sophomorix/webui
3 verschiedene JSON objekte:
  JSON_PRINTOUT = STDERR           # STDERR or STDOUT: json_dump
  JSON_RESULT = STDERR             # STDERR or STDOUT: result_sophomorix_print
  JSON_PROGRESS = STDERR           # STDERR or STDOUT: progress in scripts
--> welches davon?
Zusätzlich? die von arnaud vorgeschlagene Lösung in ein fixes tmp-file?
oder das ganze nur für ein script umsetzen (sophomorix-query)?
Technisch:
sub json-printout, braucht zusatzparameter "filename" (oft aufgerufen)
in obigen




Multischool später



24. März Didacta

-------------------------------
1) Themen durchgehen.
2) issues erstellen und taggen (urgent, later, ...)

------------------------------------------------------------
Umownen von files:

alles was dem user abc gehört hat, soll nun dem neuen user xyz gehören
--> finden dieser Dateien (in einem anzugebenden unterverzeichnis)
--> owner anpassen
--> NTACL anpassen
Lösung:
--> mount (falls nicht)
--> find -name (tut das?)
--> acl anzeigen lassen, evtl. schule/gruppen anpassen, ...?



Nextcloud-Integration:
------------------------------------------------------------
Zum erstellen von Klassentauschverzeichnissen in der Nextcloud erforderlich:

Ziel:
1) Lehrer shared ein Verzeichnis.
   Daten der Schüler in diesem Verzeichnis werden dem Lehrer zugeschrieben (Quota),
   da er beim un-sharen diese Daten 'einkassiert->auf sein Quota'
   Nextcloud achtet darauf, dass er einkassieren kann.
2) Lösung:
   Anlegen dieser Tauschverzeichnisse von einem Leher der in allen Klassen ist,
   und unbegrenzt/großes quota hat.
   --> Schüler s

je schule/global ein user
anlegbar machen, der in dieser Gruppe ist
(User: <bsz>-cloud, global-cloud?, anlegbar, falls gebraucht mit sophomorix-admin anlegbar)
(Gruppe: adminclasses, bsz-adminclasses, global-adminclasses)

dito: bsz-projects, ...?


------------------------------------------------------------
Dateien nach Home-> Einstellungen syncen und patchen?
(nextcloud-client, ...)


------------------------------------------------------------
school share create script (incl. quota)

Stand?
Wenn fertig: quota tests erweitern
Later.

------------------------------------------------------------
Schultage-modul integrieren, wo?
- Ziel: scripte können herausfinden, ob
  - Unterrichtstage sind (schulweit)
  - Unterrichtszeiten (schulweit)
  - Spezialtage: Tag der offenen tür usw.

-->

Bisher nur per root auf dem server zugänglich
Besser: im AD zugänglich
   - client-scripte möglich
   - Schulkonsolenzugriff
   - ...

------------------------------------------------------------
TODO: (soll das upgedated werden bei hardwareklassen (ist bisher leer)???)
sophomorixRoomComputers
sophomorixRoomIPs
sophomorixRoomMACs
(bei rooms ist das vorhanden)

------------------------------------------------------------
global projects:
 gibts noch nicht?
 Tauschverzeichnisse gibts unter global
  was soll das sein?
  dürfen in Schulprojecte nur user derselben schule?
   (von sophomorix gecheckt? von der Schulkonsole verhindert)
  (Lehrer an 2 schulen: In welche schulprojekte sollen die dürfen?)
------------------------------------------------------------

ScriptPath/GPO

sophomorix rollt bei school anlegen ein acl set aus
(doppeltes ausrollen abfangen)
dann wird eine environmentvariable SCHOOLNAME gesetz mit dem Wert aus
sophomorixSchoolname

per win tool anlegen
per samba tool exportieren -> ins Paket
samba-tool importiert dann die GPO


TODO:
--> sophomorix beim anlegen der Schule


sophomorix-samba
sophomorix-school
--> jedesmal die


samba-tool gpo ....
setlink -> wo greift die


Laufwerksbuchstaben
- verlinken mit dfs

Ordner:
1) beim homepfad der user fällt homes raus
2) projekt tausch nach 


- windows client standard set: cortana off
-> client installieren


wo ist sysvol: /var/lib/samba
samba-tool gpo dumpen und wieder anlegen

------------------------------------------------------------

devices.csv

devices.csv: welche doppelungen zulässig?
Notebooks: zulassen, dass hosts mit derselben mac und verschidener IP ???

--> devices.csv
mehrfachzeilen:
1 Zeile -> 1 Netzwerdevice

2x gleiche mac zulassen?
2x gleiche IP zulassen
2x gleiche name
   --> verheiratet mehrere Zeilen

statt spezialerror jSON-Error.
Muss Andy Bescheid wissen? (11 spezialfehler)
Alles auf einmal umsetzen?

############################################################
# Ende Entwicklertreffen 5.10.
############################################################


devices.csv
alle Rechner sind in Gruppen gruppiert, deren typ 'room' ist
wenn alle Rechner in einem raum ... 
  classroom-teachercomputer
  oder classroom-studentcomputer(gibts noch nicht) 
  printer sind egal
 würde der Raum zum Typ 'classroom' werden (statt 'room')
--> Zugang zu epoptes, wie funktioniert der?
wird bei linbo was rausgepatched um Zugang zu vermeiden
--> linbo Zugriff auf AD? Abhängig davon patchen

--> (noch) nicht benötigt


admin users acls:

bisher: pgmadmin
  - "Vorlagengeber" für das Default Profil diente.
  - Programme im Netz installieren: 
    NEU je Schule: 
      /srv/samba/schools/<default-school>/program/
      --> noch ohne ACL
    ALT: hatte schreibzugriff auf das Share pgm (Pgrogramme) auf K: (früher P: genannt)
--> schooladmin



? Als welcher admin macht man das jetzt?
  --> global-admin ist dafür zu mächtig
? Wie anlegen

global: /srv/samba/global/program/
  --> ist der global-admin dafür passend?

Wunsch:jeweils 2 Programmshares:
  1 readonly P: wie früher 
  1 writeable für alle, schlechte Netzsoftware S: wie schreibbar/schlecht 



sophomorix.conf
   MASSIVE_MULTISCHOOL=TRUE/FALSE
      TRUE: viele Schulen, keine absprache untereinander
            schooladministratoren müssen mit dem Schulkürzel beginnen
            user müssen mit dem schulkürzel beginnen
            hardwareklassen müssen mit dem Schulkürzel beginnen
      FALSE: schule mit vhs usw.






default-zustand für managementgruppen konfigurierbar in school.conf? je Rolle?
--wie setzt man das zurück?
  - nachts schulweit?
    (nach angaben je Rolle in school.conf?)
  - der supervisor in einer Session? (Lehrer dem Schüler?)
  - speichert der supervisor eigene defaults?
 


How to avoid rechnername=benutzername problems
--> devices.cvs sollte auf schon vergebene Namen gecheckt werden
    --> das kann sophomorix aber besser als import-devices
Lösung 1: sophomorix-device ruft import devices auf (nachdem alle checks ok)
Lösung 2: sophomorix-device --checkonly
          ---> go (0) or notgo (1, bzw. errorcount)

sophomorix-device --dry-run
   --> 0, wenn syntax-check ok



root-privileges von sophomorix, wenn von schulkonsole aufgerufen


issue #23
Email addresse:
je Rolle konfigurerbar machen

z.B. 
  lehrer@belwue.de
  student@linuxmuster.local

alias-generation, was solls geben

--> ja







############################################################



teachers.csv: Erstpassword-Feld 6 wie bisher ??? (statt unid)
--> oder wie wollen wir getippte erstpassworter vergeben??


------------------------------------------------------------

------------------------------------------------------------
sophomorix-samba --nextcloud-config <schulname>
Gibt auf Konsole das aus, was bei Nextcloud eingetragen werden muss
[BaseDN:]  .....
Gibts da zu viele individuelle Einstellungen
(Wünsche z.B.: 
  * Lehrer dürfen nicht mit ihrem Vornamen von Schülern gefunden werden
  * Bei Lehrer nur loginname anzeigen
)
------------------------------------------------------------



Neue Attribute:
------------------------------------------------------------
OK: AD-Feld: 
Lehrerkürzel als Feld vorsehen, dass editiert werden kann aber nicht überschrieben wird?
Wird auch relevant, wenn loginname nicht dem Kürzel entspricht.
(MMS: vor Lehrerlogin steht Schulprefix um Doppelungen zu vermeiden: 
abc-bz an der Schule abc und cdf-bz an der Schule cdf) 
------------------------------------------------------------




------------------------------------------------------------
Dockerhost:
- OK: Reverse Proxy für port-Doppelbelegung (openschulportfolio und Mail, nextcloud, ..)
      --> weil ein port gebunden wird
      --> gibt fertigen container mit nginex
- ??: Eigene Dockerhub (um Pakete vortesten zu können)
------------------------------------------------------------


------------------------------------------------------------
Migration:

Problem: 
  A) Migration erzeugt devices.csv
  B) Dort gibts aber schon Einträge vom Setup
  --> anhängen! Aber war macht man wenn das script mehrfach aufgerufen wird?
  Lösung 1:
    A) Setup erzeugt doch global.devices.csv
    B) die setup-Zeilen nutzen das Kommentarfeld 15 und schreiben dort SETUP rein
       --> Migration: behält diese SETUP-Zeilen bei, hängt dann die migrierten an
       (Die zeilen die von sophomorix-vampire angefasst wurden, bekommen MIGRATION in Feld 15)

SID-Übernahme? (Wäre evtl. gut, aber zu aufwändig)

Vorschlag: bei der migration werden:
  DONE:
  - Strichpunte so ergänzt, dass 15 Felder definiert sind (mit abschließendem ; --> 15 ;)
    ((bisher 12, leere pxe option ---> 0 (umwandeln) OK!) so letztesmal besprochen)
    --> bei 9 und 15: --- statt ""(nix), für bessere Orientierung mit Editor
    --> oder gleich mit custom dazu?
  ????:
    --> Jede Zeile verwerfen, die nicht 15 ; enthält
        -- Abbruch
        -- Ignorieren
  - verwendete Felder, die nun von sophomorix genutzt werden (bisher nicht), werden ab Feld 16 angehängt:
    feld 9 -> feld 16
  - feld 6: neu office key, alt netmask --> wenn es eine IP enthält mit --- ersetzen (kein abspeichern)

  - 
  - feld 7: neu: windows key --> wenn es eine 1 (bsz) enthält ersetzen mit --- (oder als feld 17 aufheben?)
    nicht ersetzten


    ; soll eintragbar sein, \; testen, ob sophomorix das richtig splittet
    TODO: testen mit tr=~


  - Dringlichkeit der Custom Felder
  - festlegen, wieviele Felder custom dazukommen (wäre besser zu scripten)
       - evtl. festlegen, welche single/Multi sind:
            16-20 SigleValue
------------------------------------------------------------



------------------------------------------------------------
Anforderungs-Ausdruck auf der Webseite
- Was brauche ich?
   Wieviele Schulen?
   Lehrernetz/Schülernetz?
   Mailserver ja /nein?

Konfigurationsausdruck der gesamten Lösung 
- Was wurde eingerichtet?
  Wieviele Schulen?
   --> nämlich: 
   Lehrernetz/Schülernetz?
   --> Rechner im Schülernetz
   --> Rechner im Lehrernetz
   Mailserver ja /nein?
   --> Maildomain ....

(Latex-Formatert für den Schulleiter) 
------------------------------------------------------------
 

ACLS?
-------------------------------


-------------------------------
17.10 Appliance
- wie neue Schule anlegen?
- lvm, filesystem, ....
--> wo nachzulesen wie default-school share erstellt wird?
-> scripten des schulanlegens, wer, wo?
-------------------------------
schultest (nochmal):
A) wenn /srv/samba/schools/<name> da, dann net conf addshare <name> dafür erstellen (macht sophomorix)
B) \\Server/<name> da (remotes share)
M liefert mehrzeiler, der
   1) ist lvm frei
   2) lvm create lvm abc
   3) fstab eintrag default-school
später script von T um lokales anzulegen

???? Wäre nicht besser, dass  
1) das script net conf addshare <name> das share erstellt
ODER
2) Ein share von Hand/Anleitung remote erstellt wird

############################################################
TODO:
Wenn schule in sophomorix.conf exsitiert und kein share da
--> exit und nichts machen
############################################################


Sophomorix testet dann (beim abarbeiten der conf):
- ist für eine Konfigurierte schule (sophomorix.conf) ein share da (net conf list Auswertung)
   -> ja: --> sophomorix rennt los
   -> nein: --> Abbruch, ohne etwas anzufassen
      --> share for configured school <school> does not exist
------------------------------------------------------------

Todo:
password complexity level on off
und wo das drin steht in sophomorix-check -ij im JSON object
????? sollte ich das Umsetzen
--> sophomorix-befehl dazu





-------------------------------
Loginnamenerstellung:
bei mms (Massive-Multischool) gibts Doppelung von loginnamen (z.B. Lehrerkürzel)
Lösungen:
  - schalter bei sophomorix.conf
    TEACHER_LOGIN_PREFIX=yes/no
    --> setzt vor lehrerlogins den prefix der Schule (default-school nicht)
         --> Hauptschule OHNE prefix, zusatzschule mit Prefix: vhs-bz
Default ist: kein prefix?
------------------------------------------------------------
later




devices.csv

------------------------------------------------------------
migration:
auch migration in andere als default-schule ????
  --> Problem: Testaufwand
------------------------------------------------------------
so lassen, 


quota bei migration:
Idee: mailquota übernehmen
      Festplatten quotawerte bisher:
       - quota aller Partitionen aufsummieren -> schulquota
       - zusätzlich kleines Quota für global (je nach Rolle) 

devices.csv wird mofifiziert:
   ; ergänzt auf 12 Stück, nach letztem Feld auch ;
leere pxe option ---> 0 (umwandeln) OK!


Abstimmen:
 - hardwareclass gruppen kommen nach OU=Devices
 - hardwareclasses haben KEIN prefix (schulübergreifende hardwareclasses ermöglichen)
 - rooms,hardwareclasses (Drucker sind nicht dabei, da sie keinen computeraccount haben, OK so???)
   --> nur computer sind in den room-Gruppen (OK so?
   --> keine Möglichkeit im AD rauszufinden in welchem Raum ein Drucker ist (nur in devices.csv)
 - groß/kleinschreibung von computer/rooms
   Was in devices.csv steht klein forcen. Im AD dann wie von den win tools angelegt
- jedes device darf nur in EINER hardwareclass sein, ODER?

--> sollten nach global

------------------------------------------------------------
FIREWALL, Dockerhost, ... sollten eigentlich nach global.dvices.csv ???
------------------------------------------------------------
later


Zur Info:

Drucker, Server(IP only) sind IP-devices, 
   -> nur dnsNode
   -> bekommen also auch keinen computer-Account
   -> sind also auch nicht in einer Gruppe mit dem Typ room oder hardwareclass
   -> Im AD NICHT abfragbar welcher Drucker in welchem Raum steht
   -> Ist das gut so?
   -> Kann man dnsNodes auch zu Gruppen zusammen fassen?
   -> wie schaltet man Internet für IP devices ab (Drucker sollen z.B. nicht mehr ins Internet fürfen), ohne dass man eine Gruppe hat?




sophomorixRole und sophomorixType
Bisher:
  jedes device hat die sophomorixRole computer
  jede computergruppe hat den sophomorixType room

sophomorixRole
Unterscheiden von:
  server (Die von thomas angelegten DNS-Einträge für firewall,server, ....)
   server 
   Firewall, 
   ... Einträge werden in default-school gemacht.
       OK so? Oder besser global-Bereich? (bisher gibts denn glaub nicht)
   ... brauchen die ein Computer-Account?
   ... oder nur IP-device?
 
  classroom-teachercomputer  -> userbasiert
  classroom-studentcomputer
  faculty-teachercomputer (Lehrerzimmerrechner)
  ... ipdevice?
  ... router?
  ... staffcomputer (Hausmeister)

  mit computeraccount:
  nur die Geräte die mit dem AD verbinden müssen
  
  device -i
  mit /ohne computeraccount unterscheiden

Devices.cvs
ComputerAccount yes/no


--> 2 Felder füllen
    1. für Attribut comment (standard AD Feld 15) (besser sophomorixComment) 
    2. für Attribut sophomorixRole (Feld 9)
--> 

1. Die Attribute müssen gelesen werden OK
2. Erzeugen der attribute aus devices.csv OK

3. Anlegen neuer devices mit attribute, statt leer "---"
   (erweiterte Felder vorsehen)
4. Felder lesen und mit dem entsprechenden attribut vergleichen
--> evtl. AD_device_update funktion befeuern 





sophomorixType:
   classroom: Unterricht 
   facultyroom: Lehrerzimmer
   staffroom: hausmeister
   server: server
   printer: Drucker
   ...


Problem: Abhängigkeiten
  Ein classroom-teachercomputer kann NUR im classroom stehen usw.
--> EINE Angabe zum device sollte reichen
    Möglichkeiten:
    1) sophomorixRole angeben -> sophomorixType wird ermittelt
       (m.E. beste möglichkeit)
       --> was macht man mit wiedersprüchen?
           2 verscheidene compuer in derselben Klasse
    2) sophomorixType angeben -> sophomorixRole wird ermittelt
    3) aufsplitten der Datei devices.csv in
       servers.csv
       staff.csv
       classroom.csv
       faculty.csv
       --> jeder Raum darf nur in 1er Datei vorkommen, sonst wiedersprüche
       --> Analog zu students.csv, teachers.csv, ...
       (Aber dort nur wegen der unterschiedlichen Erzeugung der Dateien)
    --> was macht man mit wiedersprüchen?
        --> Raum 'noroom'?


Todo:
   --> Satz von device-sophomorixRole festlegen
   was soll die rolle können:
     --> dns-Eintrag?
     --> Raum-Zuordnung (bei IP device)
     --> Computer-Account
     --> Internetaccess (Drucker mit Internetzugang oder nicht)


--> setup: legt als sophomorixRole 'server' an
--> migration: alle werden 'computer' (devices.csv mofification)
--> später: andere sophomorixRole Einstellbar in Schulkonsole 



------------------------------
Umgang mit PullRequests, Issues, usw. bei der LMN7-Entwicklung
------------------------------


------------------------------
Virusscan;
- wie bisher mit clamav?
------------------------------
--> bleibt bei clamav
--> wenns in die Finale version passt


------------------------------
scripte im Schulkontext aufrufen:
  - wie soll das geschehen?
    Option --school für jedes script?
  Beispiel Belwue.conf passwort
  --> sophomorix-mail --config zeigt passwörter aller Schulen --> json
      (reduktion auf schule mit --school ?)
  --> sophomorix-check: versetungen andere Schulen erkennen
  Lösung ???:
  sophomorix-check liest Daten aller Schulen, merkt sich (RAM) und benutzt das intern, 
  gibt mit --json --school <name>aber nur einen Teil aus ?
------------------------------



------------------------------
Mail:

mailadresse für sophomorix/system/... @wo? (local/lan oder domain.xyz.de)
wie/wohin schickt eine Mail?

mailattribute ('mail' bei user, Gruppen) haben @linuxmuster.lan
--> bleibt das immer so?
--> bei Verwendung z.B. belwue-mail:
    sophomorix liest <xyz>@linuxmuster.lan und modifiziert das mit BASE in belwue.conf
    --> modfizierte Werte werden genutzt um maillisten-member zu schreiben (upload-Datei)
    --> Attribute 'mail' werden NICHT angepasst (momentaner Zustand)
--> F.: sollte upgedated werden, da z.B. von dokuwiki genutzt, bei ldap-Anbindung
    (Aber auf was? wo konfiguriert?)
    --? offitielles mail-attribut updaten
    --? für dovecot eigenes attribut sophomorixMailIntra?
--> F.: weitere attribute Mail aktive oder nicht? Gibts das?


mail: (wichtig als Versendeadresse)
    NIE leer lassen
    Eintrag in school.conf:
         MAIL_DOMAIN=default       (defaultiert zu samba domain)
         MAIL_DOMAIN= (optional in school.conf)
	    --> sophomorix-check -ij MAIL_DOMAIN
	 wenn da, benutzen im Attribute mail

         sophomorix.conf
	    FORCE_MAIL_DOMAIN=TRUE  (einbauen, optional, default TRUE)
         

      MAIL_DOMAIN = default (--> siehe samba domainname @linuxmuster.net)
         siehe /var/lib/linuxmuster/....../setup.ini vom linuxmuster setup


sophomorix-belwue vielleicht in extra Paket (abchecken)

evtl.:
belwue.template.ini:
   [ACCOUNT]-->BASE=SETUP
------------------------------


------------------------------
sophomorix-ui:

Problem bei UI's:

user hat individuelle ui Einstellungen und wird in andere Rolle verschoben 
(Lehrer-> Schüler)
(dito beim verschieben in andere schule)
was soll passieren mit den individuellen einstellungen?
--> Vorschlag: Entfernen aller Einstellungen ??
    OK: so machen
sophomorix-test-1 anpassen

------------------------------


------------------------------
HOOKS for sophomorix-add -update -kill
- Entwicklertreffen: Pfad abstimmen,
- weitere scripte, die einen hook brauchen?
- /etc/linuxmuster/sophomorix/<bsz>/hooks/sophomorix-device.d/ ??? 

Entscheiden:
A) Warten auf Scriptende?
   Rückgabewert ins JSON object zurückloggen.
   JSON PROGRESS OBJECT start/stop für jedes script (script 1/3)
  -> Rückgabewert auslesen, bei 0 OK, sonst 1
B) Im background starten?

############################################################




Offene Fragen:
------------------------------------------------------------
wo sollen Gruppen hin, die 
von sophomorix-group angelegt werden

bisher in OU=Projects (passt gut, projecte am p_ unterscheidbar)

(Custom wurde in Essen erwähnt, aber es sind echte sophomorix Gruppen)
------------------------------------------------------------


------------------------------------------------------------
Farbiger Konsoleprintout?
- durch Trennung in JSON möglich (muss nicht mehr geparsed werden)
- Vorschlag:
  Fehler, Nicht OK: rot
  Schulen: gelb
  ...
------------------------------------------------------------


------------------------------------------------------------
Password creation

PWD_LENGTH=10 aus belwue_conf nutzen oder nicht???
oder die von 

------------------------------------------------------------

------------------------------------------------------------
Account disablen wenn eine gewisse Zeit um ist
(wie heisst das feature?) ansonsten brauchen wir einen cronjob
evtl. ein eigenes time field, bzw. auch einen Status
------------------------------------------------------------

############################################################
Pending
############################################################
-------------------------------
mehrfachlogin möglich? erlauben? kontrolle?
-------------------------------
-> pro:    simple use (default)
-> contra: passwordklau
--> konfigurierbar ?
--> auf default lassen

############################################################
Erledigt:
############################################################
-------------------------------
OK
.ini-Dateien Vereinheitlichen:
Wie wird eine on/off konfiguriert?
TRUE/FALSE   # mein Favorit
on/off       # so gibts samba-tool zurück: samba-tool domain passwordsettings show  (Password complexity: on)
yes/no
1/0
--> True,truE, alles erlaubt , json TRUE/FALSE
OK
------------------------------


-------------------------------
groß/kleinschreibung von usern,gruppen
- unterscheidet AD diese Accounts?
--> Festlegen, dass alls wunschlogins,computernamen, .... lowercase sind?
    Ohne Ausname?
    Achtung: es gibt per default Guest, Administrator
    Vorschlag: sophomorix legt nur lowercase an.
               nicht sophomorix-Objekte werden nach lowercase verwandelt um clashes zu vermeiden
	       Ausnahme: computer, siehe devices.csv
-------------------------------
alles sophomorix-lowercase
alles computer upercase

-> So legt es auch das Windows GUI tool an.



-------------------------------
loginamenvermeidung:
Reicht es die so gefundenen zu vermeiden:
(| (objectClass=user) (objectClass=group) (objectClass=computer) )
-------------------------------
--> OK so
--> TODO: usernamen blacklisten verwenden (googeln --> )



-------------------------------
loginnamenumbenennung ja/nein?
-> incl. homebverschieben
-> nur innerhalb der Schule, neuer loginname checken? (prefix, siehe unten)
-------------------------------
--> later or never
