• In diesem Bereich findet ihr Tutorials und Reviews. Die Forenrechte zur Erstellung neuer Themen sind hier eingeschränkt, da Problemdiskussionen bitte in den übrigen Forenbereichen auf Apfeltalk zu führen sind. Wer ein Tutorial oder Review einstellen möchte, kann im Unterforum "Einreichung neuer Tutorials" ein neues Thema erstellen. Die Moderatoren verschieben den Beitrag dann in den passenden Bereich.
  • Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

X11 ausnutzen - WM und mehr

Tengu

Apfel der Erkenntnis
Registriert
05.02.07
Beiträge
721
Noch nicht fertig... Dieser Text befindet sich in der Bearbeitung. Ich freu mich aber trotzdem über jeden Kommentar dazu. Es werden noch Details folgen und das wird auch noch didaktischer ;). Keine Sorge...

Hi allerseits!

Zur Feier meines 500. Postings habe ich mir überlegt ein kleines Tut zu verfassen, quasi einerseits als Input, weil ich doch ne Menge Fragen stelle und beantwortet bekomme^^, andererseits um auch ein Thema zu beleuchten, welches gut 99% aller Macnutzer nicht wirklich wahrnehmen.

Guck mal!
Kann so ein Mac aussehen???
-> Klar! Das geht noch besser ;)

Alternative Windowmanager? Warum?
Es ist eine Erweiterung des Horizonts!

romeda_sm.jpg


Viele, die tagtäglich Aqua nutzen, nutzen diese Oberfläche als Shell.
Den meisten reicht, was sie bietet - und das ist ja auch eine ganze Menge. Aqua ist eine äußerst durchdachte Oberfläche. Meiner Meinung nach ist sie genial. Das Maß an Vereinfachung dass sie liefert bei dem komplexen System(en) dahinter ist einmalig!

Aber, wie das nun mal mit schönen Dingen so ist: Sie ist ziemlich voll mit Effekten, ablenkenden Animationen, Spielkram, Schmuck, Tamtam.

Manche Funktionen sind nur schwer zugänglich... Und unter Umständen passt diese Oberfläche nicht zum Nutzerverhalten.
Nun gibt es auf spezielle Nutzerverhalten spezialisierte Windowmanager.
Im Folgenden möchte ich diese kurz verlinken, und kurz vorstellen:

Es gibt viele Windowmanager für X11
es gibt ja auch viele Leute, dies nutzen.

Was dieses Tutorial vermitteln will ist, dass der Präsentationsmodus von X11 einen weitreichenden Sinn und Zweck hat. Es ist möglich alternative grafische Oberflächen zu nutzen - für X11.
Weithin bekannt ist, dass man die relativ verbreiteten Oberflächen Gnome oder KDE nutzen kann. So ist es dann möglich sämtliche für diese Oberflächen geschriebenen Programme auf dem Linux bereich zu verwenden.
Welche könnten das sein?


Gnome und KDE sind aber längst nicht die einzigen Windowmanager, die die große weite Linux Welt uns zu beiten hat. Da ist eine ganze Flut... keiner kennt sie alle. Also ich kenne aus dem Stand vielleicht 15.
Hier hat Wikipedia uns mal eine Liste gemacht. Aber die ist nicht komplett.

Ich gehe erst einmal noch nicht auf die Installationsroutinen von KDE oder Gnome einein. Das kommt noch... (noch nicht fertig, da kommen noch Details, Screenshots etc.)

Was für wen?
Ein kurzer Überblick

  • Terminal-Typen...
    nutzen einen Tastatur-freundlichen Windowmanager.
    Solche sind z. B.:
    ION

    ion3-1-thumb.png


    oder
    Ratpoison

    Das sind meistens exotischere Windowmanager für exotischere Leute. Da die heutige Zeit voller "KlickiBunti" ist, wie sie sagen, und so wirkliches Arbeiten mit dem Background des Betriebssystems sehr selten stattfindet, nutzen Terminalologen solche WindowManager. Ich hab gehört sogar unter OS X.

    Denen, die einen solchen Windowmanager bevorzugen, braucht man auch keine Installationsanleitung geben. Die wissen das einfach. Oder?

    Für Neugierige sei hier erwähnt:
    darwinports hat einen Port für ION 3, die aktuelle Version. fink hat einen Port für Ratpoison. Diese beiden habe ich getestet und sie funktionieren.
    100%ig kompatibel! 100% Spaß!

  • Anti-Ablenkungs-Strategen

    Instant Messageing, IRC, Growl, Mails... VoIP... ich könnte den ganzen Tag kommunizieren und würde den ganzen Tag nicht arbeiten.
    Also schaffe ich mir eine "Welt" fernab von alledem, die mich weder durch bunte Gestaltung ablenkt, noch durch im Hintergrund laufende Programme.

    http://www.fvwm.org/

    250px-Fvwm.png


    oder
    http://www.windowmaker.info/

    Windowmaker basiert wie im Grunde auch Aqua auf NeXTstep.
    Jedoch ist Windowmaker auf schnelles Arbeiten mit Fenster ausgelegt. Die vielen Optionen, die diese Oberfläche bietet, zusammen mit den vielen zusätzlichen PlugIns und Integrationsmöglichkeiten, machen Windowmaker zur ersten Wahl im Bereich der zusätzlichen Windowmanager unter OS X. Zudem ist Windowmaker auch sehr effizient.


    Ich will es like Linux!


    [...]
    Wird ergänzt



Technische Umsetzung

Okay, X11 soll erweitert werden. Gut, dazu ziehe ich mir, wie im Terminal Tutuorial beschrieben kurz über fink oder darwinports einen Windowmanager... und dann?

Dann editiere ich folgende Datei:
/etc/X11/xinit/xinitrc

Diese sieht zum Starten von Windowmaker nach der Installation via Fink so aus:

Code:
#!/bin/sh
# $Id: xinitrc,v 1.1.1.1 2005/02/24 22:35:39 akosut Exp $

userresources=$HOME/.Xresources
usermodmap=$HOME/.Xmodmap
sysresources=/etc/X11/xinit/.Xresources
sysmodmap=/etc/X11/xinit/.Xmodmap

# merge in defaults and keymaps

if [ -f "$sysresources" ]; then
    xrdb -merge "$sysresources"
fi

if [ -f "$sysmodmap" ]; then
    xmodmap "$sysmodmap"
fi

if [ -f "$userresources" ]; then
    xrdb -merge "$userresources"
fi

if [ -f "$usermodmap" ]; then
    xmodmap "$usermodmap"
fi

# starte mir nette Programme

xterm &
xclock -d -geometry 200x25-1-1 &
xsetroot -solid black

# starte mir den WindowManager

exec /sw/bin/wmaker

Im Endeffekt kann uns alles bis auf die letzte Zeile egal sein. Normalerweise steht da was von wegen:

Code:
exec quartz-wm

Das ist der Standart für den X-Server und OS X. Wir jedoch wollen heute ja mal vom Standart abweichen und ersetzen den Windowmanager.
Wichtig ist, dass der Pfad mit angegeben wird. Andernfalls funktioniert das nicht, X11 sonst nicht starten kann... wenn der Windowmanager nicht gefunden wird.

Nach den Änderungen dann X11 (neu) starten und wenn alles gut gegangen ist... ist da was Neues.


Was steht da genau?

Okay, recht kurz dazu einige kleine Erklärungen.
  • # leitet einen Kommentar ein, außer in der ersten Zeile
  • exec = execute = starte
    Wir wollen ja nicht mehr quartz-wm starten, sondern den WM (=Windowmanager) unserer Wahl.
  • Code:
    xterm &
    xclock -d -geometry 200x25-1-1 &
    xsetroot -solid black

    xterm kann man auch im x11-Terminal eingeben. Es passiert das Gleiche, wie bei der Tastenkombination Apfel + N. Ein neues Terminalfenster erscheint für uns. Standardmäßig wird ein x-term Fenster für uns beim Starten von X11 geöffnet, wenn wir diesen Eintrag in der Initialisierungsdatei stehen lassen.

    xclock ist die Uhr. Diese wird an die angegebenen Koordinaten eingeblendet.

    xsetroot - Ich empfehle man xsetroot. Da kann man dann seinem Geschmack freien Lauf lassen. Der gegebene Befehl schaltet mit den gegebenen Parametern dem xServer ein schwarzes Hintergrundbild dazu.


    Auf was verzichten wir?

    - Auf nichts. Das heißt, haben wir keinen solchen zusätzlich zu Aqua laufenden Window Manager, dann entgeht uns die Möglichkeit ein unserem speziellen Nutzerverhalten angepasstes GUI am Laufen zu haben. Das muss nicht schlimm sein, aber es ist doch schon ein Schmankerl für sich, wenn man auf seinem weißen MacBook beispielsweise ION am Laufen hat, oder?

    Dieses Tut bietet, wird es ausgeführt, die Möglichkeit, dem X-Server neue Fähigkeiten zu verleihen, ihn intensiver zu nutzen, und dadurch evtl. das (Arbeits-)ziel schneller zu erreichen.
    Aqua soll _nicht_ ersetzt werden. Nur, nebenher kann ja noch etwas Minimalistischeres laufen, etwas, das uns die richtigen wenigen Buttons zur richtigen Zeit beitet, oder was uns einfach mal einen Blick auf etwas anderes, jenseits der vorgefertigen Spähren, die Apple uns gebastelt hat, läuft.


    Gruß,
    Mark

    p.s.: Da folgen morgen noch Ergänzungen... die kann ich hoffentlich an Kommentaren und so orientieren ;)
 
Zuletzt bearbeitet:

Vanilla-Gorilla

Kleiner Weinapfel
Registriert
01.03.07
Beiträge
1.132
Hey Cool!

Das schaut echt gut aus und scheint noch sehr interessant zu werden! Ich werde deinen Thread auf jeden Fall im Auge behalten. ;)

Danke schonmal!

Vanilla-Gorilla
 

chrisrig

Süssreinette (Aargauer Herrenapfel)
Registriert
07.11.06
Beiträge
408
So, ich habe mal Enlightenment über Macports installiert,
allerdings gabs nur die schon etwas betagte E16-Version.

Leider hängt er sich auch gleich beim Start auf:
Code:
Xlib: sequence lost (0x12fcc > 0x17) in reply type 0x0!
Kannst du mir weiterhelfen?

Am liebsten würde ich aber E17 verwenden.

Güße

Anhang:
DR17_shot.png
 

Tengu

Apfel der Erkenntnis
Registriert
05.02.07
Beiträge
721
Also ich bin grade ein wenig in der Bredullie: Mein MacBook ist kaputt. Daher vertage ich die Fertigstellung noch.
Schließlich poste ich nichts Ungetestetes.

Zum anderen... hab ich von Dir grad negatives Karma erhalten :(. Macht aber nix, war sicher gut gemeint, wobei ich das verstehen kann. Das liegt nun schon länger unfertig hier.

Um Dein Problem zu lösen, müsstest Du die X-11 Development-Tools installieren, also X-Code mit X-11 Entwicklungsbestandteilen. Dann würde ich vorschlagen E 17 manuell zu kompilieren.

Dann bräuchte ich mal Deine .xinitrc Datei, mit der Du den Windowmanager initialisierst. Sorum wüsste ich dann nämlich, was falsch läuft. Evtl. inititialisierst Du per quartz-wm.
 
  • Like
Reaktionen: 1 Person

chrisrig

Süssreinette (Aargauer Herrenapfel)
Registriert
07.11.06
Beiträge
408
Hallo,
ich habe inzwischen die E17 über Macports installiert,
ist eigentlich die Version 0.16.999 ;)

So, wenn ich enlightenment starte, kommt folgendes Fenster

.jpg


Da ist mir nicht klar, was er da editieren will???

Mit F2 hängt er sich auf.:(

An der xinitrc habe ich noch nichts geändert -
das wird nur nötig, wenn ich quarz beenden und enlightenment
stattdessen einsetzen möchte, oder?

Naja, ich hänge sie dir trotzdem mal an:

Code:
xinitrc             [----]  0 L:[  1+ 0   1/ 34] *(0   / 568b)= #  35 0x23                                              
#!/bin/sh                                                                                                               
# $Id: xinitrc,v 1.3 2004/06/11 04:37:23 jharper Exp $                                                                  
                                                                                                                        
userresources=$HOME/.Xresources                                                                                         
usermodmap=$HOME/.Xmodmap                                                                                               
sysresources=/etc/X11/xinit/.Xresources                                                                                 
sysmodmap=/etc/X11/xinit/.Xmodmap                                                                                       
                                                                                                                        
# merge in defaults and keymaps                                                                                         
                                                                                                                        
if [ -f "$sysresources" ]; then                                                                                         
    xrdb -merge "$sysresources"                                                                                         
fi                                                                                                                      
                                                                                                                        
if [ -f "$sysmodmap" ]; then                                                                                            
    xmodmap "$sysmodmap"                                                                                                
fi                                                                                                                      
                                                                                                                        
if [ -f "$userresources" ]; then                                                                                        
    xrdb -merge "$userresources"                                                                                        
fi                                                                                                                      
                                                                                                                        
if [ -f "$usermodmap" ]; then                                                                                           
    xmodmap "$usermodmap"                                                                                               
fi                                                                                                                      
                                                                                                                        
# start some nice programs                                                                                              
                                                                                                                        
xterm &                                                                                                                 
                                                                                                                        
# start the window manager                                                                                              
                                                                                                                        
exec quartz-wm
Danke schon mal...

Viel Glück mit dem MacBook.

Grüße
 

Tengu

Apfel der Erkenntnis
Registriert
05.02.07
Beiträge
721
Der Fehler liegt in der letzten Zeile Deiner geposteten xinitrc. Du initialisiert X11 per quart-wm, dem Apple eigenen X11 WM. Du musst diese Zeile
Code:
exec quartz-wm
löschen.

Versuch mal auf der Konsole
locate E17
oder
mdfind E17

Du musst den Pfad zu den Startdateien angeben, also zu jener Datei genauer gesagt, die E17 startet.
Das steht auch oben im Tut^^. 2 Windowmanager mit einem X11 Server gehen ja nicht. Soweit ich weiß.
 

chrisrig

Süssreinette (Aargauer Herrenapfel)
Registriert
07.11.06
Beiträge
408
ok, bitte noch mal langsam zum Mitschreiben:

insgesamt habe ich 3 X-Server auf dem System
  • quartz
  • x11 von xorg
  • und x11von Apple
Wenn ich den Eintrag
Code:
 exec quartz-wm
lösche, passiert was?

quarz wird beim nächsten Start nicht ausgeführt und man landet auf der Konsole, oder?

jetzt kann man auswählen, welchen X-Server, man alternativ verwenden möchte.

mit startx startet der von Apple
mit quartz-wm startet Aqua

und wie start man den X-Server von xorg?

Sorry für die vielen Fragen, aber ich möchte erst einigermaßen versten, was ich mache,
bevor es losgeht...

Grüße :)
 

Tengu

Apfel der Erkenntnis
Registriert
05.02.07
Beiträge
721
Der Xserver, den du startest, kann nur einen (seinen) Windowmanager starten. Du musst also quartz-wm (Windowmanager) durch E 17 (Windowmanager) ersetzen und diesen mittels X11 (Windowserver) ersetzen.

Apples MacOS X nutzt standardmäßig Aqua, was nichts mit X11 zu tun hat.

Man kann aber optional einen X11 Server installieren, um X11 Programme auszuführen wie Gimp, OO, MatLab etc.

Der normale quartz-wm, den man bei der X11 Standardinstallation hat, den kann man ersetzen durch die genannten wms.
Den X11 Server, den Du nutzt, diesen einen, den Du startest, der die xinitrc läd und ausführt, den musst Du über die xinitrc konfigurieren. D. h. Du schaust, wo genau die ausführbaren E17 Dateien liegen, suchst mit den genannten Befehlen danach, oder per Spotlight, oder per Darwinports. Dann modifizierst Du diese Zeile.

That's it.

edit:

Den X-11 startet man mit

open-x11 <programm>

oder über Dienstprogramme - X11 - Doppelklick.

startx kann man unter unixoiden Systemen ohne Aqua nutzen ;).
 

chrisrig

Süssreinette (Aargauer Herrenapfel)
Registriert
07.11.06
Beiträge
408
Ich bin drinne! :):-D:-*

Es hat geklappt, ich habe in den X11-Einstellungen noch Start im Vollbildmodus gewählt,
dann macht er mir gleich ein neues Terminal auf einer eigenen Konsole auf.
Mit ALT+Apfel+A kann man wieder zu Aqua zurückwechslen.

Sehr schön.

Danke für deine Idee und die sehr gute Anleitung.

Grüße :)

PS: Sind wir nicht alle ein bischen unixoid!
 

chrisrig

Süssreinette (Aargauer Herrenapfel)
Registriert
07.11.06
Beiträge
408
Hallo!

Wer sich nicht den X-Server-Experimenten aussetzen möchte und sich trotzdem mal den alternativen UNIX-Desktop Enlightenment anschauen möchte, kann dies auch mit der ELive-CD tun.

Ich habe das ganze mal unter Q-Emu getestet:





Auf einem Powerbook G4 1,67MHz ist die Performance nicht berauschend,
zum richtigen arbeiten reicht es nicht.
Auf einem Mac mit Intel-Chip kann die CD natürlich direkt starten.
Hier gibts die aktuellste Live-CD und hier noch eine für MacBooks..

Grüße :)
 
Zuletzt bearbeitet: