Linux ohne Windowmanager / Direkt in GUI booten

  • Hallo!

    Meine Frage erscheint mir so Linux-allgemein, dass ich schon fast nicht mehr sicher war, ob das für dieses Forum überhaupt reicht. Da ich mich aber ohnehin hier registrieren wollte, landet Sie hier - und ich bin mir sicher, dass einige eine Antwort darauf wissen.

    Ich habe mittlerweile etwa zweijährige Erfahrung mit Arch Linux im Serverbereich. Also vollkommen headless, so wie Arch es ohnehin von Haus aus ist. Daran habe ich mich nicht nur gewöhnt, sondern es auch sehr zu schätzen gelernt. Der Administrationsüberblick und die Arbeitseffizienz ist mir persönlich(!) dort einfach viel mehr gegeben, als wenn ich ständig mit irgendwelchen Grafik Gimmicks befeuert werde - zumal alle gängigen Windowmanager (Selbst LXDE) immer einen Haufen immer-verfügbar Apps am Start haben, die ich niemals nutze.

    So viel vorab, meine eigentliche Frage: Auf dem Raspberry habe ich mich nun für Raspbian entschieden, da mir Debian mehr zusagt, durch seine (a) strikte Stabilitätsrichtlinie und (b) immense Community für Raspbian.

    Für den gedachten Einsatzzweck meines Raspberry stehe ich nun zum ersten mal vor der Frage: Wie machen das die ganzen Embedded Systems (Interaktive Steuerungen, Infomonitore..), dass Sie sofort nach dem Booten und dann ausschließlich eine Anzeige (ein Fenster) vorweisen, ohne dass man je eine Desktop-GUI/Window Manager zu sehen bekommt? Mir geht es hier vor allem darum, dass ich gerne auf LXDE in Raspbian verzichten würde (es runterschmeißen). Wohlgemerkt nur LXDE, nicht den X-Server, der ja durchaus seine Daseinsberechtigung hat. Nun stellt sich mir aber die Frage, ob es in dieser Konfiguration möglich wäre, beim Booten direkt eine selbst erstellte X-Anwendung zu starten (bspw. Infofenster, also booten -> "Hallo, heute ist es sonnig und morgen gibt es Kartoffelsalat").

    Mir ist bewusst, dass diese Frage wohl tierisch banal ist, aber ich hatte nie mit Linux im Verbund mit Grafik zu tun und offenbar ist die Frage selbst Google zu einfach. Ist diese Entkopplung von LXDE und X.org also möglich, um anschließend ein kleines X-Window-Tool zu entwerfen, dass sich per Shell-Kommando aufrufen lässt? Ich möchte also quasi aus administrativer Sicht ein headless Raspbian betreiben (ssh), dass aber eben an Ort und Stelle auf kleinem Monitor die Anzeige eines GUI-Programms ausgibt.


    Danke im voraus und Grüße! :)

  • Einfach über die Raspi-config den PI in die Console booten lassen.
    Dort dann über den X-Server deine Gui starten ?

    Offizieller Schmier und Schmutzfink des Forum.
    Warum einfach wenn's auch schwer geht ?

    Kein Support per PN !
    Fragen bitte hier im Forum stellen. So hat jeder etwas davon.

  • Zitat von ralph.stark

    aber warum nutzt du nicht arch linux auf dem pi

    Hat er doch oben beschrieben, Debian ist eine stabilere Basis und die Community ist größer.

    Zitat von RenardPale

    Für den gedachten Einsatzzweck meines Raspberry stehe ich nun zum ersten mal vor der Frage: Wie machen das die ganzen Embedded Systems (Interaktive Steuerungen, Infomonitore..), dass Sie sofort nach dem Booten und dann ausschließlich eine Anzeige (ein Fenster) vorweisen, ohne dass man je eine Desktop-GUI/Window Manager zu sehen bekommt? Mir geht es hier vor allem darum, dass ich gerne auf LXDE in Raspbian verzichten würde (es runterschmeißen). Wohlgemerkt nur LXDE, nicht den X-Server, der ja durchaus seine Daseinsberechtigung hat. Nun stellt sich mir aber die Frage, ob es in dieser Konfiguration möglich wäre, beim Booten direkt eine selbst erstellte X-Anwendung zu starten (bspw. Infofenster, also booten -> "Hallo, heute ist es sonnig und morgen gibt es Kartoffelsalat").

    Der Punkt ist, dass du immer einen Window-Manager brauchst um grafische Anwendungen auszuführen. Was du NICHT brauchst ist eine komplette Desktopumgebung wie KDE, GNOME oder LXDE. Dein Ziel kannst du leicht mit einem schlanken WM wie openbox, fluxbox, IceWM oder Fvwm erreichen. Die haben meist noch Grunddinge wie eine Taskleiste implementiert, aber auch die kann man runterschmeißen. Einen Mechanismus für den Autostart von Programmen haben auch alle.

    Mein persönlicher Favorit ist fluxbox, aber Fvwm ist auch super.


  • Wie machen das die ganzen Embedded Systems (Interaktive Steuerungen, Infomonitore..), dass Sie sofort nach dem Booten und dann ausschließlich eine Anzeige (ein Fenster) vorweisen, ohne dass man je eine Desktop-GUI/Window Manager zu sehen bekommt?

    Das kommt wie ich finde sehr stark darauf an, welches Embedded Gerät du damit eigentlich meinst? ;)

    Über die Konsole kann man auch sowas wie Grafik anzeigen lassen, also quasi eine Steuerung die über ASCII-Grafik dargestellt wird. Zum Beispiel "dialog" könnte so eine Menügesteuerte Umgebung sein die ohne X11 auskommt..

    Oder es wird auch sehr viel Java genutzt oder weitere Stichwörter wären fbdev bzw Framebuffer die auch ohne einen X-Server auskommen - das ist das Interface über das beim booten auch die Himbeere oben links auf den Bildschirm kommt... Zum Beispiel XVFB wäre eine X-Server-Implementierung, die statt einen Grafiktreiber zu laden eben über einen virtuellen Framebuffer läuft, den es emuliert und daher keine eigene Grafikhardware auf der Maschine voraussetzt

    Aber nicht zuletzt kann auch einiges durch HTML/PHP/Javascript genutzt werden

  • Es ist nicht notwendig einen Windowsmanager zu verwenden!
    Teste es an meinem Beispiel.

    Es wird dann aber nur das aufgerufene Programm ausgeführt. Sachen wie Buttons zum Schließen des Fensters fehlen aber.
    Ist aber auch klar, da es keinen Fenstermanager gibt.

    Keep it simple [,&] stupid

    Einmal editiert, zuletzt von kungel (2. Oktober 2013 um 11:04)

  • Moin!

    Wow, so viele Antworten.

    kungel Danke, das werde ich mir morgen gleich mal anschauen. Bin gerade auf Geschäftsreise und habe mein pi leider nicht zum Spielen mitgenommen :(

    @Rest Ja, was die GUI anbelangt, hatte ich letztlich den Plan, einfach die X Athena lib bzw. allgemein das X Intrinsics Toolkit zu nutzen um diese zu erstellen. Aus grafischer Sicht reicht das völlig aus - aus technischer baut es nur auf X selbst auf und steht in keinen anderen Abhängigkeiten. Dabei ist es schlank, effizient und extrem einfach zu programmieren.

    Damit stünde aber eben noch die Frage im Raum, ob ich mit diesem Plan LXDE (bzw. allgemein eben DEN Window Manager) komplett verbannen kann. Eigentlich würde ich mir dies selber mit "ja" beantworten, da ich ja schließlich jahrelang mit headless Arch gearbeitet habe, ohne (für meinen Bereich) jemals die Notwendigkeit eines WM getroffen zu haben.

    Ich frage aber extra, da mich eben solche Aussagen:

    Zitat


    [font="Tahoma, Verdana, Arial, sans-serif"]Der Punkt ist, dass du immer einen Window-Manager brauchst um grafische Anwendungen auszuführen.[/font]

    dabei verunsichern.

    Ich habe es jetzt nämlich so verstanden. Der X-Server brauchte KEINEN Window Manager. Es lassen sich dadurch betriebene grafische Fenster ohne einen solchen darstellen (Wenn Sie denn eben alleinstehend sind & ausgegeben werden sollen, bspw. auf einem Slave Monitor). Dementsprechend ist es absolut machbar, den LXDE und seine Komponenten zu entfernen oder zumindest zu deaktivieren und über die Shell nur den X-Server zu nutzen um ein grafisches Programm auf einem Display auszugeben. (das ist meine Meinung, die kungel mir glaube ich bestätigt)

    Wenn dem so ist, ist alles gut. Wenn nicht, bitte ich um Belehrung. So wirklich sicher bin ich mir nach den Antworten nämlich noch nicht, eher noch mehr verunsichert:D Vielleicht hilft mir ja aber auch schon kungels Tipp weiter, wenn ich Ihn morgen ausprobiere. Oder ich hab so viel Zeit und komme sogar dazu, es einfach mal auszuprobieren.

  • Wenn du tatsächlich nur ein fixes Programm ausführen willst hat kungel natürlich Recht, da habe ich dich falsch verstanden.
    Ist dann etwas mehr Konfigurationsarbeit in der x11.conf, weil du die Aufgabe des WM übernehmen musst und angeben wo und in welcher Größe das Fenster geöffnet werden soll, aber das solltest du ja schaffen.

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!