Gestione di X-Window, Windows Manager e simili
Versione 1.0.0 del 1999-10-14 by AGX
Versione 1.0.2 del 1999-12-01 by AGX [CANDIDATE]
************************************************



Avvio di X
==========
TODO: L'avvio di X-Window viene per ora controllato da /root/.xinitrc
probabilmente e' il caso di spostarlo nel default nella lib di X11.



Font Server
===========
Il font server, se presente, viene intermanete lanciato e gestito 
dall'interno di .xinitrc. La directory dei font True Type e' /usr/share/fonts



Autorun
=======
L'avvio dei file in contemporanea con X-Window viene gestito tramite il file
  ~/.XSTARTUP
piuttosto che direttamente in .xinitrc, questo per evitare di modificare
direttamente il file per eventuali aggiunte o rimozioni.
Il file di startup contiene quindi i comandi di avvio dei programmi
terminanti con il simbolo "&" per l'esecuzione in background.
Tutti i testi consigliano l'esecuzione di programmi all'avvio prima del
window manager per questioni di velocita'.

Per inserire un file, si puo' fare manualmente, ma da pacchetto e' meglio
usare lo script
  install-xautorun "Comando da inserire"
e per toglierlo
  remove-xautorun  "Espressione regolare da eliminare con grep"




Window Manager
==============

Il window manager viene caricato da ~/.xinitrc
L'eseguibile da lanciare viene deciso guardando nell'ordine:
  1. la variabile d'ambiente WINDOWMANAGER
  2. il file ~/.WINDOWMANAGER
in caso di errori o di nessuna definizione il "fall-back" e' su 
un normale x-term

IDEA: Non c'e' un bottoncino "Chiudi sessione" da qualche parte ?

I session managers vengono registrati in /etc/sysconfig/SESSIONMANAGERS
nel formato
  nome|path completo con opzioni|descrizione

La registrazione viene effettuata usando il comando
  install-windowmanager  "nome"  "path completo ed opzioni"  "descrizione"
se c'e' gia' un'altro WM di default viene chiesto se si vuole cambiarlo.

La deregistrazione viene effettuata usando il comando
  remove-windowmanager  "nome"

Tramite controlpanel deve essere possibile scegliere il window manager
di default tramite lo script
  configure-windowmanager
il WM twm viene elencato di default all'ultimo posto della lista



Session Manager
===============

Il sessione manager e' l'eseguibile che viene caricato per ultimo
all'interno di ~/.xinitrc tramite il comando exec. Quando il session
manager termina, termina anche la sessione X-Window.

L'eseguibile da lanciare viene deciso guardando nell'ordine:
  1. la variabile d'ambiente SESSIONMANAGER
  2. il file ~/.SESSIONMANAGER
in caso di errori o di nessuna definizione il "fall-back" e' su xterm

I session managers vengono registrati in /etc/sysconfig/SESSIONMANAGERS
nel formato
  nome|path completo con opzioni|descrizione

La registrazione viene effettuata usando il comando
  install-sessionmanager  "nome"  "path completo ed opzioni"  "descrizione"
se c'e' gia' un'altro SM di default viene chiesto se si vuole cambiarlo.

La deregistrazione viene effettuata usando il comando
  remove-sessionmanager  "nome"

Tramite controlpanel deve essere possibile scegliere il session manager
di default tramite lo script
  configure-sessionmanager




X Console
=========

Per X Console si intende un programma in grado di visualizzare i messaggi
di log anche durante l'esecuzione di X-Window. Una X Console non e' limitata
al solo programma xconsole ma si intende anche i vari Eterm, xroottail ed
altri.

L'eseguibile da utilizzare viene deciso guardando nell'ordine:
  1. la variabile d'ambiente XCONSOLE
  2. il file ~/.XCONSOLE
in caso di errori o di nessuna definizione il "fall-back" e' su xconsole

Le X Console vengono registrati in /etc/sysconfig/XCONSOLES
nel formato
  nome|path completo con opzioni|descrizione

La registrazione viene effettuata usando il comando
  install-xconsole  "nome"  "path completo ed opzioni"  "descrizione"
se c'e' gia' un'altra XC di default viene chiesto se si vuole cambiarlo.

La deregistrazione viene effettuata usando il comando
  remove-xconsole  "nome"

Tramite controlpanel deve essere possibile scegliere la X Console
di default tramite lo script
  configure-xconsole



Backgrounds
===========
Gli sfondi di X-Window devono risiedere in /usr/share/backgrounds
o meglio si puo' mettere un link.

Lo sfondo da caricare viene deciso guardando nell'ordine:
  1. la variabile d'ambiente XBACKGROUND
  2. il file ~/.XBACKGROUND
in caso di errori o di nessuna definizione il "fall-back" e' su uno
sfondo colorato con xsetroot

Se il nome dello sfondo corrisponde al nome RANDOM allora viene scelto
a caso un nome di file all'interno della directory, questo lo si fa
girando la lista dei files presenti nella directory.

Per settare lo sfondo il metodo preferito e di usare
  Esetroot
se questo file manca bisogna usare un'altro programma
(si accettano suggerimenti).

NOTA: Il settaggio dello schermo con xsetroot ed il settaggio del background
vengono fatti prima di caricare ~/.XSTARTUP in modo da lasciare libero 
l'utente di personalizzare ulteriormente l'ambiente. Ovviamente questo
non e' obbligatorio e' si puo' non usare questi sistemi lasciando la gestione
a KDE o GNOME ma a non tutti piacciono questi ambienti e magari preferiscono
un WM leggero (come me) come Blackbox per il notebook o per il 386.



Menu' dei window manager
========================
Ogni programma che usa un'applicazione utente in modalita' X-Window
deve essere accompagnato da relativa icona compatibile con le specifiche
rilasciate dal progetto GNOME.

L'icona va in /usr/share/gnome/apps/$CATEGORIA/$NOMEICONA.desktop

Richiamando il comando "install-menu", sia in installazione che
in rimozione, causa il rebuilding dei menu' degli altri window 

NOTA: Tutti gli script install-* e remove-* vanno chiamati, se usati
all'interno nel pacchetto, in POST-INSTALL e POST-REMOVE perche'
operano direttamente sul root fs (/) e non sul target fs.



EOF

