• Hallo liebe Userinnen und User,

    nach bereits längeren Planungen und Vorbereitungen sind wir nun von vBulletin auf Xenforo umgestiegen. Die Umstellung musste leider aufgrund der Serverprobleme der letzten Tage notgedrungen vorverlegt werden. Das neue Forum ist soweit voll funktionsfähig, allerdings sind noch nicht alle der gewohnten Funktionen vorhanden. Nach Möglichkeit werden wir sie in den nächsten Wochen nachrüsten. Dafür sollte es nun einige der Probleme lösen, die wir in den letzten Tagen, Wochen und Monaten hatten. Auch der Server ist nun potenter als bei unserem alten Hoster, wodurch wir nun langfristig den Tank mit Bytes vollgetankt haben.

    Anfangs mag die neue Boardsoftware etwas ungewohnt sein, aber man findet sich recht schnell ein. Wir wissen, dass ihr alle Gewohnheitstiere seid, aber gebt dem neuen Board eine Chance.
    Sollte etwas der neuen oder auch gewohnten Funktionen unklar sein, könnt ihr den "Wo issn da der Button zu"-Thread im Feedback nutzen. Bugs meldet ihr bitte im Bugtracker, es wird sicher welche geben die uns noch nicht aufgefallen sind. Ich werde das dann versuchen, halbwegs im Startbeitrag übersichtlich zu halten, was an Arbeit noch aussteht.

    Neu ist, dass die Boardsoftware deutlich besser für Mobiltelefone und diverse Endgeräte geeignet ist und nun auch im mobilen Style alle Funktionen verfügbar sind. Am Desktop findet ihr oben rechts sowohl den Umschalter zwischen hellem und dunklem Style. Am Handy ist der Hell-/Dunkelschalter am Ende der Seite. Damit sollte zukünftig jeder sein Board so konfigurieren können, wie es ihm am liebsten ist.


    Die restlichen Funktionen sollten eigentlich soweit wie gewohnt funktionieren. Einfach mal ein wenig damit spielen oder bei Unklarheiten im Thread nachfragen. Viel Spaß im ngb 2.0.

In Terminal, X Session starten, Anwendungen öffnen

thom53281

SYS64738
Teammitglied

Registriert
14 Juli 2013
Beiträge
6.909
Oder wäre es alternativ noch möglich mit Strg + Alt + F1 in TTY1 zu wechseln, sich einzuloggen und dann die Arbeit zu verrichten? Theoretisch läuft die X Session ja auf Strg + Alt + F7?
Du solltest Dich dann auf jeden Fall noch in einem Terminal anmelden können. Auf eventuelle Tastenkürzel reagiert in erster Linie tatsächlich nur der Festermanager. Je nach Anwendung, könnte es aber sein, dass diese z. B. auf Strg-Q oder andere Anwendungsinterne Kürzel reagiert. Evtl. nicht die schlechteste Idee, die Anwendungen beispielsweise über ein Skript aufzurufen, welches die entsprechenden Anwendungen mit [KW]while true[/KW] in einer Dauerschleife immer neu startet*.


* Disclaimer: Geht sicher auch eleganter, sollte aber den Zweck erfüllen.
 

Metal_Warrior

Defender of Freedom
Teammitglied

Registriert
10 Aug. 2013
Beiträge
6.830
Ort
/dev/mapper/home
@theSplit: Ich hab dir hier mal ne Möglichkeit kopiert, wie sie auf einem meiner Kiosk-Raspis läuft:
.xsession schrieb:
[src=bash]xset s off
xset -dpms
matchbox-window-manager &
while true
do
xte 'sleep 5' 'key F11' &
epiphany-browser -a --profile ~/.config https://ngb.to
done[/src]
 

theSplit

1998
Veteran Barkeeper

Registriert
3 Aug. 2014
Beiträge
28.561
  • Thread Starter Thread Starter
  • #23
Du willst eigentlich sowas hier, wobei ich das selbst nie getestet hab.

Nein, eigentlich eher nicht, dass soll und muß schon lokal laufen. Screenbroadcasting kommt so nicht in Frage, zu mal auch nicht die Kapazitäten dafür vorhanden sind.
Ist mit Sicherheit keine ganz schlechte Idee - aber ich kann nicht irgendwelche "Remote"software mit solchen Funktionalitäten auf der Kiste installieren, nicht hauseigene IT-(Sicherheits)-Regeln ;)

@thom53281: Ist auf jeden Fall auch ein guter Hinweis, aber in der Software sind keine Keyboard Shortcuts eingebaut, 100%. Ein "absichtliches" Beenden wäre daher theoretisch ausgeschlossen. Es kann natürlich trotzdem sein das die Anwendung von sich aus beendet, aber da ich schon einen Langzeittest gemacht habe auf mehreren Windows/Linux Systemen, ist nicht davon auszugehen das die Anwendung einfach so abschmiert.

Ein "while true"-Endlosschleife würde dies natürlich dann auch verhindern. Vermutlich würde es nicht einmal weh tun wenn das eingebaut wäre und es wäre eine Art von Restart, sollte die Anwendung sich ohne weiteres beenden.

@Metal_Warrior: Vielen Dank für das Bash-Skript. Ich glaube mit dem Xset wird einmal ein Screensaver deaktiviert und Power Management, nehme ich mal an.
Der Sleep für fünf Sekunden und dann die Tastenkombo F11 für Fullscreen, ist auch klar, sowie das Starten des Browsers.

Die Reihenfolge kommt mir nur etwas komisch vor, aber vermutlich muß das so gemacht werden?

Was auch an Thoms Hinweis anknüpft - wenn ich zwei Anwendungen habe, die beide nicht normal beenden bzw. "normal ab/durchlaufen" - wie stelle ich sicher das die Anwendungen parallel laufen können und diese nicht doppelt und dreifach gestartet werden? Das wäre in einer Schleife vermutlich ein Problem!

Da müsste ich schon irgendwie schauen ob eine Anwendung mit dem Namen XYZ ausgeführt wird und dann der Logik nach den Befehl "übergehen" der die Anwendung startet.

Aber das wäre mir per se zu hoch sowas in Bash zu schreiben... Bash Skripten kann ich nicht. :)

Ich glaube aber langsam wirds kompliziert was die Methoden angeht das Bedürfnis zu erfüllen... :D
 

Metal_Warrior

Defender of Freedom
Teammitglied

Registriert
10 Aug. 2013
Beiträge
6.830
Ort
/dev/mapper/home
Die Reihenfolge kommt mir nur etwas komisch vor, aber vermutlich muß das so gemacht werden?
Da bin ich mir grad selber nicht sicher. Tatsächlich bewirkt das einzelne &, dass der nachfolgende Befehl direkt im Anschluss (also nicht nach Beendigung, sondern nach Ausführung) des vorherigen Befehls ausgeführt wird. Der erste Befehl wird dabei in den Hintergrund verschoben. Der Befehl, der nach 5 Sekunden ein F11 Key Event produziert, beendet sich also, während der Browser läuft. Da der letzte Befehl (der Browser) aber noch läuft, startet die Schleife nicht erneut, da sie auf eine Beendigung des ihr vorgeschalteten Befehls wartet (also auf das Beenden des Browsers). Dabei bin ich mir grad nicht sicher, ob er wartet, bis ALLE Befehle in der Schleife (also sowohl Hintergrund- als auch Vordergrundprozesse) einen Exit-Code produziert haben, oder ob nur der letzte in der Reihe ausschlaggebend ist. Probiers aus, wenn der Browser dann nach 5 Sekunden gekillt wird und neu geöffnet, ist nur der letzte Befehl relevant für die While-Schleife.

Was auch an Thoms Hinweis anknüpft - wenn ich zwei Anwendungen habe, die beide nicht normal beenden bzw. "normal ab/durchlaufen" - wie stelle ich sicher das die Anwendungen parallel laufen können und diese nicht doppelt und dreifach gestartet werden? Das wäre in einer Schleife vermutlich ein Problem!
In einer Schleife ja - in zweien aber nicht. Bau zwei Scripte, eines für die eine Anwendung, eines für die andere. Beide wie oben mit der While-Schleife, aber ohne die Screensaver-/Energiesettings). In der .xsession startest du dann einfach beide Scripte statt der While-Schleife, etwa so:

[src=bash]matchbox-window-manager & script1.sh & script2.sh[/src]

Eventuell musst du einem Script ein sleep vornan hängen, wenn du eine bestimmte X-Anwendung im Vordergrund haben willst, die Hintergrundanwendung aber länger zum Starten braucht, aber das sollte kein Problem sein.

Und nein, eigentlich ist es kinderleicht. Die xsession-Datei definiert, was beim Start des Xservers ausgeführt wird. Autologin machst du über eine winzige Änderung in der getty@tty1.target.wants-Datei (Vorsicht, die ist standardmäßig ein Symlink auf /lib und wird daher bei Updates überschrieben, du musst den Link also vorher durch eine Kopie des Ziels ersetzen), und schon hast du dein Kiosk-System.
 

theSplit

1998
Veteran Barkeeper

Registriert
3 Aug. 2014
Beiträge
28.561
  • Thread Starter Thread Starter
  • #25
@Metal_Warrior:

Geht das auch ohne Änderung an der tty1.target.wants-Datei? Also auch ohne Autologin?

Ich würde ungern all zu tief in das System eingreifen als unbedingt nötig und schon gar nicht das sich die Box nicht updaten kann bzw. nach einem Update nicht mehr richtig funktioniert. Wenn man den Login also weglassen kann und nur automatisch X mit den Anwendungen starten könnte.... wäre das schon mehr als ausreichend. Eine seperate Anmeldung an TTY1 wäre vermutlich ja immer noch erforderlich um etwas an dem System zu machen.

Und ich bin ja mal gespannt ob ich die Passwörter für die Kiste bekomme, auch noch so ein Knackpunkt.... wird ne tolle "Demonstration", ich hoffe ich kann irgendwas mit einer VM vorbereiten das man nur ein paar Dateien kopiert/überschreibt.... wird lustig :o
 

Metal_Warrior

Defender of Freedom
Teammitglied

Registriert
10 Aug. 2013
Beiträge
6.830
Ort
/dev/mapper/home
@theSplit: Klar, wenn du den Autologin nicht brauchst, lass ihn weg. Er ist - wie fast alles in Linux - optional. Aber die Kiste selber kannst du trotz Autologin problemlos updaten, du brauchst dafür nur einen zweiten User, der eben nicht automatisiert irgendwelche Anwendungen startet. SSH drauf, sudo apt-get update && sudo apt-get dselect-upgrade, fertig. Das Überschreiben der Datei beim Update war nur ein Hinweis darauf, dass Debian nicht annimmt, dass du Konfigurationsdateien in /lib ablegst. Was echt (also nicht als Symlink) in /etc liegt, wird nicht überschrieben.
 

theSplit

1998
Veteran Barkeeper

Registriert
3 Aug. 2014
Beiträge
28.561
  • Thread Starter Thread Starter
  • #27
Ich muss das Thema wieder hervorholen :)

Ich habe heute mal versucht das mit der XSession über "xinit sessionName" zu machen, das ging nur mit "sudo xinit SessionName", dabei schlagen meine Kommandos fehl - weil Dateiein nicht gefunden worden sind... Arbeitsdaten die im Programmverzeichnissen liegen.

Dann dann ganze mit "matchbox-window-manager & program1 & program2" - der startet out-of-box so gar nicht und will irgend ein "-display <string>" haben oder konfiguriert werden.

Wie schaffe ich es eine X-Sitzung (ohne Sudo) zu starten mit einem Display UND meine beiden Programme eines Konsole eines im Fenster zu starten UND die Arbeitspfade der Anwendung zu erhalten, da ich von dort aus Daten lesen und schreiben möchte?

Wenn ihr mir irgendwie helfen könnt, wäre das wirklich super, das ArchLinux Wiki wie auch das Debian Wiki haben mir nicht wirklich geholfen....

Und ".xsession" hat auch nicht viel gebracht, hab auch schon Tiny WM mit einem Tutorial ausprobiert... das einen ".desktop" in etc/share/xsessions/STARTDATEI.desktop" nutzt.
Aber das startet TinyWM und schlägt fehl, weil Daten nicht gefunden werden.

Die Programme führe ich mit absolutem Verzeichnissnamen aus, da diese nicht in "usr/bin" liegen.

Wenn ich ein "sudo startx" - mache, und in .xinitrc "einen Window Manager & Program1 exec Programm2" habe ich nur einen schwarzen Bildschirm und sehe gar nichts.
 

Metal_Warrior

Defender of Freedom
Teammitglied

Registriert
10 Aug. 2013
Beiträge
6.830
Ort
/dev/mapper/home
@theSplit: startx ohne Sudo sollte eigentlich laufen...

Du brauchst halt ein Programm, das geladen wird - der reine Xserver beendet sich sofort wieder, wenns nix zum Anzeigen gibt. Ach, und wenn du das über SSH anfängst, musst du vorher X11-Forwarding aktiv haben.
 

theSplit

1998
Veteran Barkeeper

Registriert
3 Aug. 2014
Beiträge
28.561
  • Thread Starter Thread Starter
  • #29
Also folgende Erfahrungen: .xinitrc, .xsession alles mist!

Wenn man lightdm benutzt, für jemanden der etwas ähnliches machen will:
a) "/usr/share/xsessions/session.desktop" anlegen
b) "[Desktop Entry]" erstellen, der auf ein "exec="/home/pi/myRunScript.sh" verweist (absoluter Pfad!)
c) Shell Skript erstellen:

!usr/bin/bash
cd "Arbeitspfad der Software"
/home/user/Software1 &
/home/user/Sofware2 &
usw...
exec window-manager

Jetzt: "chmod +x myRunscript.sh"


Ich habe es so gemacht, einfach den Eintrag des Window Managers "erweitert" bzw. "editiert" (anderes auskommentiert)
Weiß nicht genau ob man dann einfach ".xsession" was reinschreiben kann, damit genau der .desktop gestartet wird.... müsste ich googlen.

Dann über "raspi-config" das Booten des "pi" Users auf "Boot options" > "Desktop/Autologin".
Alternativ kann man auch über "sudo update-alternatives --config x-window-manager " die Sitzung anpassen. Sollte gehen, dann braucht man glaube ich nicht in der "window-manager.desktop" herumfurwerkeln, bin ich mir aber nicht 100% sicher, das hatte ich nicht mehr getestet.


Fertig.

Hat mich 2,5 Tage gekostet das raus zu finden.

Alles andere hat nicht gefruchtet, auch keine "/home/pi/.config/autostart/myapp.desktop" > [Desktop Entry] - hat NICHT gefruchtet! Weder unter Xfce4 oder Blackbox.
 
Zuletzt bearbeitet:
Oben