On Thu, 14 Apr 2005 15:19:56 -0400 jim lawrence <[EMAIL PROTECTED]> babbled:
(B
(B> My default WM is gnome 
(B> So I can't put what didier said into their
(B> Entrance caused me headaches in a big way 
(B> 
(B> if no other way around it, I can live with the welcome and splash I
(B> hope in the future tho, that they remove these 2  features
(B
(Bi'm going to have to spread some clue around... gnome is NOT a wm. gnome is a 
(Bdesktop environment. metacity is a wm.
(B
(Bover the years the level of "clue" on how x works has eroded steadily with 
(Bpeople calling anything a desktop, etc. willy nilly.
(B
(Bif we erode terminology - what is left to actually refer to the things the 
(Bterminology used to refer to?
(B
(Bok. i will now do an off-the cuff tutorial on "what the fuck is a wm and how 
(Bdoes a login manager/startx etc. work? how is i can log in or run startx and 
(Bapps appear on my screen?" someone feel free to formalise this, post is 
(Bsomewhere permanent to point to etc. ok - here goes.
(B
(Bhow does startx work?
(B
(Byou run startx.
(Bthis then executes the Xserver - waits for x to issue a signal back to the 
(Bstartx parent process letting it know x is now ready to accept clients. 
(Bremember that x is a SERVER. like a web server or ftp server. it needs to start 
(Bup and listen to sockets (tcp/ip and unix sockets) for clients to connect. 
(Bwithout clients connecting your x will sit there dumbly with an ugly "X" cursor 
(Band a bland background b&w weave. (caveat - this is the default. you COULD hack 
(Bthings into x to change the default bg and cursor. you could add internal 
(Bclients - but i am going by the 99.999% case). now how does startx start 
(Bthings? how does it know what to do? well there is a SYSTEM script. this 
(Bgenerally is /etc/X11/xinit/xinitrc. this then runs programs or other scripts. 
(Byou likely will find it simply executes a shared session script: 
(B/etc/X11/Xsession. this in turn runs x clients and other scripts. you will 
(Bnotice that this script will execute the users ~/.Xsession or ~/.xsession IF 
(Bthey exist, 
(B otherwise it will run system ones. basically these are JUST SCRIPTS. they 
(Bexecute a series of things. the common case is they execute one thing only - 
(Byour WINDOW MANAGER or the desktop environment launch script/handler. gnome and 
(Bkde have their own launchers - but all they essentially do is run a bunch of x 
(Bprograms. no different to the session script. window managers dont run 
(Bunder/on/in gnome or kde - they arent containers or layers. programs run and 
(Btalk to x. all of them. every single one. window manager included. nothing runs 
(B"on" or "in" or "under" e. the block diagram is:
(B
(B+----+ +----+     +----+
(B|App1| |App2|     | E  |
(B+----+ +----+     +----+
(B /|\     /|\        /|\
(B  |       |          |
(B \|/     \|/        \|/
(B+----------------------+
(B| X server             |
(B+----------------------+
(B
(Byes - i'm skipping the kernel and other system libraries that apps USE and they 
(Btalk to the kernel via syscalls. apps and wm's may use any mechanism they like 
(Bto talk to x - from writing bytes down a socket by hand, to using xlib to using 
(Befl or a toolkit like gtk, qt etc. this is just a set of routines that 
(Bgenerally make talking to x easier and getting stuff done. again - nothing runs 
(BUNDER the wm. the wm is divorced from apps in terms that everything it does is 
(Bindirect VIA X and only what x lets it do will happen - and the same for apps.
(B
(Bso now to my point. you can run anything u like on a login. you can run as many 
(Bwm's as u like - but only 1 will successfully MANAGE the root window as x only 
(Ballows 1 client to select special events that redirect certain special requests 
(Bback TO this special client (the wm) for approval and "getting done" - as 
(Baby-product a wm can effectively put borders around windows, limit the size and 
(Bplacement and visibility of them etc. its one big chattery ipc system with 
(Bthings chattering to/from x all the time.
(B
(Bnow one thing u want to know more of.. back to the script thing is... your 
(Blogin is a SCRIPT. when the SCRIPT exits - your login exits. that is why the 
(Bscritps invariably, if they run more than 1 thing run like this:
(B
(B#!/bin/sh
(Bapp1 &
(Bapp2 &
(Bexec wm
(B
(Bnotice no 7 for the wm
(Balso exec means in shell "replace the shell now WITH this process don't run it 
(Bunder the shell - replace the shell". now when the wm exits... your login 
(Bsession ends. it may exit for any reason. a kill, a segfault or just deciding 
(Bto quit (as a result of user input or anything else) gnome and kde use session 
(Bmanagers that spawn the 83 programs u need to "use them" on login and one of 
(Bthe things they spawn is a wm - thus when the session manager exist - your 
(Blogin ens. in traditional x logins this is the wm that does this and thus when 
(Bit exist - end of login. you can USE any apps u like by simply making your own 
(Bscript ad ~/.xsession and running anything u like. all the panels u want on 
(Bstartup - the 3 terminals, a web browser - whatever. its just a script.
(B
(Bdesktop environments aren't restricted containers e (or other wm's) have to run 
(BIN or UNDER. the wm runs on top of x. it doesnt run ontop of gnome or kde. some 
(Bwm's may interact with gnome and kde apps or components - but that is very much 
(Bdifferent.
(B
(Banyway. i hope this has helps bring some clue to light and should de-mystify 
(Bthe whole login process for people. its really VERY simple stuff. some projects 
(Band people like to make it sound like "black magic" that u cant understand - 
(Bbut thats wrong. its all really simple things - just put together.
(B
(B-- 
(B------------- Codito, ergo sum - "I code, therefore I am" --------------
(BThe Rasterman (Carsten Haitzler)    [EMAIL PROTECTED]
$BMg9%B?(B                              [EMAIL PROTECTED]
(BTokyo, Japan ($BEl5~(B $BF|K\(B)
(B
(B
(B-------------------------------------------------------
(BSF email is sponsored by - The IT Product Guide
(BRead honest & candid reviews on hundreds of IT Products from real users.
(BDiscover which products truly live up to the hype. Start reading now.
(Bhttp://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
(B_______________________________________________
(Benlightenment-users mailing list
([email protected]
(Bhttps://lists.sourceforge.net/lists/listinfo/enlightenment-users

Reply via email to