Sophie

Sophie

distrib > Mandriva > 9.1 > i586 > by-pkgid > f1098342ec4a2b28475e34123ce17201 > files > 540

howto-html-it-9.1-0.5mdk.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
 <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
 <TITLE>Kiosk HOWTO: Costruire l'Ambiente del Chiosco</TITLE>
 <LINK HREF="Kiosk-HOWTO-4.html" REL=next>
 <LINK HREF="Kiosk-HOWTO-2.html" REL=previous>
 <LINK HREF="Kiosk-HOWTO.html#toc3" REL=contents>
</HEAD>
<BODY>
<A HREF="Kiosk-HOWTO-4.html">Avanti</A>
<A HREF="Kiosk-HOWTO-2.html">Indietro</A>
<A HREF="Kiosk-HOWTO.html#toc3">Indice</A>
<HR>
<H2><A NAME="s3">3. Costruire l'Ambiente del Chiosco</A></H2>

<P>
<P>
<H2><A NAME="ss3.1">3.1 FVWM2</A>
</H2>

<P>FVWM2 (FVWM, versione 2 -- www.fvwm.org) &egrave; un X Window manager flessibile,
affidabile e leggero con un'ottima configurabilit&agrave;
per creare l'ambiente del chiosco.
Per utilizzarlo con il chiosco si devono cambiare alcune delle impostazioni
di default.
Si deve modificare il file system.fvwm2rc per rimuovere cose come
desktop virtuali, barre del titolo, controlli di uscita ecc, lasciando un ambiente FVWM 
relativamente minimalista.
Siccome il chiosco &egrave; un'unit&agrave; standalone, la modifica delle impostazioni 
per l'intero sistema non &egrave; un problema.
<P>Inoltre si pu&ograve; approfittare delle propriet&agrave; configurabili degli oggetti di
FVWM ed usare le bitmap di X Window (files xpm) per mascherare le parti di
Netscape Navigator a cui non si vuole far accedere dagli utenti.
<P>Il file di FVWM2 che si deve modificare &egrave;
/etc/X11/fvwm2/system.fvwm2rc (se avete una una distribuzione diversa da
RedHat, questo file pu&ograve; essere situato in qualche altro posto).
Dovrete cercare un po' nel file per trovare le sezioni mostrate qui sotto.
<P>
<H3>/etc/X11/fvwm2/system.fvwm2rc</H3>

<P>In <CODE>/etc/X11/fvwm2/system.fvwm2rc</CODE> cambiate
<P>
<BLOCKQUOTE><CODE>
<PRE>
DeskTopSize 2X2
</PRE>
</CODE></BLOCKQUOTE>
<P>in
<P>
<BLOCKQUOTE><CODE>
<PRE>
DeskTopSize 1X1
</PRE>
</CODE></BLOCKQUOTE>
<P>Questo elimina i desktop virtuali.
<P>In seguito, nella sezione Default Styles, cambiate
<P>
<BLOCKQUOTE><CODE>
<PRE>
Style "*"           BorderWidth 7, HandleWidth 7
</PRE>
</CODE></BLOCKQUOTE>
<P>in
<P>
<BLOCKQUOTE><CODE>
<PRE>
Style "*"           BorderWidth 0, HandleWidth 0, notitle, nohandles
</PRE>
</CODE></BLOCKQUOTE>
<P>Questo disabiliter&agrave; la maggior parte dei controlli di finestra.
<P>Aggiungere le due linee seguenti alla sezione Default Styles:
<P>
<BLOCKQUOTE><CODE>
<PRE>
Style "xdaliclock"  StaysOnTop
Style "sxpm"        StaysOnTop 
</PRE>
</CODE></BLOCKQUOTE>
<P>Una volta terminata, la parte Default Styles del file dovrebbe essere simile a
questa:
<P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
# default Styles:
#Style "*"           BorderWidth 7, HandleWidth 7
Style "*"           BorderWidth 0, HandleWidth 0, notitle, nohandles
Style "*"           Icon unknown1.xpm, Color lightgrey/dimgrey
Style "*"           MWMFunctions, MWMDecor, HintOverride
Style "*"           DecorateTransient, NoPPosition
Style "*"           IconBox 0 -10 -280 -1
Style "*"           FocusFollowsMouse
Style "*"           RandomPlacement, SmartPlacement
Style "xdaliclock"  StaysOnTop
Style "sxpm"        StaysOnTop
</PRE>
</CODE></BLOCKQUOTE>
<P>Si possono usare i programmi xdaliclock e sxpm per coprire le parti di
Netscape Navigator. L'attributo ``StaysOnTop'' risulta un elemento efficace.
<P>In seguito, trovate le seguenti quattro linee e commentatele come mostrato:
<P>
<BLOCKQUOTE><CODE>
<PRE>
#AddToFunc InitFunction         "I" Module FvwmButtons
#+                      "I" exec xsetroot -mod 2 2 -fg \#554055 -bg \#705070

#AddToFunc RestartFunction "I" Module FvwmButtons
#+                      "I" exec xsetroot -mod 2 2 -fg \#554055 -bg \#705070
</PRE>
</CODE></BLOCKQUOTE>
<P>Commentando queste linee si eliminer&agrave; da FVWM2 il gradevole task launcher,
e questo va bene in quanto si cerca di creare un ambiente il pi&ugrave; semplice 
possibile.
<P>
<P>
<H2><A NAME="ss3.2">3.2 Netscape Navigator</A>
</H2>

<P>Netscape Navigator &egrave; una scelta migliore di Netscape Communicator per
configurare un chiosco. Essendo pi&ugrave; semplice, ci sono meno oggetti da
nascondere.
<P>Sotto Microsoft Windows, Netscape Navigator ha una modalit&agrave; chiosco che elimina
la maggior parte dei controlli del Navigator ma, nell'istante in cui si scrive,
non c'&egrave; una modalit&agrave; chiosco integrata nella versione Unix del Navigator.
<P>La versione Unix pu&ograve;, nondimeno, essere invocata con un argomento
<CODE>-geometry</CODE> che permette di avviare Netscape sempre in modalit&agrave;
full screen. Questa &egrave; una parte della nostra strategia per un chiosco basato
su Netscape.
<P>Si deve prendere una decisione sulla risoluzione dello schermo del nostro
chiosco. Usando un monitor da 19 o 20 pollici, si trova la 640x480 troppo
larga, la 1024x768 troppo stretta, e la 800x600 quasi giusta per la visione
pubblica (si pu&ograve; decidere diversamente).
Una volta stabilita la risoluzione, siamo pronti per iniziare ad adattare il
Navigator. Per il seguito di questo HOWTO si assume la risoluzione a 800x600.
Sar&agrave; necessario adeguarsi di conseguenza se si seleziona una risoluzione
diversa.
<P>
<P><I>Nota:</I> Navigator sar&agrave; invocato da root durante il boot, quindi fate
tutti gli adattamenti sotto l'account di root nella directory
<CODE>/root/.netscape</CODE>.
<P>Invocate Netscape e cliccate sulla finestra di dialogo <CODE>Edit, Preferences</CODE>.
In <CODE>Appearance</CODE> impostate ``Show Toolbar as Text Only.''
In <CODE>Appearance, Fonts</CODE> adattate i font sia a larghezza fissa che
variabile
ad almeno 14pt, altrimenti la visualizzazione sullo schermo sar&agrave; troppo piccola
per poter essere letta comodamente.
<P>In <CODE>Preferences, Navigator</CODE> inserite l'URL dell'home page del vostro
chiosco. Se si sta eseguendo una versione locale di Apache o di un altro server
web, impostatelo a <CODE>http://localhost/</CODE> per l'accesso al livello
principale, o pi&ugrave; in profondit&agrave; nell'albero dei documenti html, se volete.
<P>Salvate queste opzioni, poi cliccate su <CODE>View</CODE> sulla barra dei menu di
Navigator. Deselezionate <CODE>Personal Toolbar</CODE> e <CODE>Location Bar</CODE>.
<P>Notate come l'interfaccia sia diventata pi&ugrave; simile a quella di un chiosco? All'uscita da
Navigator queste impostazioni saranno salvate.
<P>
<P>
<H2><A NAME="ss3.3">3.3 Overlay Masks per Navigator</A>
</H2>

<P>Se guardate molto attentamente il vostro schermo adattato di Navigator,
noterete quattro aree che devono essere coperte e protette dai click del
mouse o della trackball:
<P>
<OL>
<LI>La barra degli strumenti in alto</LI>
<LI>Il tornado sul lato sinistro della barra di navigazione</LI>
<LI>Il resto della barra di navigazione alla destra della Home</LI>
<LI>La chiave di sicurezza nell'angolo in basso a sinistra di Navigator.</LI>
</OL>
<P>Ecco uno schema approssimativo delle aree da mascherare:
<P>
<BLOCKQUOTE><CODE>
<PRE>
+---------------------------------------+
|            # 1 Toolbar                |
+--+------------+-----------------------+
|#2|            |  #3 Navbar            |
+--+            +-----------------------+
|                                       |
|                                       |
|                                       |
|                                       |
|                                       |
|                                       |
|                                       |
|                                       |
|                                       |
|                                       |
+--------+                              |
|#4 Key  |                              |
+---------------------------------------+
</PRE>
</CODE></BLOCKQUOTE>
<P>Per mascherare le aree in alto (#1-3), saranno necessarie tre immagini.
Per mascherare la chiave di sicurezza (#4) si utilizzer&agrave; xdaliclock.
<P>
<H3>Creare le Maschere Grafiche</H3>

<P>Il modo pi&ugrave; facile per creare le maschere grafiche per coprire le aree #1-3 &egrave;
di catturare un screenshot di Navigator in modalit&agrave; estesa 800x600 e poi
ritagliare le aree che corrispondono a #1-3. Ho usato GIMP per questo.
<P>Si pu&ograve; poi ri-disegnare la grafica di base, cambiando i colori se si vuole, o
inserendovi il proprio logo. Salvarli come:
<P>
<OL>
<LI>topbar.xpm</LI>
<LI>navleft.xpm</LI>
<LI>navright.xpm</LI>
</OL>
<P>I formato xpm &egrave; quello nativo per le bitmap di X Window. Si utilizzer&agrave;
il programma X Window <I>sxpm</I> per posizionarle sullo schermo.
<P>Creare le maschere con esattamente il giusto numero di pixel ed esattamente
il giusto posizionamento sul monitor richiede un p&ograve; di sperimentazione.
Per convenienza, ho messo a disposizione i file xpm che abbiamo creato insieme
ai nostri file di configurazione nel seguente sito web:
<A HREF="http://www.rom.on.ca/kiosk/HOWTO/">http://www.rom.on.ca/kiosk/HOWTO/</A>.
Sar&agrave; pi&ugrave; semplice scaricare le nostre maschere ed usarle come punto di inizio
per la vostra propria grafica.
<P>
<H2><A NAME="ss3.4">3.4 /root/kiosk.xinitrc</A>
</H2>

<P>Proprio come se si creasse normalmente un file .xinitrc per vostro uso
personale, si deve creare un file di inizializzazione di sessione X Window
per la nostra applicazione di chiosco.
Lo script seguente implementa un certo numero di caratteristiche:
<P>
<UL>
<LI>Inizializzazione dello screensaver (opzionale)</LI>
<LI>Posizionamento della bitmap sulla menu bar di Navigator (topnav.xpm)</LI>
<LI>Posizionamento della bitmap sul tornado della barra di navigazione (navleft.xpm)</LI>
<LI>Posizionamento della bitmap sul resto della barra di navigazione (navright.xpm)</LI>
<LI>Posizionamento di xdaliclock sulla chiave di sicurezza di Navigator
(adattata per una risoluzione di 800x600)</LI>
<LI>Inizializzazione di Netscape e loop per controllare che Navigator 
stia eseguendo ed eseguirlo di nuovo in caso contrario.</LI>
</UL>
<P>Questo &egrave; il file principale che gestisce il chiosco.
<P>
<HR>
<PRE>
#!/bin/sh
# kiosk.xinitrc -- Initialization script for kiosk X Window session
 
# Start screensaver
/usr/X11R6/bin/xscreensaver-command -exit
/usr/X11R6/bin/xscreensaver &amp;
 
# Overlay over Navigator (mask #1)
sxpm /root/navtop.xpm &amp;
 
# Overlay small graphic over Toolbar twister - left-hand side (mask #2)
sxpm -g +0+23 /root/navleft.xpm &amp;
 
# Overlay larger graphic to cover everything to the right of
# Home on the Toolbar (mask #3)
sxpm -g +275+23 /root/navright.xpm &amp;
 
# Place xdaliclock over top of Netscape security key, lower lhc (mask #4)
/usr/X11R6/bin/xdaliclock -g 38x20+0+578 -font fixed -noseconds \
-bg gray -fg black &amp;
 
sleep 2

# Start fvwm2 window manager
fvwm2 &amp;
 
# restart netscape if it ever exits
while true ; do
        if [ -f /.netscape/lock] ; then
                rm /.netscape/lock
        fi
        /usr/bin/netscape -geometry 800x600
done
 
# This should never be reached
</PRE>
<HR>
<P>
<H2><A NAME="ss3.5">3.5 /root/xkiosk</A>
</H2>

<P>Adesso potete iniziare a testare la configurazione del vostro chiosco.
Dal momento che sar&agrave; necessario farlo ripetutamente, manualmente oppure
da uno script di inizializzazione, creare il seguente scrip shell chiamato
/root/xkiosk:
<P>
<HR>
<PRE>
/usr/X11R6/bin/xinit /root/kiosk.xinitrc -- /usr/X11R6/bin/X \
-xf86config /root/kiosk.XF86Config bc
</PRE>
<HR>
<P>Siccome si vuole testare spesso, e riusarlo pi&ugrave; tardi quando l'avvio sar&agrave;
automatizzato, creare questo comando come script shell chiamato
<CODE>/root/xkiosk</CODE>. Essere sicuri di eseguire <CODE>chmod ug+x</CODE> sullo
script.
<P>
<HR>
<A HREF="Kiosk-HOWTO-4.html">Avanti</A>
<A HREF="Kiosk-HOWTO-2.html">Indietro</A>
<A HREF="Kiosk-HOWTO.html#toc3">Indice</A>
</BODY>
</HTML>