Old:Realizzazione di un Desktop Environment su misura: differenze tra le versioni

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
(→‎Riferimenti: altra guida)
 
(19 versioni intermedie di 3 utenti non mostrate)
Riga 1: Riga 1:
{{stub}}
{{Old}}
== Introduzione ==
== Introduzione ==
L'obiettivo di questa guida è quello di permettere di realizzare un Desktop Environment altamente personalizzato e tagliato su misura attorno alle esigenze dell'utente.
L'obiettivo di questa guida è quello di permettere di realizzare un Desktop Environment altamente personalizzato e tagliato su misura attorno alle esigenze dell'utente.
Riga 6: Riga 6:


Le alternative che, ad esempio, un datore di lavoro può valutare nel caso in cui volesse forzare la migrazione cercando nel contempo di minimizzare i traumi, sono sostanzialmente due:
Le alternative che, ad esempio, un datore di lavoro può valutare nel caso in cui volesse forzare la migrazione cercando nel contempo di minimizzare i traumi, sono sostanzialmente due:
#installare un clone pressoché perfetto del sistema a cui l'utente è abituato (ad esempio [http://vixta.sourceforge.net/ Vixta] o [http://www.famelix.com.br/ Famelix GNU/Linux]);
#installare un clone pressoché perfetto del sistema a cui l'utente è abituato (ad esempio [http://www.ylmf.org/ Ylmf OS] o [http://www.brlix.com/ BRLix GNU/Linux]);
#fornire un prodotto "sartoriale" costruito attorno alle reali esigenze.
#fornire un prodotto "sartoriale" costruito attorno alle reali esigenze.


Adottando questa seconda impostazione si può ottenere un ambiente di lavoro estremamente ottimizzato; inoltre saranno assenti tutti quegli strumenti superflui (in quanto non strettamente necessari alle attività specifiche per le quali il pc è destinato) che non hanno altro effetto se non quello di disorientare il nuovo utente. L'utilizzatore non avrà alcuna funzione amministrativa, neppure del suo ambiente di lavoro: dovrà unicamente usare ciò che troverà predisposto ed eventualmente suggerire migliorie (funzionali o anche solo visive) all'amministratore. In questo modo si semplifica notevolmente l'ambiente di lavoro, riducendo in modo sostanziale il numero di menu necessari.
Adottando questa seconda impostazione si può ottenere un ambiente di lavoro estremamente ottimizzato; inoltre saranno assenti tutti quegli strumenti superflui (in quanto non strettamente necessari alle attività specifiche per le quali il PC è destinato) che non hanno altro effetto se non quello di disorientare il nuovo utente. L'utilizzatore non avrà alcuna funzione amministrativa, neppure del suo ambiente di lavoro: dovrà unicamente usare ciò che troverà predisposto ed eventualmente suggerire migliorie (funzionali o anche solo visive) all'amministratore. In questo modo si semplifica notevolmente l'ambiente di lavoro, riducendo in modo sostanziale il numero di menu necessari.


Al contempo si vuole ottenere anche un ambiente esteticamente molto bello, in modo da incuriosire l'utilizzatore e non fargli rimpiangere il sistema operativo abbandonato. Le risorse hardware oggigiorno difficilmente sono infatti un fattore limitante.
Al contempo si vuole ottenere anche un ambiente esteticamente molto bello, in modo da incuriosire l'utilizzatore e non fargli rimpiangere il sistema operativo abbandonato. Le risorse hardware oggigiorno difficilmente sono infatti un fattore limitante.


Viste le esigenze, si è scelto di basare la costruzione del nostro Desktop Environment sul window manager [http://www.fvwm.org/ FVWM].
Viste le esigenze, si è scelto di basare la costruzione del nostro Desktop Environment sul window manager [http://pekwm.org/ PekWM].


== Prima di iniziare ==
== Prima di iniziare ==
Prima di buttarsi sul pc a smanettare, è importante avere bene in mente l'obiettivo da perseguire.
Prima di buttarsi sul PC a smanettare, è importante avere bene in mente l'obiettivo da perseguire.


Occorre immedesimarsi nell'utilizzatore finale: potrebbe essere utile osservare l'utente all'opera, prendendo appunti su quali siano le applicazioni che usa abitualmente e su come si muove abitualmente. Sarà inoltre nostro compito trovare delle alternative dalle funzionalità simili, nel caso che i programmi attualmente in uso non esistano per Linux.
Occorre immedesimarsi nell'utilizzatore finale: potrebbe essere utile osservare l'utente all'opera, prendendo appunti su quali siano le applicazioni che usa e su come si muove abitualmente. Sarà inoltre nostro compito trovare delle alternative dalle funzionalità simili, nel caso che i programmi attualmente in uso non esistano per Linux.


Successivamente, sempre su carta, è importante abbozzare quali potrebbero essere le caratteristiche per rendere funzionale l'interfaccia, e come realizzarle.
Successivamente, sempre su carta, è importante abbozzare quali potrebbero essere le caratteristiche per rendere funzionale l'interfaccia, e come realizzarle.


== Debian ==
== Debian ==
Il primo passo è ovviamente quello di [[Note sull'installazione di Debian|installare il nostro sistema operativo]]. Immaginando un utilizzo per lo più lavorativo, abbiamo scelto di installare il ramo stabile (Debian 4.0 "Etch"). Il consiglio è di creare una partizione /home/ separata e di installare solo un sistema minimale lasciando selezionato unicamente il metapacchetto "Sistema standard".
Il primo passo è ovviamente quello di [[Installare Debian|installare il nostro sistema operativo]]. <!--Immaginando un utilizzo per lo più lavorativo, a-->Abbiamo scelto di installare <!--il ramo stabile (-->Debian <!--4.0 "Etch")-->Squeeze. Il consiglio è di creare una partizione /home/ separata e di installare solo un sistema minimale lasciando selezionato unicamente il metapacchetto "Sistema standard".


A questo punto è possibile aggiungere alcuni pacchetti non inclusi in questa installazione:
A questo punto è possibile aggiungere alcuni pacchetti non inclusi in questa installazione:
# aptitude update
<pre>
# aptitude purge vim-tiny
# aptitude update
# aptitude install vim ntp ssh
# aptitude purge vim-tiny
 
# aptitude install vim ntp ssh
Infine è consigliabile aggiornare tutti i pacchetti:
</pre>
# aptitude upgrade
 
Nel caso in cui qualche pacchetto non venga aggiornato (ad esempio il kernel):
# aptitude dist-upgrade


Riavviamo e controlliamo che tutto funzioni regolarmente.
Riavviamo e controlliamo che tutto funzioni regolarmente.
Riga 41: Riga 37:
=== Installazione ===
=== Installazione ===
Una volta sicuri che il sistema sia installato e configurato correttamente, possiamo installare il server grafico:
Una volta sicuri che il sistema sia installato e configurato correttamente, possiamo installare il server grafico:
# aptitude install xorg
<pre># aptitude install xorg</pre>


Il sistema, nel caso non riconoscesse la scheda video, sceglierà di utilizzare i generici driver VESA, in modo tale da essere in grado di funzionare sostanzialmente su qualsiasi macchina. Con ogni probabilità però saranno disponibili dei driver migliori. Vista la grande varietà di hardware disponibile, questa non è la sede per ulteriori approfondimenti. Si consiglia unicamente di testare il proprio hardware sul [http://kmuto.jp/debian/hcl/ sito di Kenshi Muto], dove verrà indicato anche il miglior driver libero disponibile.
Il sistema, nel caso non riconoscesse la scheda video, sceglierà di utilizzare i generici driver VESA, in modo tale da essere in grado di funzionare sostanzialmente su qualsiasi macchina. Con ogni probabilità però saranno disponibili dei driver migliori. Vista la grande varietà di hardware disponibile, questa non è la sede per ulteriori approfondimenti. Si consiglia unicamente di testare il proprio hardware sul [http://kmuto.jp/debian/hcl/ sito di Kenshi Muto], dove verrà indicato anche il miglior driver libero disponibile.


Nel caso in cui si fosse a conoscenza del driver specifico della propria scheda video (il comando <tt>lspci</tt> contenuto nel pacchetto <tt>pciutils</tt> può tornare utile allo scopo), è possibile attuare un'installazione ancora più minimale:
Nel caso in cui si fosse a conoscenza del driver specifico della propria scheda video (il comando <code>lspci</code> contenuto nel pacchetto <code>pciutils</code> può tornare utile allo scopo), è possibile attuare un'installazione ancora più minimale:
<pre>
<pre>
# aptitude install xserver-xorg-video-[...] xinit x11-xserver-utils
# aptitude install x11-xserver-utils xinit xserver-xorg-video-[...]
</pre>
</pre>
dove, al posto di <tt>[...]</tt> va messa la parte finale del nome del pacchetto contenente il nostro driver.
dove, al posto di <code>[...]</code> va messa la parte finale del nome del pacchetto contenente il nostro driver.


=== Test ===
=== Test ===
Proviamo ad avviare il server grafico:
Proviamo ad avviare il server grafico:
$ startx
<pre>$ startx</pre>


Dovrebbe visualizzarsi una finestra di xterm.
Dovrebbe visualizzarsi una finestra di xterm.


Proviamo a verificare che la risoluzione video sia corretta avviando un programma grafico un po' più impegnativo, ad esempio Iceweasel:
Proviamo a verificare che la risoluzione video sia corretta avviando un programma grafico un po' più impegnativo, ad esempio Iceweasel:
# aptitude install iceweasel-l10n-it
<pre>
# exit
# aptitude install iceweasel-l10n-it
$ startx
# exit
$ startx
</pre>


Dentro alla finestra di xterm digitiamo dunque
Dentro alla finestra di xterm digitiamo dunque
$ iceweasel
<pre>$ iceweasel</pre>


==  Window manager ==
==  Window manager ==
=== Installazione ===
=== Installazione ===
L'installazione di FVWM è semplicissima: è sufficiente un banale
L'installazione di PekWM è semplicissima: è sufficiente un banale
# aptitude install fvwm
<pre># aptitude install pekwm</pre>


Ora, avviando startx, dovremmo automaticamente entrare in FVWM. Bisogna ancora configurare tutto; per adesso avremo a disposizione solo:
Ora, avviando startx, dovremmo automaticamente entrare in PekWM. Bisogna ancora configurare tutto; per adesso avremo a disposizione solo un unico menu accessibile tramite un click destro sulla superficie vuota, grazie al quale sono possibili solo alcune azioni elementari:
*un unico menu accessibile tramite un click sulla superficie vuota:
*aprire finestre di terminale
*9 desktop virtuali (3 in orizzontale per 3 in verticale) raggiungibili spingendo il puntatore del mouse oltre il bordo della pagina.
*lanciare comandi da un prompt
 
*spostarsi tra le finestre
Tramite il menu possiamo lanciare xterm, riavviare o chiudere FVWM oppure avviare due diverse configurazioni guidate.
*riavviare o chiudere PekWM
*poco altro


=== Configurazione ===
=== Configurazione ===
Si tratta sostanzialmente di creare uno o più file di testo.
Si tratta sostanzialmente di metter mano nei file di testo contenuti in <code>~/.pekwm/</code>.
 
<!--
È consigliabile mettere tutto in una cartella di nome '''.fvwm''', da inserire nella propria home.
 
Se non si ha già pronta una configurazione, potrebbe essere una buona idea creare un file '''.fvwm2rc''' attraverso la procedura guidata ("Setup Form"), stamparlo
Se non si ha già pronta una configurazione, potrebbe essere una buona idea creare un file '''.fvwm2rc''' attraverso la procedura guidata ("Setup Form"), stamparlo
  $ lp ~/.fvwm/.fvwm2rc
  $ lp ~/.fvwm/.fvwm2rc
studiarlo e poi andare a modificarlo secondo le proprie esigenze.
studiarlo e poi andare a modificarlo secondo le proprie esigenze.
-->


== Da provare ==
== Da provare ==
Riga 91: Riga 89:
*[http://it.wikipedia.org/wiki/Interfaccia_grafica Interfacce grafiche]
*[http://it.wikipedia.org/wiki/Interfaccia_grafica Interfacce grafiche]
**[http://appuntilinux.mirror.garr.it/mirrors/appuntilinux/HTML/a2280.htm Capitoli relativi] su [http://it.wikipedia.org/wiki/Appunti_di_informatica_libera Appunti di informatica libera]
**[http://appuntilinux.mirror.garr.it/mirrors/appuntilinux/HTML/a2280.htm Capitoli relativi] su [http://it.wikipedia.org/wiki/Appunti_di_informatica_libera Appunti di informatica libera]
*[http://en.wikipedia.org/wiki/FVWM FVWM]
**[http://wiki.ubuntu-it.org/AmbienteGrafico/FvwmHowTo Guida introduttiva a FVWM]
**[http://frech.altervista.org/scarica.php?sezione=computer&file=Guida_pratica_a_fvwm2_v1.0.pdf Guida pratica alla configurazione di fvwm2]
**[http://www.zensites.net/fvwm/guide/index.html FVWM Beginners Guide]
*PekWM
*PekWM
**[http://www.squadrainformatica.com/?q=node/1141 Guida introduttiva a PekWM]
**[http://www.squadrainformatica.com/?q=node/1141 Guida introduttiva a PekWM]
**[http://linuax.wordpress.com/2009/12/25/un-altro-cugino-della-famiglia-box-wm-pekwm/ Altra guida un po' più approfondita]
**[http://linuax.wordpress.com/2009/12/25/un-altro-cugino-della-famiglia-box-wm-pekwm/ Altra guida un po' più approfondita]
----
Autore: [[Utente:Stemby|Stemby]]

Versione attuale delle 18:41, 3 nov 2019

Emblem-important.png Attenzione. Questa guida è obsoleta. Viene mantenuta sul Wiki solo per motivi di natura storica e didattica.


Introduzione

L'obiettivo di questa guida è quello di permettere di realizzare un Desktop Environment altamente personalizzato e tagliato su misura attorno alle esigenze dell'utente.

Sono molte infatti le situazioni in cui l'utenza non rinuncia all'utilizzo di sistemi operativi e software proprietari unicamente per il motivo che su un nuovo ambiente si trova del tutto disorientata.

Le alternative che, ad esempio, un datore di lavoro può valutare nel caso in cui volesse forzare la migrazione cercando nel contempo di minimizzare i traumi, sono sostanzialmente due:

  1. installare un clone pressoché perfetto del sistema a cui l'utente è abituato (ad esempio Ylmf OS o BRLix GNU/Linux);
  2. fornire un prodotto "sartoriale" costruito attorno alle reali esigenze.

Adottando questa seconda impostazione si può ottenere un ambiente di lavoro estremamente ottimizzato; inoltre saranno assenti tutti quegli strumenti superflui (in quanto non strettamente necessari alle attività specifiche per le quali il PC è destinato) che non hanno altro effetto se non quello di disorientare il nuovo utente. L'utilizzatore non avrà alcuna funzione amministrativa, neppure del suo ambiente di lavoro: dovrà unicamente usare ciò che troverà predisposto ed eventualmente suggerire migliorie (funzionali o anche solo visive) all'amministratore. In questo modo si semplifica notevolmente l'ambiente di lavoro, riducendo in modo sostanziale il numero di menu necessari.

Al contempo si vuole ottenere anche un ambiente esteticamente molto bello, in modo da incuriosire l'utilizzatore e non fargli rimpiangere il sistema operativo abbandonato. Le risorse hardware oggigiorno difficilmente sono infatti un fattore limitante.

Viste le esigenze, si è scelto di basare la costruzione del nostro Desktop Environment sul window manager PekWM.

Prima di iniziare

Prima di buttarsi sul PC a smanettare, è importante avere bene in mente l'obiettivo da perseguire.

Occorre immedesimarsi nell'utilizzatore finale: potrebbe essere utile osservare l'utente all'opera, prendendo appunti su quali siano le applicazioni che usa e su come si muove abitualmente. Sarà inoltre nostro compito trovare delle alternative dalle funzionalità simili, nel caso che i programmi attualmente in uso non esistano per Linux.

Successivamente, sempre su carta, è importante abbozzare quali potrebbero essere le caratteristiche per rendere funzionale l'interfaccia, e come realizzarle.

Debian

Il primo passo è ovviamente quello di installare il nostro sistema operativo. Abbiamo scelto di installare Debian Squeeze. Il consiglio è di creare una partizione /home/ separata e di installare solo un sistema minimale lasciando selezionato unicamente il metapacchetto "Sistema standard".

A questo punto è possibile aggiungere alcuni pacchetti non inclusi in questa installazione:

# aptitude update
# aptitude purge vim-tiny
# aptitude install vim ntp ssh

Riavviamo e controlliamo che tutto funzioni regolarmente.

Server grafico

Installazione

Una volta sicuri che il sistema sia installato e configurato correttamente, possiamo installare il server grafico:

# aptitude install xorg

Il sistema, nel caso non riconoscesse la scheda video, sceglierà di utilizzare i generici driver VESA, in modo tale da essere in grado di funzionare sostanzialmente su qualsiasi macchina. Con ogni probabilità però saranno disponibili dei driver migliori. Vista la grande varietà di hardware disponibile, questa non è la sede per ulteriori approfondimenti. Si consiglia unicamente di testare il proprio hardware sul sito di Kenshi Muto, dove verrà indicato anche il miglior driver libero disponibile.

Nel caso in cui si fosse a conoscenza del driver specifico della propria scheda video (il comando lspci contenuto nel pacchetto pciutils può tornare utile allo scopo), è possibile attuare un'installazione ancora più minimale:

# aptitude install x11-xserver-utils xinit xserver-xorg-video-[...]

dove, al posto di [...] va messa la parte finale del nome del pacchetto contenente il nostro driver.

Test

Proviamo ad avviare il server grafico:

$ startx

Dovrebbe visualizzarsi una finestra di xterm.

Proviamo a verificare che la risoluzione video sia corretta avviando un programma grafico un po' più impegnativo, ad esempio Iceweasel:

# aptitude install iceweasel-l10n-it
# exit
$ startx

Dentro alla finestra di xterm digitiamo dunque

$ iceweasel

Window manager

Installazione

L'installazione di PekWM è semplicissima: è sufficiente un banale

# aptitude install pekwm

Ora, avviando startx, dovremmo automaticamente entrare in PekWM. Bisogna ancora configurare tutto; per adesso avremo a disposizione solo un unico menu accessibile tramite un click destro sulla superficie vuota, grazie al quale sono possibili solo alcune azioni elementari:

  • aprire finestre di terminale
  • lanciare comandi da un prompt
  • spostarsi tra le finestre
  • riavviare o chiudere PekWM
  • poco altro

Configurazione

Si tratta sostanzialmente di metter mano nei file di testo contenuti in ~/.pekwm/.

Da provare

Riferimenti