# Guida per l'amministrazione di sistema dello GNOME Desktop

## Utilizzo di GConf

Le informazioni in questo capitolo descrivono come usare GConf per gestire le preferenze utente.

### Introduzione a GConf

GConf semplifica l'amministrazione delle preferenze per gli utenti dello GNOME Desktop. GConf consente agli amministratori di sistema di:

- Impostare valori vincolanti di particolari prefererenze per tutti gli utenti. In questo modo gli amministratori di sistema possono controllare quali utenti possano aggiornare particolari preferenze.

- Impostare valori predefiniti di particolari preferenze per tutti gli utenti.

- Usare i valori suggeriti di preferenze, che sono specificati nei file di definizione delle preferenze.

- Leggere la documentazione di ogni preferenza.

GConf inoltre notifica alle applicazioni quando il valore di una preferenza è cambiato, localmente o atteverso una rete. In questo modo, quando si cambia una preferenza, tutte le applicazioni che usano quella preferenza sono immediatamente aggiornate.

GConf è costituito dai seguenti componenti:

- Un repertorio (repository) delle preferenze utente.

- Un demone, `gconfd-2`.

- Uno strumento a riga di comando, `gconftool-2`.

### Repertorio di GConf

Ogni preferenza nel repertorio di GConf è espressa come una coppia chiave-valore. Una chiave di preferenza GConf è un elemento nel repertorio che corrisponde ad una preferenza di un'applicazione. Ad esempio la chiave di preferenza `/apps/gnome-session/options/show_splash_screen` corrisponde all'opzione Mostrare schermata di avvio al login nello strumento di preferenze Sessioni. L'interfaccia utente dello GNOME Desktop non presenta però tutte le chiavi di preferenza del repertorio di GConf. Ad esempio lo strumento di preferenze Pannello non contiene alcuna opzione corrispondente alla chiave `/apps/panel/global/tooltips_enabled`.

Il repertorio è strutturato come un semplice file system gerarchico e contiene quanto segue:

- Le directory che corrispondono alle applicazioni che usano il repertorio GConf. Ad esempio nel file system è presente la directory `/apps/metacity`.

- Le sottodirectory che corrispondo a categorie di preferenze. Ad esempio nel file system è presente la directory `/apps/metacity/general`.

- I file speciali che elencano le chiavi di preferenze presenti nella directory e contengono informazioni sulle chiavi. Ad esempio un file che contiene informazioni sulle chiavi relative alle preferenze del proxy HTTP è nella directory `/system/http_proxy`.

- Una directory `/schemas` che contiene i file che descrivono tutte le chiavi di preferenze.

Le chiavi di preferenza sono tipicamente costituite da valori semplici come stringhe, interi o liste di stringhe ed interi. Il formato di una chiave di preferenza nel repertorio dipende dal modulo di backend usato per leggere il repertorio. Il seguente è un esempio della chiave di preferenza `/desktop/gnome/interface/font_name` quando viene usato un modulo di backend in XML (Extensible Markup Language) per leggere il repertorio:

    <entry name="font_name" mtime="1038323555" muser="user123" type="string">
    <stringvalue>Sans 10</stringvalue></entry>

Quando in questa guida si fa riferimento ad una chiave di preferenza, il percorso della chiave è aggiunto al suo nome. Ad esempio la chiave di preferenza `font_name` posta nella sottodirectory `/desktop/gnome/interface` è indicata come `/desktop/gnome/interface/font_name`.

#### Sorgenti di configurazione GConf

Il repertorio GConf contiene una serie di posizioni di memorizzazione che sono definite sorgenti di configurazione. Le sorgenti di configurazione sono elencate nel file di percorso GConf. La posizione di tale file è `/etc/gconf/`numero-versione-gconf`/path`. Ciascun utente ha un file di percorso. Il file di percorso specifica le seguenti informazioni per ciascuna sorgente di configurazione:

- Il modulo di backend da usare per leggere il repertorio.

- I permessi sul repertorio.

- La posizione del repertorio.

Il file di percorso di GConf contiene anche delle istruzioni `include`. Il contenuto predefinito del file di percorso di GConf è il seguente:

    xml:readonly:/etc/gconf/gconf.xml.mandatory
    include /etc/gconf/2/local-mandatory.path
    include "$(HOME)/.gconf.path"
    include /etc/gconf/2/local-defaults.path
    xml:readwrite:$(HOME)/.gconf
    xml:readonly:/etc/gconf/gconf.xml.defaults

Quando GConf cerca il valore di una preferenza, le sorgenti di configurazione sono lette nell'ordine specificato dal file di percorso. La seguente tabella descrive le sorgenti di configurazione nel file di percorso:

Sorgente di configurazione | Descrizione
Vincolante | I permessi su questa sorgente di configurazione sono impostati a sola lettura. Gli utenti non possono sovrascrivere i valori in questa sorgente, quindi le preferenze in questa sorgente sono vincolanti.
Utente | Questa sorgente di configurazione è memorizzata nella directory `.gconf` posta nella directory home dell'utente. Quando un utente imposta un preferenza, la nuova informazione di preferenza è aggiunta in questa posizione. È possibile usare Editor di configurazione per modificare la sorgente di configurazione dell'utente.
Predefinita | Questa sorgente di configurazione contiene le impostazioni predefinite delle preferenze.

La sequenza delle sorgenti di configurazione nel file di percorso assicura che le impostazioni di preferenza vincolanti scavalchino le impostazioni di preferenza dell'utente. La sequenza inoltre assicura che quelle dell'utente scavalchino quelle predefinite. In pratica GConf applica le preferenze seguendo questo ordine di priorità:

1. Preferenze vincolanti

2. Preferenze specificate dall'utente

3. Preferenze predefinite

Le istruzioni `include` nel file di percorso di GConf consentono all'amministratore di specificare altre sorgenti di configurazione.

Sorgenti di configurazione incluse | Descrizione
`/etc/gconf/2/local-mandatory.path` | Usare questa sorgente di configurazione per memorizzare i valori delle preferenze vincolanti per un particolare sistema.
`$(HOME)/.gconf.path` | L'utente specifica la posizione della sorgente di configurazione nella directory home in un file di nome `.gconf.path`.
`/etc/gconf/2/local-defaults.path` | Usare questa sorgente di configurazione per memorizzare i valori di preferenze predefinite per un particolare sistema.

#### Schemi GConf

Uno schema GConf è un termine collettivo per una chiave schema GConf e un oggetto schema GConf. La tabella seguente descrive le chiavi schema e gli oggetti schema e le loro relazioni con le chiavi di preferenza:

Elemento | Descrizione
Chiave di preferenza | Un elemento nel repertorio GConf che corrisponde ad una preferenza di un'applicazione.
Chiave schema | Una chiave che memorizza un oggetto schema per una chiave di preferenza.
Oggetto schema | Un elemento in una sorgente di configurazione che delle informazioni suuna chiave di preferenza, come le seguenti: Il nome dell'applicazione che usa la chiave di preferenza. Il tipo del valore richiesto dalla chiave di preferenza, ad esempio intero, booleano e così via. Un valore predefinito per la chiave di preferenza. Breve documentazione della chiave di preferenza.

La seguente tabella fornisce alcuni esempi di una chiave di preferenza, di una chiave schema e di un oggetto schema:

Elemento | Esempio
Chiave di preferenza | `/desktop/gnome/interface/font_name`
Chiave schema | `/schemas/desktop/gnome/interface/font_name`
Oggetto schema |
    <schema>
      <applyto>/desktop/gnome/interface/font_name</applyto>
      <key>/schemas/desktop/gnome/interface/font_name</key>
      <owner>gnome</owner>
      <type>string</type>
      <default>Sans 10</default>
      <locale name="C">
        <short>Default font</short>
          <long>Name of the default font used by gtk+.</long>
      </locale>
    </schema>

È possibile associare una chiave schema con una chiave di preferenza. Ad esempio la seguente chiave `/desktop/gnome/interface/font_name` include una chiave schema:

    <entry name="font_name" mtime="1034873859"
    schema="/schemas/desktop/gnome/interface/font_name"/>

Quando si associa una chiave schema con una chiave di preferenza, la preferenza usa il valore suggerito che è specificato nell'oggetto schema della chiava schema. Il valore suggerito è contenuto nell'elemento `<default>` nell'oggetto schema. In modo predefinito tutte le chiavi di preferenza nella sorgente di configurazione predefinita sono associate con chiavi schema.

Di solito gli schemi sono memorizzati nella sorgente di configurazione predefinita.

#### File definizione schema GConf

Gli schemi sono generati da alcuni file definizione schema. Un file definizione schema definisce le caratteristiche di tutte le chiavi di una particolare applicazione; tali file hanno estensione `.schemas`.

I file definizione schema sono inclusi nella directory `/etc/gconf/schemas`. È possibile usare tali file per creare una nuova sorgente di configurazione.

Alcuni file definizione schema corrispondono fedelmente ad una parte dell'interfaccia utente dello GNOME Desktop. Ad esempio il file `system_http_proxy.schemas` corrisponde allo strumento di preferenze Proxy di rete. Alcuni file definizione schema contengono chiavi di preferenza che non sono presenti nell'interfaccia utente, come ad esempio la chiave `/apps/gnome-session/options/splash_screen_text`.

Alcune parti dell'interfaccia utente dello GNOME Desktop contengono preferenze che rappresentano chiavi di preferenza ricavate da più di un file definizione schema. Ad esempio lo strumento di preferenze Scorciatoie da tastiera contiene le preferenze che rappresentano le chiavi dai file `panel-global-config.schemas` e `metacity.schemas`.

### Demone GConf

Il demone GConf è chiamato `gconfd-2`. Tale demone notifica alle applicazioni quando cambia il valore di una preferenza. Ad esempio, selezionando di mostrare solo le icone nelle barre degli strumenti nella relativa opzione dello strumento di preferenza Barre menù e strumenti, le barre degli strumenti di tutte le applicazioni aperte sono aggiornate all'istante. Il demone GConf può operare localmente o attraverso una rete.

Per ogni utente è avviata un'istanza del demone GConf. Il demone non deve confrontarsi con problemi complessi come autenticazione e sicurezza dei dati. Al suo avvio, il demone carica il file di percorso GConf. Il demone gestisce tutti gli accessi tra applicazioni e sorgenti di configurazione.

Quando un'applicazione richede il valore di una chiave di preferenza, il demone cerca nelle sorgenti di configurazione nel seguente ordine:

1. ricerca il valore della chiave di preferenza in ogni sorgente di configurazione secondo l'ordine specificato nel file di percorso; se il valore viene trovato, restituisce tale valore;

2. se il valore non viene trovato, ricerca la chiave schema che corrisponde alla chiave di preferenza in ciascuna sorgente di configurazione secondo l'ordine specificato nel file di percorso;

3. se viene trovata la chiave schema, controlla il valore della chiave schema;

4. se il valore della chiave schema è un oggetto schema, restituisce il valore suggerito nell'elemento `<default>` dell'oggetto schema.

Inoltre il demone GConf mantiene una cache dei valori delle chiavi di preferenza. Tutte le applicazioni fanno uso di questa cache, cosicché le applicazioni debbono accedere alle sorgenti di configurazione soltanto una volta.

Per terminare il demone GConf, eseguire il seguente comando:

    gconftool-2 --shutdown

### Strumento a riga di comando GConf

GConf include uno strumento a riga di comando, `gconftool-2`. È possibile usare `gconftool-2` per eseguire le seguenti azioni:

- impostare i valori delle chiavi;

- mostrare i valori delle chiavi;

- installare schemi dai file definizione schema quando si installa un'applicazione.

Ad esempio il comando seguente serve a mostrare i valori di tutte le chiavi nella directory `/desktop/gnome` e nelle sue sottodirectory.

    gconftool-2 --recursive-list /desktop/gnome

Qui sotto sono elencate alcune delle opzioni che è possibileusare con il comando `gconftool-2` command. Per un elenco dettagliato delle opzioni da riga di comando, consultare man:gconftool-2(1).

### Opzioni di comando di gconftool-2

`--all-dirs`

- Elenca tutte le sottodirectory presenti nella directory specificata.

`--all-entries`

- Mostra i valori di tutte le chiavi nella directory specificata.

`--config-source=`sorgente-configurazione``

- Usare questa opzione assieme all'opzione `--direct` per specificare una sorgente di configurazione da usare. Se non si specifica alcuna sorgente di configurazione, il comando è eseguito su tutte le sorgenti di configurazione presenti nel file di percorso.

`--direct`

- Usare questa opzione assieme all'opzione `--config-source` per accedere direttamente ad una sorgente di configurazione. Quando si usa questa opzione, GConf scavalca il server. Assicurarsi che il demone GConf non sia in esecuzione prima di usare questa opzione.

`--dump`

- Genera una lista che contiene tutte le chiavi di preferenza in una directory specificata del repertorio GConf. La lista contiene le descrizioni in XML di tutte le chiavi. La lista stessa è contenuta in un elemento `<gconfentryfile>`.

  Ad esempio è possibile redirigere l'output attraverso questa opzione per generare un file contenente la lista di tutte le chiavi relative alla propria configurazione del pannello. È possibile usare l'opzione `--load` con tale file.

`--get`

- Mostra il valore di una chiave di preferenza specificata. Inoltre mostra i valori degli elementi nell'oggetto schema per una chiave schema specificata.

`--help`

- Mostra un messaggio d'aiuto sul comando `gconftool-2` e le opzioni che è possibile usare con tale comando.

`--load=`nome_file``

- Usare questa opzione per impostare i valori delle chiavi di preferenza nella directory corrente in una sorgente di configurazione ai valori nel file specificato. Tale file deve contenere le descrizioni XML delle chiavi all'interno di un elemento `<gconfentryfile>`.

`--long-desc=`descrizione``

- Usare questa opzione assieme all'opzione `--set-schema` per specificare una descrizione lunga per una chiave schema.

`--makefile-install-rule`

- Installa i file di definizione schema delle applicazioni.

`--owner=`proprietario``

- Usare questa opzione assieme all'opzione `--set-schema` per specificare un proprietario per una chiave schema.

`--recursive-list`

- Mostra i valori di tutte le chiavi di preferenza nelle sottodirectory della directory specificata.

`--recursive-unset`

- Reimposta i valori di tutte le chiavi di preferenza, in tutte le sottodirectory di una directory, dalle impostazioni utente alle impostazioni nella sorgente di configurazione predefinita.

`--set`

- Imposta il valore di una chiave di preferenza e scrive il valore nella sorgente di configurazione utente. Usare l'opzione `--type` assieme all'opzione `--set` per specificare il tipo di dato del valore che si vuole impostare. Ad esempio il seguente comando imposta il valore della chiave `/apps/gnome-terminal/profiles/Default/background_color` nella sorgente di configurazione utente:

      gconftool-2 \
        --set  "/apps/gnome-terminal/profiles/Default/background_color" \
        --type string "#000000"

  È possibile usare l'opzione `--direct` e quella `--config-source` assieme all'opzione `--set` per scrivere un valore in un'altra sorgente di configurazione.

`--set-schema`

- Imposta il valore di un attributo in una chiave schema e scrive tale valore nella sorgente di configurazione predefinita.

  Per specificare l'attributo che si vuole aggiornare usare assieme all'opzione `--set-schema` le seguenti opzioni:

  - `--type`

  - `--short-desc`

  - `--long-desc`

  - `--owner`

  Ad esempio il seguente comando imposta la descrizione breve nella chiave schema per la chiave `/apps/gnome-terminal/profiles/Default/background_color`:

      gconftool-2 \
        --set-schema "/schemas/apps/gnome-terminal/profiles/Default/background_color" \
        --short-desc "Colore di sfondo predefinito del terminale"

`--short-desc=`descrizione``

- Usare questa opzione assieme all'opzione `--set-schema` per specificare la descrizione breve di una chiave schema.

`--shutdown`

- Termina il demone GConf.

`--type=`tipo-dati``

- Usare questa opzione per specificare il tipo di dato quando si imposta il valore di una chiave di preferenza. È anche possibile usare questa opzione quando si imposta il valore di un attributo in una chiave schema. Qui di seguito una lista dei tipi di dato validi:

  - `bool`

  - `float`

  - `int`

  - `list`

  - `pair`

  - `string`

`--unset`

- Reimposta il valore di una chiave di preferenza dalle impostazioni utente alle impostazioni nella sorgente di configurazione predefinita.

`--usage`

- Mostra un breve messaggio di aiuto sul comando `gconftool-2` e le opzioni che è possibile usare con questo comando.

### Impostare i valori di preferenza

È possibile impostare un valore vincolante o un valore predefinito per una chiave. Per cambiare i valori vincolanti di preferenza o i valori predefiniti di preferenza, è necessario che nessun utente stia eseguendo un demone GConf. Assicurarsi quindi che tutti gli utenti abbiano effettuato il logout prima di modificare le loro preferenze.

Per impostare un valore vincolante o un valore predefinito per una chiave di preferenza usare il comando `gconftool-2` come segue:

    gconftool-2 --direct \
      --config-source sorgente-configurazione \
      --type tipo-dati \
      --set chiave-preferenzavalue

Ad esempio per impostare `wwwproxy.xyz.com` come l'host vincolante per il proxy HTTP, eseguire il seguente comando:

    gconftool-2 --direct \
      --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory \
      --type string \
      --set /system/http_proxy/host wwwproxy.xyz.com

In tal modo gli utenti non possono passare sopra a questo valore di preferenza.

Allo stesso modo è possibile usare il comando `gconftool-2` per impostare i valori predefiniti. Ad esempio, per impostare a cinque il numero predefinito di aree di lavoro, eseguire il seguente comando:

    gconftool-2 --direct \
      --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults \
      --type int \
      --set /apps/metacity/general/num_workspaces 5

In tal modo gli utenti possono passare sopra a questo valore di preferenza.

Prima di cambiare il valori vincolanti di preferenza o quelli predefiniti è necessario assicurarsi che tutti gli utenti abbiano effettuato il logout.

### Impostazione di preferenze generali

La seguente sezione descrive come assegnare valori vincolanti o predefiniti alle preferenze generali.

#### Impostare preferenze per il proxy HTTP

Per impostare le preferenze del proxy HTTP è necessario modificare i valori delle chiavi di preferenza nella directory `/system/http_proxy/`. Ad esempio, per impostare un valore vincolante per l'host di proxy HTTP, eseguire il comando seguente:

    gconftool-2 --direct \
      --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory \
      --type string \
      --set /system/http_proxy/host nome-proxy

Per impostare invece il valore predefinito per l'host di proxy HTTP, eseguire il comando seguente:

    gconftool-2 --direct \
       --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults \
       --type string \
       --set /system/http_proxy/host nome-proxy

È anche possibile impostare altre preferenze legate al proxy HTTP. Per informazioni su queste preferenze vedere il file definizione schema `system_http_proxy.schemas`.

#### Impostare preferenze di gestione stampa

Per impostare le preferenze di gestione delle stampe, è necessario modificare il valore delle chiavi di preferenza nella posizione `/apps/gnome-print-manager`. Ad esempio per fare in modo che ogni utente non veda i lavori di stampa degli altri utenti, impostare un valore vincolante come il seguente:

    gconftool-2 --direct \
      --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory \
       --type bool \
       --set /apps/gnome-print-manager/show_all_jobs false

Per impostare un valore predefinito per questa preferenza, eseguire il seguente comando:

    gconftool-2 --direct \
      --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults \
      --type bool \
      --set /apps/gnome-print-manager/show_all_jobs false

È anche possibile impostare altre preferenze legate alla gestione delle stampe. Per maggiori informazioni su tali preferenze consultare il file definizione schema `gnome-print-manager.schemas`.

#### Impostare il numero di aree di lavoro

Per impostare un numero vincolante di aree di lavoro usare il seguente comando:

    gconftool-2 --direct \
      --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory \
      --type int \
      --set /apps/metacity/general/num_workspaces intero

Per impostare un numero predefinito di aree di lavoro usare il seguente comando:

    gconftool-2 --direct \
      --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults \
      --type int \
      --set /apps/metacity/general/num_workspaces intero

È possibile impostare anche altre preferenze relative al window manager. Per informazioni su queste preferenze vedere il file definizione schema `metacity.schemas`

#### Impostare preferenze di accessibilità della tastiera

Per impostare le preferenze di accessibilità della tastiera modificare i valori delle chiavi di preferenza nella directory `/desktop/gnome/accessibility/keyboard`. Ad esempio per impostare un valore vincolante che attivi le caratteristiche di accessibilità della tastiera, eseguire il seguente comando:

    gconftool-2 --direct \
      --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory \
      --type bool \
      --set /desktop/gnome/accessibility/keyboard/enable true

Per impostare un valore predefinito per questa preferenza, eseguire il seguente comando:

    gconftool-2 --direct \
      --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults \
      --type bool \
      --set /desktop/gnome/accessibility/keyboard/enable false

È possibile impostare anche altre preferenze legate all'accessibilità della tastiera. Per maggiori informazioni su queste vedere il file definizione schema `desktop_gnome_accessibility_keyboard.schemas`.

#### Impostare preferenze per scorciatoie da tastiera

Per impostare le preferenze per le scorciatoie da tastiera, modificare i valori nella posizione `/apps/metacity/global_keybindings`. Esempio: fare in modo che tutti gli utenti usino solo la scorciatoia Alt F3 per aprire il dialogo Esegui applicazione. Per impostare questo valore vincolante, eseguire il seguente comando:

    gconftool-2 --direct \
      --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory \
      --type string \
      --set /apps/metacity/global_keybindings/panel_run_dialog '<Alt>F3'

È anche possibile impostare altre preferenze legate alle scorciatoie da tastiera. Per maggiori informazioni su queste vedere il file definizione schema `metacity.schemas`.

#### Impostazione di preferenze per pannelli ed oggetti di pannello

Il file `panel-default-setup.entries` specifica i seguenti dettagli dei pannelli nello GNOME Desktop:

- numero di pannelli;

- tipi di pannelli;

- proprietà dei pannelli;

- contenuto dei pannelli.

La configurazione dei singoli pannelli e degli oggetti di pannello è un'attività complessa. Tale configurazione necessita in primo luogo la comprensione della struttura del file `panel-default-setup.entries`. Per maggiori informazioni su tale file vedere la sezione successiva.

Per impostare le preferenze dei singoli pannelli e degli oggetti di pannello è necessario impostare in una sorgente di configurazione i valori di molte preferenze. Il modo più semplice per impostare i valori di preferenza del pannello è usare il comando `gconftool-2` assieme alle opzioni `--dump` e `--load`. Per maggiori informazioni su come impostare le preferenze per i pannelli e per gli oggetti di pannello, consultare gconf-3.

##### Specificazione di singoli pannelli e oggetti di pannello

Il file `panel-default-setup.entries` contiene sezioni che specificano i pannelli ed il loro contenuto, specificando i valori per le chiavi schema. Tale file risiede nella directory `/etc/gconf/schemas` ed è strutturato come segue:

The `panel-default-setup.entries` file is structured as follows:

1. Chiavi che specificano la struttura generale di pannelli, applet ed altri oggetti di pannello nello GNOME Desktop; le seguenti chiavi specificano il numero di pannelli, oggetti di pannello ed applet che appaiono nello GNOME Desktop:

   - `/apps/panel/default_setup/general/toplevel_id_list`

   - `/apps/panel/default_setup/general/object_id_list`

   - `/apps/panel/default_setup/general/applet_id_list`

   Le chiavi inoltre assegnano un identificatore ad ogni pannello, applet e oggetto di pannello; ad esempio, il seguente estratto da `panel-default-setup.entries` specifica che nello GNOME Desktop deve apparire un pannello:

       <entry>
         <key>toplevel_id_list</key>
         <schema_key>/schemas/apps/panel/general/toplevel_id_list</schema_key>
         <value>
           <list type="string">
             <value>
               <string>bottom_panel</string>
             </value>
           </list>
         </value>
       </entry>

   Nel file `panel-default-setup.entries`, l'identificatore `bottom_panel` identifica il pannello di bordo inferiore.

2. Chiavi che specificano le proprietà dei pannelli. Le chiavi di proprietà dei pannelli sono strutturate come segue:

       /apps/panel/default_setup/toplevels/nome-pannello/chiave-proprietà-pannello

   Ad esempio la chiave `/apps/panel/default_setup/toplevels/bottom_panel/size` specifica la dimensione del pannello inferiore.

3. Chiavi che specificano gli oggetti di pannello, le proprietà di tali oggetti e i pannelli in cui tali oggetti risiedono. Ad esempio il seguente estratto da `panel-default-setup.entries` specifica un oggetto Menù principale sul lato sinistro del pannello inferiore:

       <entrylist base="/apps/panel/default_setup/objects/main_menu">
         <entry>
           <key>object_type</key>
           <schema_key>/schemas/apps/panel/objects/object_type</schema_key>
           <value>
             <string>menu-object</string>
           </value>
         </entry>
         <entry>
           <key>toplevel_id</key>
           <schema_key>/schemas/apps/panel/objects/toplevel_id</schema_key>
           <value>
             <string>bottom_panel</string>
           </value>
         </entry>
         <entry>
           <key>position</key>
           <schema_key>/schemas/apps/panel/objects/position</schema_key>
           <value>
             <int>0</int>
           </value>
         </entry>
         <!-- Possibly more entry elements -->
       </entrylist>

4. Chiavi che specificano le applet, le loro preferenze ed i pannelli in cui tali applet risiedono. Ad esempio il seguente estratto da `panel-default-setup.entries` specifica l'applet Lista delle finestre nel pannello inferiore:

       <entrylist base="/apps/panel/default_setup/applets/window_list">
         <entry>
           <key>object_type</key>
           <schema_key>/schemas/apps/panel/objects/object_type</schema_key>
           <value>
             <string>bonobo-applet</string>
           </value>
         </entry>
         <entry>
           <key>toplevel_id</key>
           <schema_key>/schemas/apps/panel/objects/toplevel_id</schema_key>
           <value>
             <string>bottom_panel</string>
           </value>
         </entry>
         <entry>
           <key>position</key>
           <schema_key>/schemas/apps/panel/objects/position</schema_key>
           <value>
             <int>2</int>
           </value>
         </entry>
         <!-- Possibly more entry elements -->
         <entry>
           <key>bonobo_iid</key>
           <schema_key>/schemas/apps/panel/objects/bonobo_iid_type</schema_key>
           <value>
             <string>OAFIID:GNOME_WindowListApplet</string>
           </value>
         </entry>
       </entrylist>

   Il OAFFID è un identificativo univoco per una applet. Per trovare il OAFFID per una particolare applet, consultare il file `.server` per l'applet nella directory `/usr/lib/bonobo/servers`. Ad esempio, il seguente estratto da `GNOME_Wncklet_Factory.server` mostra il OAFIID per l'applet Lista finestre:

       <oaf_server iid="OAFIID:GNOME_WindowListApplet"
       type="factory" location="OAFIID:GNOME_Wncklet_Factory">

##### Impostare preferenze per singoli pannelli ed oggetti di pannello

Per impostare le preferenze per un pannello e per gli oggetti su un pannello fare quanto segue:

1. Effettuare il login in una sessione GNOME e configurare il pannello come richiesto.

2. Usare lo strumento a riga di comando `gconftool-2` assieme all'opzione `--dump` per generare un file che contiene una descrizione XML della propria configurazione del pannello. L'opzione `--dump` genera una lista contenente tutte le chiavi di preferenza in una directory specificata del repertorio GConf.

   Ad esempio il seguente comando crea una descrizione XML della configurazione del pannello in un file di nome `impostazione-pannello.entries`:

       gconftool-2 --dump /apps/panel/ > impostazione-pannello.entries

3. Aprire il file `impostazione-pannello.entries` in un editor di testo e modificarlo secondo esigenza.

   Ad esempio, si potrebbe desiderare cambiare la posizione dei file desktop entry. Il seguente è un estratto da un file generato con l'opzione `--dump`:

       <entry>
         <key>objects/object_16/launcher_location</key>
         <schema_key>/schemas/apps/panel/objects/launcher_location</schema_key>
         <value>
           <string>hadjaha-00adce02f7.desktop</string>
         </value>
       </entry>

   Nell'esempio qui sopra, si potrebbe voler cambiare il riferimento a `hadjaha-00adce02f7.desktop` ad un altro file desktop entry che è disponibile globalmente.

   Quando si genera una configurazione del pannello con l'opzione `--dump`, le posizioni degli oggetti di pannello sono posizioni assolute. Si potrebbe voler cambiare tali posizioni da assolute in relative. L'oggetto alla estrema sinistra del pannello ha un valore `position` pari a `0`. L'oggetto che segue ha un valore `position` pari a `1` e così via. Se si vuole che le posizioni degli oggetti siano relative al lato destro del pannello, impostare il valore della chiave `right_stick` a `true`.

4. Usare lo strumento a riga di comando `gconftool-2` assieme all'opzione `--load` per impostare i valori della sorgente di configurazione predefinita ai valori indicati nel file `impostazione-pannello.entries`. Ad esempio il comando seguente imposta i valori delle chiavi nella sorgente di configurazione prefefinita ai valori delle corrispondenti chiavi in `impostazione-pannello.entries`:

       gconftool-2 --direct \
         --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults \
         --load impostazione-pannello.entries

### Impostazione di preferenze dell'aspetto

Le sezioni seguenti descrivono come assegnare valori vincolanti o valori predefiniti per le preferenze dell'aspetto.

#### Impostare preferenze per il tipo di carattere

Per impostare le preferenze per il tipo di carattere è necessario modificare il valore di due chiavi di preferenza. La tabella seguente mostra le chiavi da modificare e la parte dell'interfaccia utente cui le chiavi corrispondono:

Posizione GConf | Componente interfaccia utente
/desktop/gnome/interface/font_name | Strumento di preferenza Caratteri, opzione Carattere per le applicazioni.
/apps/nautilus/preferences/desktop_font | Strumento di preferenza Caratteri, opzione Carattere per il desktop.

Ad esempio per impostare il tipo di carattere vincolante per le applicazioni a `Sans 12`, eseguire il seguente comando:

    gconftool-2 --direct \
      --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory \
      --type string \
      --set /desktop/gnome/interface/font_name "Sans 12"

Per impostare invece il tipo di carattere predefinito per il desktop a `palatino 12`, eseguire il seguente comando:

    gconftool-2 --direct \
      --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults \
      --type string \
      --set /apps/nautilus/preferences/desktop_font "palatino 12"

#### Impostare preferenze per lo sfondo

Per impostare le preferenze per lo sfondo della scrivania, è necessario modificare i valori delle chiavi di preferenza nella posizione `/desktop/gnome/background`. Ad esempio, per impostare una immagine vincolante per lo sfondo, eseguire il seguente comando:

    gconftool-2 --direct \
      --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory \
      --type string \
      --set /desktop/gnome/background/picture_filename nomefile.png

Per impostare un valore predefinito per questa preferenza, eseguire il seguente comando:

    gconftool-2 --direct \
      --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults \
      --type string \
      --set /desktop/gnome/background/picture_filename nomefile.png

È possibile impostare anche altre preferenze dello sfondo. Per maggiori informazioni su queste, consultare il file definizione schema `desktop_gnome_background.schemas`.

#### Impostare preferenze per l'immagine di avvio

Per impostare le preferenze per l'immagine d'avvio (splash screen), è necessario modificare i valori delle chiavi di preferenza nella posizione `/apps/gnome-session/options/`. Ad esempio per fare in modo che gli utenti non abbiano una immagine d'avvio, impostare un valore vincolante come segue:

    gconftool-2 --direct \
      --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory \
      --type bool \
      --set /apps/gnome-session/options/show_splash_screen false

Per impostare un valore predefinito per questa preferenza, eseguire il seguente comando:

    gconftool-2 --direct \
      --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults \
      --type bool \
      --set /apps/gnome-session/options/show_splash_screen false

È possibile impostare anche altre preferenze dell'immagine d'avvio. Per maggiori informazioni su queste consultare il file definizione schema `gnome-session.schemas`.

### Ripristinare i valori predefiniti delle preferenze

Per ripristinare i valori predefiniti delle preferenze per un utente, eseguire il seguente comando:

    gconftool-2 --direct \
      --config-source sorgente-configurazione-utente \
      --recursive-unset

Sostituire `sorgente-configurazione-utente` con la sorgente di configurazione nella directory `.gconf` nella directory home dell'utente.

Questo comando reimposta (reset) i valori di tutte le chiavi di preferenza in tutte le sottodirectory dalle impostazioni dell'utente alle impostazioni nella sorgente di configurazione predefinita.

## Personalizzazione dei menu

Le informazioni in questo capitolo descrivono come sono implementati i menu nello GNOME Desktop e come è possibile personalizzarli.

### Introduzione ai menu

Lo GNOME Desktop implementa i menu in accordo alla specifica dei menu XDG. Supportando tale specifica, in GNOME è possibile:

- Personalizzare con facilità la gerarchia dei menu. È possibile modificare un numero limitato di file per personalizzare la gerarchia dei menu. Non è necessario modificare le applicazioni o spostare dei file.

- Installare con semplicità le applicazioni. Non è necessario fornire alle applicazioni informazioni sulla gerarchia dei menu all'atto dell'installazione.

- Configurare i menu in modo che gli utenti non possano modificarli.

I menu dello GNOME Desktop fanno uso dei seguenti componenti:

- File definizione menu

- File desktop entry

- File directory entry

### File definizione menu

I file menu definiscono la gerarchia dei menu usata nella barra dei menu di GNOME. Modificando questi file, è possibile personalizzare i menu per tutti gli utenti o per un singolo utente, in base alla posizione del file `applications.menu` che si modifica.

I file menu debbono risiedere in `$XDG_CONFIG_DIRS/menus/applications.menu`. Se `$XDG_CONFIG_DIRS`

$XDG_CONFIG_DIRS è la variabile d'ambiente definita nella specifica delle directory base XDG.

non è impostata, allora viene usato il percorso predefinito `/etc/xdg/`. Ciò implica anche che una versione specifica per l'utente può essere posizionata presso il file `$XDG_CONFIG_HOME/menus/applications.menu`, che è cercato per primo. Se `$XDG_CONFIG_HOME` non è impostata, allora viene usato il percorso predefinito `~/.config/`. Le directory che appaiono per prime in `$XDG_CONFIG_DIRS` hanno la predecendenza qualora ci siano diversi file `applications.menu`. Il primo file trovato viene usato, i restanti vengono ignorati.

Per chiarire l'ordine in cui viene cercato nei percorsi, qui di seguito c'è un esempio della risoluzione della posizione di `applications.menu`:

1. Cerca in ogni directory in `$XDG_CONFIG_HOME` per trovare `/menus/applications.menu`. Se `$XDG_CONFIG_HOME` non è impostata, allora usa come predefinita la directory `~/.config/`

2. Cerca in ogni directory in `$XDG_CONFIG_DIRS` per trovare `/menus/applications.menu`. Se `$XDG_CONFIG_DIRS` non è impostata, allora usa come predefinita la directory `/etc/xdg/`

3. Usa il primo file `applications.menu`.

È possibile vedere un esempio di un file `.menu` in example-menu. In tale esempio, il menu di primo livello è nominato `Applications`; ciò è specificato usando l'elemento `<Name>`. Il menu `Applications` contiene un singolo sottomenu, ma sono consentiti diversi sottomenu. Ciascun sottomenu può presentare anche un elemento `<Include>`. Lo scopo dell'elemento `<Include>` è di applicare un filtro sull'insieme delle desktop entry disponibili usando regole di corrispondenza.

Ad esempio, l'elemento `<Category>` è una semplice regola di corrispondenza che seleziona una desktop entry solo se la chiave `Categories` contiene quanto racchiuso dell'elemento `<Category>`. Nell'esempio, il menu `Accessories` includerà una desktop entry solo se quest'ultima contiene Utility, ma non System nella chiave Categories. Per maggiori informazioni sulla chiave Categories, consultare menustructure-desktopentry.

#### Esempio di un file `.menu`

    <!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN"
     "http://www.freedesktop.org/standards/menu-spec/1.0/menu.dtd">
    <Menu>
      <Name>Applications</Name>
      <Directory>Applications.directory</Directory>

      <!-- Legge le posizioni standard dei file .directory e .desktop -->
      <DefaultAppDirs/>
      <DefaultDirectoryDirs/>

      <!-- Sottomenu Accessori -->
      <Menu>
        <Name>Accessories</Name>
        <Directory>Accessories.directory</Directory>
        <Include>
          <And>
            <Category>Utility</Category>
            <Not>
              <Category>System</Category>
            </Not>
          </And>
        </Include>
      </Menu> <!-- Fine di Accessories -->

      <!-- possibili altri sottomenu -->

    </Menu> <!-- Fine di Applications -->

In menustructure-xmlmenu sono descritti alcuni degli elementi presenti nei file `.menu`. Per una descrizione più dettagliata, consultare la specifica dei menu XDG.

### Elementi dei file definizione menu

Elemento | Descrizione
`<Menu>` | L'elemento radice che può contenere elementi `<Menu>` annidati che definiscono dei sottomenu. Il modo in cui tali elementi sono annidati determina la struttura dei menu.
`<Name>` | Specifica il nome del menu. Ogni elemento `<Menu>` deve contenere un elemento `<Name>`.
`<Directory>` | Specifica il nome del file directory entry che specifica il nome, il commento e l'icona usati per il menu. Se questo elemento non è specificato, allora l'elemento `<Name>` viene usato per mostrare il nome del menu. In modo predefinito, i file `.directory` sono ricercati nella posizione `$XDG_DATA_DIRS/desktop-directories/`, come definito nella specifica dei menu XDG.
`<DefaultAppDir>` | Questa è un'istruzione che indica che tutti i file desktop entry disponibili in `$XDG_DATA_DIRS/applications/` debbono essere scansionati. Se questa istruzione non è inclusa, allora tale posizione non è scansionata in cerca dei file desktop entry.
`<DefaultDirectoryDirs>` | Questa è un'istruzione che indica che tutte i file directory entry disponibili in `$XDG_DATA_DIRS/desktop-directories/` debbono essere scansionati. Se questa istruzione non è inclusa, allora tale posizione non e' scansionata in cerca dei file directory entry.
`<Include>` | Contiene un elenco di regole di corrispondenza in base alle quali viene generato il contenuto di un menu. Può includere le regole di corrispondenza `<Filename>`, `<Category>`, `<And>`, `<Or>`, `<Not>` o `<All>`. Se sono presenti più regole, a tali regole viene applicato un OR logico, in modo che sono inclusi i file desktop entry che hanno corrispondenza con una qualsiasi regola.
`<Exclude>` | L'opposto di `<Include>`; tutti i file desktop entry che hanno corrispondenza in questo elemento sono esclusi dal precedente insieme di elementi inclusi. Per tale motivo, questo elemento deve apparire dopo l'elemento `<Include>`.
`<Filename>` | Una regola di corrispondenza che seleziona un file desktop entry quando il Desktop File-Id corrisponde al contenuto dell'elemento `<Filename>`.
`<Category>` | Una regola di corrispondenza che seleziona un file desktop entry quando la chiave Categories corrisponde al contenuto dell'elemento `<Category>`.
`<And>` | Una regola di corrispondenza che seleziona un file desktop entry quando questo è selezionato da tutte le regole di corrispondenza annidate nell'elemento `<And>`.
`<Or>` | Una regola di corrispondenza che seleziona un file desktop entry quando questo è selezionato da almeno una delle regole di corrispondenza annidate nell'elemento `<Or>`.
`<Not>` | Una regola di corrispondenza che non seleziona un file desktop entry quando questo è selezionato da almeno una delle regole di corrispondenza annidate nell'elemento `<Not>`.
`<All>` | Una regola di corrispondenza che seleziona tutti i file desktop entry.

### File desktop entry

Un file desktop entry è un file di dati che fornisce informazioni su una voce di un menu. Il file desktop entry specifica dei dettagli per la voce quali un nome, un comando da eseguire, un'icona e così via. Il file desktop entry contiene inoltre alcune parole chiave che determinano la posizione della voce nella gerarchia dei menu.

Desktop entry files must reside in the `$XDG_DATA_DIRS/applications` directory and must have a `.desktop` file extension. If `$XDG_DATA_DIRS`

$XDG_DATA_DIRS è la variabile d'ambiente definita nella specifica delle directory base XDG.

is not set, then the default path is `/usr/share` is used. This also implies that user specific desktop entries may be located at `$XDG_DATA_HOME/applications` which is searched first. If `$XDG_DATA_HOME` is not set, then the default path `~/.local/share` is used. Desktop entries are collected from all directories in the `$XDG_DATA_DIRS` environment variable. Directories which appear first in `$XDG_DATA_DIRS` are given precedence when there are several `.desktop` files with the same name.

Il seguente è un esempio di file desktop entry:

    [Desktop Entry]
    Encoding=UTF-8
    Name=Calculator
    Name[fr]=Calculatrice
    Name[it]=Calcolatrice
    ...
    Comment=Perform calculations
    Comment[fr]=Effectue des calculs compliqués
    Comment[it]=Esegue vari calcoli
    ...
    Exec=gcalctool
    Icon=accessories-calculator
    Terminal=false
    Type=Application
    StartupNotify=true
    Categories=GNOME;GTK;Utility;Calculator

In menustructure-TBL-7 sono descritte le chiavi più importanti nei file desktop entry. Per maggiori informazioni sui file desktop entry, consultare la specifica dei desktop entry XDG.

### Chiavi desktop entry

Chiave desktop entry | Descrizione
`Categories` | Specifica le parole chiave che descrivono la voce, separate con un punto e virgola (;). Per un elenco di parole chiave di categoria standard, consultare la specifica di menu del desktop presso http://www.freedesktop.org/Standards/menu-spec I file definizione menu mappano i file desktop entry nei menu usando regole di corrispondenza basate sulla chiave Categories.
`Comment` | Specifica una breve descrizione della voce. Il commento è mostrato come suggerimento quando si punta la voce nel menu.
`Encoding` | Specifica la codifica del file desktop entry.
`Exec` | Specifica un comando da eseguire quando si sceglie la voce dal menu.
`Icon` | Specifica il nome di file di un'icona che rappresenta la voce. Non va specificato il percorso del nome del file o l'estensione del file.
`MimeType` | Specifica i tipi MIME che l'applicazione può gestire.
`Name` | Specifica il nome della voce. Tale nome è mostrato nella voce di menu.
`NoDisplay` | Questa opzione significa Questa applicazione esiste, ma non va mostrata nei menu.
`Terminal` | Specifica se il comando indicato nella chiave `Exec` deve essere eseguito in una finestra di terminale. Se il valore è `true` il comando è eseguito in una finestra di terminale. Se il comando non crea una propria finestra d'esecuzione, il valore di questa chiave deve essere `true`.
`Type` | Specifica il tipo della voce. Il valore deve essere uno dei seguenti: `Application`: una voce che avvia un'applicazione. `Link`: una voce che collega a un file, una cartella o una risorsa remota (some un sito FTP, una pagina web, una condivisione Windows...). `FSDevice`: una voce che è un device di file system. `Directory`: una voce che è una Directory.

Per maggiori informazioni sulle chiavi nei file desktop entry, consultare la relativa specifica presso l'URL seguente:

        http://www.freedesktop.org/Standards/desktop-entry-spec

Anche i lanciatori nei pannelli e gli oggetti di scrivania usano i file desktop entry; tali file forniscono ai lanciatori e agli oggetti di scrivania le stesse informazioni delle voci di menu. Ad esempio, i file desktop entry forniscono il comando da eseguire quando un utente sceglie il lanciatore o l'oggetto.

### File directory entry

Un file directory entry è un file di dati che fornisce informazioni su un menu. Il file directory entry specifica i dettagli per un menu come un nome, un suggerimento ed un'icona. I file directory entry hanno estensione `.directory`.

I file directory entry debbono risiedere nella directory `$XDG_DATA_DIRS/desktop-directories/`. Se `$XDG_DATA_DIRS` non è impostata, allora viene usato il percorso predefinito `/usr/share/`. Ciò implica anche che i file directory entry specifici per l'utente possono essere posizionati in `$XDG_DATA_HOME/desktop-directories/`, che viene cercata per prima. Se `$XDG_DATA_HOME` non è impostata, allora è usato il percorso predefinito `~/.local/share/`. I file directory entry sono raccolti da tutte le directory nella variabile d'ambiente `$XDG_DATA_DIRS`. Le directory che appaiono per prime in `$XDG_DATA_DIRS` hanno la predecenza qualora vi siano diversi file `.directory` con lo stesso nome.

Il seguente è un esempio di file directory entry:

    [Desktop Entry]
    Name=Graphics
    Name[fr]=Graphisme
    Name[it]=Grafica
    ...
    Comment=Graphics applications
    Comment[fr]=Applications graphiques
    Comment[it]=Applicazione grafiche
    ...
    Icon=gnome-graphics
    Type=Directory
    Encoding=UTF-8

In menustructure-TBL-15 sono descritte le chiavi principali dei file directory entry.

### Chiavi directory entry

Chiave directory entry | Descrizione
`Name` | Specifica il nome del menu. Tale nome è mostrato nel menu.
`Comment` | Specifica una breve descrizione del menu. Il commento è mostrato come suggerimento quando si punta il menu.
`Icon` | Specifica il nome di file di un'icona che rappresenta il menu. Non va specificato il percorso del nome del file o l'estensione del file.
`Type` | Specifica il tipo di menu. Il valore di questa chiave è sempre `Directory`.

### Modifica dei menu di sistema

È possibile modificare manualmente i file di configurazione del menu ed i file dei dati del menu per personalizzarli.

#### Aggiunta dei menu

Per aggiungere un menu per tutti gli utenti, procedere come segue:

1. Creare un file directory entry per la voce che si vuole aggiungere. Porre il file directory entry nella directory `$XDG_DATA_DIRS/desktop-directories/`. Per maggiori informazioni sui file directory entry, consultare menustructure-14.

2. Individuare il file `$XDG_CONFIG_DIRS/menus/applications.menu`.

3. Nel file `.menu` aggiungere un elemento `<Menu>` per il nuovo menu. Per maggiori informazioni sui file `.menu`, consultare menustructure-13.

4. Creare all'interno di `<Menu>` un elemento `<Name>`. Il contenuto di quest'ultimo elemento dovrebbe essere il nome da attribuire al menu.

5. Creare all'interno di `<Menu>` un elemento `<Directory>`. Il contenuto di quest'ultimo elemento dovrebbe essere il nome del file desktop entry.

6. Consultare menustructure-4 per informazioni su come aggiungere una voce al menu.

Al successivo login, il menu sarà mostrato nella barra dei menu per tutti gli utenti.

##### Menu mancante?

Se non si è specificata alcuna regola di corrispondenza nell'elemento `<Include>` o se nessun file desktop entry ha corrispondenza con la regola, è possibile che il menu non appaia nella barra dei menu.

#### Aggiunta di una voce ad un menu

Per aggiungere una voce ad un menu per tutti gli utenti, procedere come segue:

1. Creare un file desktop entry per la voce che si vuole aggiungere. Per maggiori informazioni sui file desktop entry, consultare menustructure-desktopentry.

2. Posizionare il file desktop entry nella cartella `$XDG_DATA_DIRS/applications/`

3. Individuare il file `$XDG_CONFIG_DIRS/menus/applications.menu`.

4. Verificare che un elemento `<Menu>` contenga un elemento `<Include>` che presenti una regola di corrispondenza per selezionare il file desktop entry creato al passo 1.

Al successivo login, gli utenti troveranno la voce di menu nella posizione assegnata.

#### Modifica delle proprietà di un menu

Per modificare le proprietà di un menu per tutti gli utenti, procedere come segue:

1. Individuare il file `$XDG_CONFIG_DIRS/menus/applications.menu`.

2. Trovare in questo file la voce `<Menu>` che corrisponde al menu che si vuole modificare. Annotare il nome file del file directory entry indicato nell'elemento `<Directory>`.

3. Individuare il file directory entry per tale menu. Modificare il contenuto per cambiare le proprietà del menu. Per maggiori informazioni sui file `.directory` consultare menustructure-14.

#### Modifica di una voce di menu

Per modificare una voce di menu, procedere come segue:

1. Individuare nella directory `$XDG_DATA_DIRS/applications/` il file desktop entry corrispondente alla voce di menu.

2. Modificare il file desktop entry per cambiare le proprietà della voce di menu. Per maggiori informazioni sui file desktop entry, consultare menustructure-desktopentry.

#### Eliminazione di una voce da un menu

Per eliminare una voce da un menu per tutti gli utenti:

1. Individuare il file `$XDG_CONFIG_DIRS/menus/applications.menu`.

2. Trovare in questo file l'elemento `<Menu>` che contiene il file desktop entry che si vuole eliminare.

3. Inserire un elemento `<Exclude>` dopo il tag di chiusura dell'elemento `<Include>`. Assicurarsi che questo sia nell'elemento `<Menu>` individuato al passo 2.

4. Inserire la regola di corrispondenza `<Filename>` come sottoelemento di `<Exclude>` per escludere uno specifico file desktop entry.

Al successivo login, la voce di menu non sarà più mostrata nei menu degli utenti. In menustructure-deleteitem è mostrato come ciò può essere fatto nel file `applications.menu`. Il file desktop entry per `dasher.desktop` è stato esplicitamente escluse dall'essere mostrato nel menu per l'accessibilità.

##### Eliminazione di una voce da un menu

    <!-- ... -->

      <Menu>
        <Name>Accessibility</Name>
        <Directory>Accessibility.directory</Directory>
        <Include>
          <And>
            <Category>Accessibility</Category>
            <Not><Category>Settings</Category></Not>
          </And>
        </Include>
        <Exclude>
          <Filename>dasher.desktop</Filename>
        </Exclude>
      </Menu>

    <!-- ... -->

### Modifica dei menu utente e unione dei menu

È possibile usare la seguente applicazione dello GNOME Desktop per modificare i menu degli utenti:

- Editor menu di GNOME

Gli utenti hanno a disposizione un semplice editor per modificare i propri menu. Per maggiori informazioni, consultare Lavorare coi menu nella Guida utente di GNOME. In alternativa è possibile creare e modificare manualmente un file menu utente.

Per creare manualmente un menu personalizzato per un utente, deve esistere il file `$XDG_CONFIG_HOME/menus/applications.menu`. Nel caso in cui `$XDG_CONFIG_HOME` non è impostata, viene usata la directory predefinita `~/.config/`. Poiché questa è la prima posizione analizzata in cerca del file `applications.menu`, ha la precedenza su tutti gli altri file di menu.

I menu utente possono contenere tutti gli elementi descritti in menustructure-13. Per un elenco completo di elementi consentiti, consultare la specifica dei menu XDG.

Poiché i file menu dell'utente hanno la precedenza sul file menu di sistema, essi sostituiscono il menu di sistema a meno che non siano esplicitamente uniti al menu di sistema. Informazioni sull'unione dei menu sono disponibili nelle seguente sottosezione.

#### Unione del menu di sistema

Spesso, un utente ha solo necessità di aggiungere o eliminare delle voci di menu in aggiunta al menu di sistema standard. Per supportare dei singoli cambiamenti come questi, è raccomandato l'uso dell'elemento `<MergeFile>` in congiunzione con l'attributo `type="parent"` all'interno del file `applications.menu` dell'utente.

L'elemento `<MergeFile>` permette l'unione di un menu con il contenuto del file menu dell'utente. Quando si specifica l'attributo `type="parent"`, allora il contenuto dell'elemento `<MergeFile>` è ignorato e il successivo file `applications.menu` nella directory `$XDG_CONFIG_DIRS/menus/` viene usato per l'unione.

##### Vecchie specifiche

L'attributo `type` non era incluso nelle vecchie specifiche e in queste veniva semplicementa richiesta la posizione del file menu da unire comecontenuto dell'elemento `<MergeFile>`. Come risultato, è ancora possibile vedee una posizione specificata nel contenuto di `<MergeFile>` anche se `type="parent"`.

L'unione è eseguita nel modo seguente:

- I figli dell'elemento radice `<Menu>` nel file menu unito

  Il file menu unito fa riferimento al successivo file `applications.menu` nella directory `$XDG_CONFIG_DIRS/menus/`

  sono sostituiti con l'elemento `<MergeFile>` nel file menu di base.

- Tutti gli elementi `<Menu>` figli con lo stesso nome sono consolidati in un singolo elemento `<Menu>`. Ciò viene eseguito apponendo tutti gli elementi figlio di ciascun elemento `<Menu>` con lo stesso name nell'ultima occorrenza dell'elememento di menu.

In menustructure-systemmerge è mostrato un esempio di un file menu utente che unisce esplicitamente il file menu di sistema.

##### Unione del menu di sistema

    <!DOCTYPE Menu PUBLIC \"-//freedesktop//DTD Menu 1.0//EN\"
     \"http://www.freedesktop.org/standards/menu-spec/menu-1.0.dtd\">

    <Menu>
      <Name>Applications</Name>
      <MergeFile type=\"parent\">/etc/xdg/menus/applications.menu</MergeFile>
      <Menu>
        <Name>Accessibility</Name>
        <Exclude>
         <Filename>dasher.desktop</Filename>
        </Exclude>
      </Menu>
    </Menu>

#### Unione di menu arbitrari

Arbitrari file menu possono essere uniti all'incirca nello stesso modo dei menu di sistema. La differenza è che l'attributo `type` deve essere impostato a `path` o deve essere escluso dall'elemento `<MergeFile>` per poter permettere questo tipo di unione.

L'unione è eseguita nella stessa maniera, fatto salvo il fatto che la posizione del file menu unito è specificata nel contenuto dell'elemento `<MergeFile>`.

## Installazione dei temi

Questo capitolo descrive i temi, le impostazioni dei temi che sono disponibili nello GNOME Desktop, come installare opzioni per le impostazioni dei temi e come creare opzioni personalizzate.

### Introduzione ai temi

Un tema è un gruppo di impostazioni coordinate che specifica l'aspetto visivo di una parte dello GNOME Desktop. Gli utenti possono scegliere un tema per modificare l'aspetto dello GNOME Desktop.

Un tema contiene impostazioni che hanno effetto su diverse parti dello GNOME Desktop, di seguito descritte:

Controlli

- L'impostazione dei controlli in un tema determina l'aspetto visivo di finestre, pannelli ed applet. Determina inoltre l'aspetto visivo degli elementi conformi a GNOME dell'interfaccia che appaiono su finestre, pannelli ed applet, come menu, icone e pulsanti. Alcune opzioni dell'impostazione dei controlli disponibili sono progettate per speciali necessità di accessibilità. Gli utenti possono scegliere una opzione per l'impostazione dei controlli dalla scheda Controlli nei dettagli dello strumento di preferenza Tema.

Bordo finestra

- L'impostazione del bordo finestra in un tema determina l'aspetto del solo bordo, o cornice, intorno alle finestre. Gli utenti possono scegliere una opzione per l'impostazione della cornice dalla scheda Bordo finestra nei dettagli dello strumento di preferenza Tema.

Icon

- Le impostazioni delle icone in un tema determinano l'aspetto delle icone sul pannello e sullo sfondo della scrivania. Gli utenti possono scegliere una opzione per l'impostazione delle icone dalla scheda Icone nei dettagli dello strumento di preferenza Tema.

### File indice del tema

Ad ogni tema è associato un file indice che ne definisce le caratteristiche. Il nome del file indice è `/usr/share/themes/`nome-tema`/index.theme`.

Il seguente è un esempio di file indice di tema:

    [Desktop Entry]
    Type=X-GNOME-Metatheme
    Name=High Contrast Inverse
    Comment=White-on-black text and icons
    Name[it]=Forte contrasto, inverso
    Comment[it]=Bianco su nero per testo ed icone
    Encoding=UTF-8

    [X-GNOME-Metatheme]
    GtkTheme=HighContrastInverse
    IconTheme=HighContrastInverse
    MetacityTheme=Atlanta
    ApplicationFont=Sans 10

La seguente tabella descrive le parole chiave del file indice di tema:

### Parole chiave nel file indice di tema

Chiave del file indice | Descrizione
`Type` | Specifica che il tema determina l'aspetto di diverse opzioni del tema, come i controlli, il bordo delle finestre e le icone.
`Name` | Il nome del tema. Questo è il nome del tema che viene mostrato nello strumento di preferenze Tema. (n.d.t. tra parentesi quadre il codice della lingua)
`Comment` | Una breve descrizione del tema. Questo è il testo mostrato sotto il nome del tema nello strumento di preferenze Tema (n.d.t. tra parentesi quadre il codice della lingua).
`GtkTheme` | Corrisponde all'impostazione dei controlli nei dettagli dello strumento di preferenze Tema. Specifica quale opzione di impostazione dei controlli applicare a finestre, pannelli ed applet.
`IconTheme` | Corrisponde all'impostazione delle icone nello strumento di preferenze Tema. Specifica quale opzione di impostazione delle icone applicare a pannelli e sfondo della scrivania.
`MetacityTheme` | Corrisponde all'impostazione della cornice della finestra nello strumento di preferenze Tema. Specifica quale opzione di impostazione della cornice di finestra applicare alle finestre.
`ApplicationFont` | Corrisponde all'impostazione per il tipo di carattere delle applicazioni nelle strumento di preferenze Caratteri.

### Installare una nuova opzione per i controlli

È possibile aggiungere una nuova opzione per l'impostazione dei controlli nello strumento di preferenze Tema. Le opzioni per i controlli risiedono nella directory `/usr/share/themes/`. La struttura tipica nel file system di una opzione per i controlli è la seguente:

File opzione

- `/usr/share/themes/`nome-opzione`/gtk-2.0/gtkrc`

File di immagine

- `/usr/share/themes/`nome-opzione`/pixmaps/*.*`

Di solito una nuova opzione per l'impostazione dei controlli è fornita sotto forma di file `.tar.gz`. Per installare una nuova opzione basta decomprimere il file `.tar.gz`, quindi spacchettare (untar) il file `.tar` nella directory `/usr/share/themes`.

Gli utenti possono installare opzioni proprie per l'impostazione dei controlli. Se un utente installa un'opzione, questa è memorizzata nella directory `$HOME/.themes`.

### Installare una nuova opzione per la cornice delle finestre

È possibile aggiungere una nuova opzione per l'impostazione della cornice delle finestre nello strumento di preferenze Tema. Le opzioni per la cornice delle finestre risiedono nella directory `/usr/share/themes/`nome-opzione`/metacity-1`. La struttura tipica nel file system di una opzione per la cornice delle finestre è la seguente:

File opzione

- `/usr/share/themes/`nome-opzione`/metacity-1/metacity-theme-1.xml`

File di immagine

- `/usr/share/themes/`nome-opzione`/metacity-1/*.*`

Di solito una nuova opzione per l'impostazione della cornice delle finestre è fornita sotto forma di file `.tar.gz`. Per installare una nuova opzione basta decomprimere il file `.tar.gz`, quindi spacchettare (untar) il file `.tar` nella directory `/usr/share/themes`.

Gli utenti possono installare opzioni proprie per l'impostazione della cornice delle finestre. Se un utente installa un'opzione, questa è memorizzata nella directory `$HOME/.themes`.

### Installare una nuova opzione per le icone

È possibile aggiungere una nuova opzione per l'impostazione delle icone nello strumento di preferenze Tema. Le opzioni per le icone risiedono nella directory `/usr/share/icons/`. La struttura tipica nel file system di una opzione per le icone è la seguente:

File opzione

- `/usr/share/icons/`nome-opzione``

File di immagine

- `/usr/share/icons/`nome-opzione`/icons/*.*`

Di solito una nuova opzione per l'impostazione delle icone è fornita sotto forma di file `.tar.gz`. Per installare una nuova opzione basta decomprimere il file `.tar.gz`, quindi spacchettare (untar) il file `.tar` nella directory `/usr/share/icons`.

Gli utenti possono installare opzioni proprie per l'impostazione delle icone. Se un utente installa un'opzione, questa è memorizzata nella directory `$HOME/.icons`.

### Installazione di icone per i temi

Lo GNOME Desktop fornisce diversi temi preparati appositamente per utenti con speciali necessità visive. Ad esempio alcuni temi sono stati preparati per utenti ipovedenti. Affinché un'icona sia visualizzata propriamente in ciascun tema, sono quindi necessarie diverse versioni della stessa.

Potrebbe risultare necessario installare una nuova icona per una applicazione. In tal caso si dovrebbero creare diverse versioni di tale icona, così che questa sia visualizzata correttamente nei vari temi. Si dovrebbero creare diverse versioni dei seguenti tipi di icone:

- Icone che sono usate all'interno di applicazioni nello GNOME Desktop;

- Icone che sono usate internamente da applicazioni GKT+, o icone stock delle GTK+.

Quando si installa una nuova icona, si devono creare diverse versioni della stessa, in modo che l'icona sia mostrata correttamente nei temi. È possibile creare le icone in svariati formati, ad esempio nel formato PNG (Portable Network Graphic). La dimensione consigliata per le icone dell'ambiente desktop è 48 per 48 pixel. A tale dimensione la maggior parte dei temi è in grado di riscalare le icone.

Quando si installa una nuova icona, creare le seguenti versioni a 48 pixel per 48 pixel dell'icona:

- Icona regolare

- Icona a contrasto ridotto

- Icona a contrasto elevato

- Icona a contrasto elevato, inverso

Se possibile, creare anche versioni a 16 pixel per 16 pixel di ciascuna delle icone sopra elencate, per i temi che non richiedono i caratteri larghi (large print).

Installare le icone nelle posizioni dei file di immagine specificate per il tema in themes-3 o themes-5. Ad esempio per aggiungere una icona al tema HighContrastLargePrint, aggiungerla nella directory `/usr/share/themes/HighContrastLargePrint/pixmaps`. Aggiungere riferimenti alle icone ai file di tema pertinenti. Ad esempio per aggiungere delle icone al tema HighContrastLargePrint, aggiungere i riferimenti alle icone nel file `/usr/share/themes/HighContrastLargePrint/gtk-2.0/gtkrc`. Modificare il file gtkrc per il tema per associare l'icona con un identificatore di icona dello stock GTK.

Per maggiori informazioni su come creare icone per i lanciatori di applicazioni e per i pannelli, consultare http://www.freedesktop.org/Standards/icon-theme-spec.html.

### Creare un'opzione personalizzata per i controlli

Se le opzioni per l'impostazione dei controlli mal si adattano alle esigenze degli utenti del sistema, è possibile creare una opzione personalizzata. Per fare ciò, procedere come segue.

1. Creare una struttura di directory per l'opzione nella directory `/usr/share/themes` usando la stessa struttura delle altre opzioni. Ad esempio per creare un'opzione di nome SmallPrint, creare le seguenti directory:

   - `/usr/share/themes/SmallPrint/`

   - `/usr/share/themes/SmallPrint/gtk-2.0`

2. Una volta individuato il file `gtkrc` che si avvicina di più alle esigenze degli utenti, copiare tale file nella directory `gtk-2.0` della nuova opzione.

3. Aprire il file `gtkrc` con un editor di testo e modificare gli attributi degli elementi dell'interfaccia secondo necessità.

4. Se la nuova opzione include delle immagini, installarle nella directory `pixmaps` della nuova opzione. Se la nuova opzione usa le immagini di un'altra opzione, non è necessario copiarle, ma basta assicurarsi che sia corretto il riferimento alle immagini nella voce `pixmap_path` nel file `gtkrc`.

A questo punto la nuova opzione per l'impostazione dei controlli è a disposizione degli utenti.

Per maggiori informazioni sui file `gtkrc` consultare http://developer.gnome.org/doc/API/2.0/gtk/index.html.

## Configurazione dei tipi di carattere

Questo capitolo descrive come configurare i tipi di carattere, o font, nello GNOME Desktop.

### Introduzione alla configurazione dei tipi di carattere

Lo GNOME Desktop fa uso della libreria `fontconfig` per la configurazione e personalizzazione dei tipi di carattere. La libreria `fontconfig` può usare qualsiasi genere di tipo di carattere, inclusi i tipi di carattere PostScript Type 1 e quelli TrueType.

La libreria `fontconfig` fornisce un elenco di tutti i tipi di carattere disponibili su un sistema GNOME Desktop. Per redigere tale elenco, `fontconfig` ricerca nelle directory elencate nel file `/etc/fonts/fonts.conf`. Per visualizzare tutti i tipi di carattere disponibili su un sistema, accedere alla posizione `fonts:///` con il file manager.

Per maggiori informazioni sulla libreria `fontconfig`, consultare l'URL seguente:

          http://freedesktop.org/software/fontconfig

### Sostituzione di tipo di carattere

La libreria `fontconfig` esegue la sostituzione dei tipi di carattere sia interamente sui tipi, sia sui singoli caratteri. Se il sistema necessita di visualizzare un tipo di carattere che non è disponibile, `fontconfig` tenta di mostrarne un altro che sia simile. Ad esempio, se una pagina web richiede di visualizzare il tipo di carattere Verdana, ma questo non è installato nel sistema, `fontconfig` mostra un tipo di carattere simile, come ad esempio Helvetica. L'elenco dei tipi di carattere simili è definito nel file `/etc/fonts/fonts.conf`.

Se il sistema necessita di visualizzare un carattere che non è presente nel tipo di carattere selezionato, `fontconfig` tenta di visualizzarlo usando un tipo diverso, ma simile. Ad esempio, si potrebbe aver selezionato Bistream Vera Sans come tipo di carattere per Editor di testo. La famiglia Bitstream Vera non include i caratteri cirillici. Se si apre un documento che contiene uno di questi, Editor di testo fa uso di un tipo di carattere simile che includa i caratteri cirillici per visualizzare quel carattere.

La libreria `fontconfig` inoltre definisce degli alias per i tipi di carattere, ad esempio `serif`, `sans-serif` e `monospace`. Quando si seleziona uno degli alias per un tipo di carattere, il sistema usa il primo tipo di carattere definito per quell'alias nel file `/etc/fonts/fonts.conf`.

### Aggiungere un tipo di carattere per tutti gli utenti

Per aggiungere un tipo di carattere per tutti gli utenti, procedere come segue:

1. Copiare il file del tipo di carattere in una delle directory elencate nel file `{sysconfdir}/fonts/fonts.conf`. Di solito i tipi di carattere sono memorizzati nella directory `/usr/share/fonts/`.

2. La libreria `fontconfig` aggiorna automaticamente l'elenco dei tipi di carattere. Se tale elenco non risulta aggiornato, eseguire il seguente comando:

       fc-cache nome-directory

### Aggiungere un tipo di carattere per un singolo utente

Per aggiungere un tipo di carattere per un singolo utente, procedere come segue:

1. Copiare il file del tipo di carattere nella directory `$HOME/.fonts` dell'utente. Se si trascina il file del tipo di carattere nella posizione `fonts:///` con il file manager, il file del tipo di carattere è copiato nella directory `$HOME/.fonts`.

2. La libreria `fontconfig` aggiorna automaticamente l'elenco dei tipi di carattere. Se tale elenco non risulta aggiornato, eseguire il seguente comando:

       fc-cache nome-directory

## Tipi MIME

Questo capitolo descrive come le applicazioni individuano i tipi MIME, come registrare i tipi MIME e come aggiungere applicazioni allo GNOME Desktop.

La finalità di questo capitolo è di rendere semplice per un amministratore la comprensione della modalità di configurazione delle diversi parti del database MIME e di fornire una panoramica generale del sistema MIME. Non verranno forniti dettagli per quanto non necessario. Per i dettagli è bene fare riferimento alla specifica delle informazioni mime condivise XDG.

### Introduzione ai tipi MIME

Un tipo MIME (Multipurpose Internet Mail Extension) identifica il formato di un file. Applicazioni come i browser per Internet e i client di email fanno riferimento al tipo MIME di un file per stabilire l'azione da compiere sul file. Ad esempio un'applicazione per email può usare il tipo MIME per individuare il formato di un allegato e scegliere un visualizzatore appropriato per tale file, come ad esempio aprire un documento di testo con gedit.

Come ulteriore esempio, nel file manager Nautilus è necessaria la conoscenza del tipo MIME di un file per compiere le seguenti azioni:

- Aprire il file con un'applicazione appropriata.

- Mostrare una stringa che descriva il tipo di file.

- Mostrare un'icona appropriata che rappresenti il file.

- Mostrare un elenco di altre applicazioni che possano aprire il file.

I tipi MIME sono stati proposti in origine come una standard per identificare il corpo di un messaggio email. Attualmente, molti sistemi usano i tipi MIME per identificare il formato di file arbitrari sul file system. I tipi MIME sono composti da un tipo di supporto di primo livello seguito da un identificatore di sottotipo, separati da un carattere slash inversa, `/`. Un esempio di tipo MIME è `image/jpeg`: il tipo di supporto è `image`, mentre l'identificatore di sottotipo è `jpeg`. Il tipo di supporto di primo livello è pensato per fornire una categorizzazione generica basata sul contenuto del file, mentre l'identificatore di sottotipo è pensato per identificare con precisione il formato del file.

Attualmente esistono otto tipi di supporto approvati dallo IANA (Internet Assigned Naming Authority). Questi otto tipi di supporto sono

- application
- audio
- image
- message
- model
- multipart
- text
- video

. Esistono molti sottotipi per ciascun tipo di supporto; per maggiori informazioni, consultare i tipi di supporto MIME presso il sito web dello IANA.

L'implementazione dei tipi MIME in GNOME segue la specifica delle informazioni mime condivise XDG. Questa specifica fornisce i seguenti vantaggi:

- Posizioni standard per tutti i file relazionati al sistema MIME.

- Un modo standard per le applicazioni per registrare le informazioni su un nuovo tipo MIME.

- Un modo standard per recuperare il tipo MIME di un file.

- Un modo standard di recuperare informazioni su un tipo MIME.

Nel resto del capito vengono descritti i file e le directory che costituiscono il database MIME, i dettagli sui file sorgente XML, come creare o modificare tipi MIME, come registrare le applicazioni come gestori di certi tipi MIME e, infine, come aggiungere un'applicazione allo GNOME Desktop.

### Il database MIME

Il database MIME è una raccolta di file che fornisce:

- L'insieme dei tipi MIME conosciuti

- Il metodo per determinare il tipo MIME di un file

- Le meta-informazioni su un tipo MIME, come una descrizione comprensibile da usare quando mi mostrano file di tale tipo.

#### Posizione

Per un amministratore, il passo iniziale più importante per comprendere il sistema MIME è conoscere le posizioni in cui tali file sono memorizzati. Poiché la specifica delle informazioni mime condivise XDG è stata proposta dal X Desktop Group, tale specifica fa uso della specifica delle directory base XDG. È consigliato familiarizzare con questa specifica, poiché è importante anche per altre attività di amministrazione come la modifica dei menu. Un breve sommario delle posizioni delle directory appartenenti alla specifica MIME è fornito più avanti.

Il database MIME è creato a partire da un insieme di file posizionati nelle directory `$XDG_DATA_HOME/mime` e `$XDG_DATA_DIRS/mime`. Se tali variabili d'ambiente non sono impostate, allora vengono usati i rispettivi valori predefiniti `~/.local/share` e `/usr/local/share:/usr/share`. Come si può vedere nel valore predefinito per `$XDG_DATA_DIRS`, ciascuna variabile d'ambiente è attualmente un elenco di directory separate dai due punti. Il database dell'utente presso `$XDG_DATA_HOME/mime` ha la precedenza sul database di sistema presso `$XDG_DATA_DIRS/mime` quando vengono incontrate definizioni in conflitto. Così come nella specifica delle informazioni mime condivise XDG, nel resto di questo documento si farà riferimento a questo insieme di directory come `<MIME>`.

Ad esempio, assumendo i percorsi predefiniti per le variabile d'ambiente, Caricare `<MIME>/text/plain.xml` significa caricare i seguenti file:

- `~/.local/share/mime/text/plain.xml`

- `/usr/local/share/mime/text/plain.xml`

- `/usr/share/mime/text/plain.xml`

#### Contenuto

Qui di seguito c'è l'elenco delle directory e dei file presenti all'interno del database MIME, con associata una breve descrizione:

`<MIME>/packages/`

- Questa directory contiene un numero qualsiasi di file XML, ciascuno dei quali descrive una raccolta di tipi MIME. In modo predefinito, il file `freedesktop.org.xml` è installato nella directory `/usr/share/mime/packages`. Questo file contiene tutti i tipi MIME predefiniti che sono ampiamente usati e riconosciuti.

  Quelle applicazioni che forniscono informazioni su nuovi tipi MIME debbono installare qui un nuovo singolo file XML. In funzione del prefisso in cui l'applicazione è installata, il file dell'applicazione viene creato nella sottodirectory `/mime/package` di una delle directory in `$XDG_DATA_HOME:$XDG_DATA_DIRS`. Ad esempio, per un'applicazione installata in `/usr/bin` un nuovo file sorgente XML dovrebbe essere installato nella directory `/usr/share/mime/packages`. Per maggiori informazioni sui file XML nella directory `packages`, consultare mimetypes-source-xml.

`<MIME>/`SUPPORTO`/`SOTTOTIPO`.xml`

- Queste directory e file sono generati automaticamente dall'applicazione update-mime-database a partire dalla raccolta dei file sorgente XML nella sottodirectory `<MIME>/packages/`. Ad esempio, per ciascun elemento `mime-type` nel file `/usr/share/mime/packages/freedesktop.org.xml`, viene creata una directory presso `/usr/share/mime/` con il tipo di supporto del tipo MIME. Un file XML viene creato in tale directory con l'identificatore di sottotipo. Il contenuto del file XML creato include commenti (e loro traduzioni), designazioni di sottoclassi e alias.

  ##### Esempio: file `/usr/share/mime/text/plain.xml`

      <?xml version='1.0' encoding='utf-8'?>
      <mime-type xmlns="http://www.freedesktop.org/standards/shared-mime-info" type="text/plain">
      <!--Creato automaticamente da update-mime-database. NON MODIFICARE!-->
        <comment>plain text document</comment>
        <!-- possibili altre traduzioni -->
        <comment xml:lang="es">documento de texto sencillo</comment>
        <comment xml:lang="eu">testu soileko dokumentua</comment>
        <comment xml:lang="fi">perustekstiasiakirja</comment>
        <comment xml:lang="fr">document plein texte</comment>
        <comment xml:lang="it">documento testo semplice</comment>
        <!-- possibili altre traduzioni -->
      </mime-type>

  Questo file è generato dall'applicazione update-mime-database, usando il file sorgente XML predefinito `freedesktop.org.xml`.

`<MIME>/globs`

- Contiene una riga con un tipo MIME ed un modello di glob, separati da due punti. I file che hanno corrispondenza con il modello di glob, sono risolti nel tipo MIME specificato prima dei due punti. Ci sono regole speciali su come i nomi di file vengono fatti corrispondere al modello di glob; per maggiori dettagli consultare la specifica delle informazioni mime condivise XDG.

  Anche questo file è generato dall'applicazione update-mime-database, usando il file sorgente XML predefinito `freedesktop.org.xml`.

`<MIME>/magic`

- Un file binario che contiene informazioni su come risolvere i tipi MIME indovinando (sniffing) il contenuto del file. In pratica si tratta di un insieme di una o più regole tipo: controlla la presenza della stringa `%PDF-` al byte con offset 0 nel file; se trovato, assegna al file il tipo MIME `application/pdf`.

  Anche questo file è generato dall'applicazione update-mime-database.

`<MIME>/XMLnamespaces`

- Contiene una mappatura dei namespace XML nei tipi MIME. Ciascuna riga contiene tre campi: il namespace, il localName e il tipo MIME. Ciascun campo è separato da uno spazio. Se il localName è vuoto, allora ci sono due spazi tra il namespace e il tipo MIME.

  Anche questo file è generato dall'applicazione update-mime-database.

`<MIME>/aliases`

- Contiene un elenco di alias per ciascun tipo MIME. Un alias è semplicemente un tipo MIME che talvolta può essere noto come un altro tipo. Per ciascuna riga nel file ci sono due campi: il primo è il nome dell'alias, il secondo è tipo MIME. I campi sono separati da una spazio.

  Anche questo file è generato dall'applicazione update-mime-database.

`<MIME>/subclasses`

- Contiene un elenco di tipi MIME di sottoclasse e i rispettivi tipi MIME genitore. Dalla specifica delle informazioni mime condivise XDG:

  > Un tipo è una sottoclasse di un altro tipo se ogni istanza del primo tipo è anche un'istanza del secondo. Ad esempio, tutti i file image/svg sono anche file text/xml, text/plain e application/octet-stream. Le sottoclassi sono riferite al formato, piuttosto che alla categoria di dati (ad esempio non c'è alcuna classe "foglio di calcolo generico" da cui far derivare tutti i fogli di calcolo).

  Il formato di questo file è simile a quello del file `aliases`. Ciascuna riga contiene due campi: il primo campo è il tipo MIME di sottoclasse e il secondo campo è il tipo MIME genitore. Ciascun campo è separato da uno spazio.

  Anche questo file è generato dall'applicazione update-mime-database.

#### Aggiornamento del database MIME

La comprensione della modalità di aggiornamento del database MIME è importante per gli amministratori che desiderino aggiungere nuovi tipi MIME al sistema o comunque modificare informazioni su un tipo MIME. L'applicazione update-mime-database è fornita a tale scopo.

Ad esempio, se un'applicazione installa informazioni su un nuovo tipo MIME in `/usr/share/mime/packages/diff.xml`, allora deve essere eseguito update-mime-database con il parametro `/usr/share/mime`.

    # update-mime-database /usr/share/mime
    ***
    * Aggiornameto database MIME in /usr/share/mime...
    ***

Il database MIME viene aggiornato scansionando tutti i file sorgente XML nella directory `<MIME>/packages`.

### I file sorgente XML

Posizionati nella directory `<MIME>/packages`, tali file XML forniscono tutte le informazioni riguardo i tipi MIME che sono installati nel database dall'applicazione update-mime-database. Ci sono poche regole da rispettare in un file XML:

- Il file deve specificare il namespace come `http://www.freedesktop.org/standards/shared-mime-info`

- L'elemento radice deve essere `mime-info`

- Possono essere specificati zero o più elementi `mime-type` come figli dell'elemento `mime-info`. L'attributo `type` è usato per specificare il tipo MIME che si sta definendo.

In modo predefinito il file `freedesktop.org.xml` è installato nella directory `packages` in uno dei percorsi `<MIME>` (di solito in `/usr/share/mime/packages`).

In mimetypes-mimeinfo-elements è fornita una breve descrizione di ciascun elemento che può essere presente come figlio dell'elemento `mime-type`.

### Child elements of `<mime-type>`

Elemento (e attributi) | Descrizione
`<glob pattern="`*.xyz`">` | Questo elemento specifica un modello di glob nei confronti dei nomi di file. Se il nome di file corrisponde, allora ad esso viene assegnato il tipo MIME del genitore dell'elemento `mime-type`, L'attributo `pattern` è vincolante.
`<magic priority="`50`">` | Questo elemento contiene come suoi figli un elenco di elementi `match`. L'attributo `priority` è opzionale e specifica una priorità tra 0 e 100, dove 100 è la priorità di corrispondenza più alta. Ciascun elemento figlio `match` presenta tre attributi richiesti: `type` `offset` `value` più un quarto attributo opzionale, `mask`. Per informazioni dettagliate su questi attributi, consultare la specifica di informazioni mime condivise XDG.
`<alias type="`supporto`/`sottotipo`">` | Questo elemento definisce un alias per l'elemento genitore `mime-type`. Un alias è semlicemente un tipo MIME che talvolta è noto come un altro tipo. Ad esempio `application/x-pdf` è un alias per il tipo MIME `application/pdf`.
`<sub-class-of type="`supporto`/`sottotipo`">` | Questo elemento definisce l'elemento genitore `mime-type` come una sottoclasse del tipo MIME specificato nell'attributo `type`. Ad esempio, `image/svg` è una sottocasse del tipo MIME `text/xml`, `text/plain` e `application/octet-stream`.
`<comment xml:lang="`locale`">` | Questo elemento fornisce una descrizione intellegibile per il tipo MIME. Ci possono essere zero o più occorrenze di questo elemento, purché ciascuna contenga un unico valore per l'attributo `xml:lang`.
`<root-XML namespaceURI="`namespace`" localName="">` | Se un file viene riconosciuto come file XML, allora questo elemento aiuta nella ulteriore classificazione dello stesso, attraverso l'uso degli attributi `namespaceURI` e `localName`, entrambi richiesti. L'attributo `namespaceURI` è il namespace del documento e `localName` è il nome dell'elemento radice del documento. Se `localName` è presente, ma il suo valore è vuoto, allora l'emento radice può non avere un nome, ma il namespace deve comunque corrispondere.

Il modo più semplice per capire questi file è di osservare un esempio. Estratto dalla specifica delle informazioni mime condivise XDG, in mimetypes-source-xml-example è mostrato il contenuto di un file XML dal nome `diff.xml`. Tale esempio definisce il tipo MIME `text/x-diff`. Ci sono diversi elementi `comment` che forniscono un nome intellegibile al tipo MIME in diverse lingue. Il tipo MIME presenta sia regole di corrispondenza attraverso modelli di glob sia attraverso l'uso di sniffing del contenuto (anche noti come regole `magic`). Ogni file con estensione `.diff` o `.patch` verrà risolto in tale tipo MIME. In aggiunta ogni file il cui contenuto comincia con le stringhe specificate nell'attributo `value` dell'elemento `match`, verrà risolto nel tipo MIME `text/x-diff`.

L'ordine in cui i modelli di glob e le regole magic sono applicate va oltre le finalità di questo documento. Per dettagli su ciò, consultare la specifica delle informazioni mime condivise XDG.

#### Esempio di un file sorgente XML: `diff.xml`

    <?xml version='1.0'?>
    <mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
      <mime-type type="text/x-diff">
        <comment>Differences between files</comment>
        <comment xml:lang="af">verskille tussen lêers</comment>
        <comment xml:lang="it">Differenze tra file</comment>
        <!-- more translated comment elements -->
        <magic priority="50">
          <match type="string" offset="0" value="diff\t"/>
          <match type="string" offset="0" value="***\t"/>
          <match type="string" offset="0" value="Common subdirectories: "/>
        </magic>
        <glob pattern="*.diff"/>
        <glob pattern="*.patch"/>
      </mime-type>
    </mime-info>

### Modifica dei tipi MIME

Non si dovrebbe per alcun motivo modificare direttamente i file sorgente XML che sono installati nella directory `<MIME>/packages` dalle applicazioni. Piuttosto è possibile modificare il file `Overrides.xml`. Questo file ha la precedenza su tutti gli altri file sorgente XML installati nella stessa directory `packages`. Questa regola non si applica agli autori delle applicazioni: gli autori dovrebbero creare un nuovo file sorgente XML e posizionarlo nella opportuna directory `<MIME>/packages` (per mezzo del proprio `Makefile`).

È possibile modificare il database MIME per tutti gli utenti del sistema o per un particolare utente in base alla posizione del file che si cambia. Per modificare il database per tutti gli utenti, apportare i cambiamenti al file `Overrides.xml` nella directory `$XDG_DATA_DIRS/mime/packages`. Per modificare il database per un singolo utente, apportare i cambiamenti al file `Overrides.xml` nella directory `$XDG_DATA_HOME/mime/packages`.

Dopo aver apportato i cambiamenti, è sempre necessario eseguire l'applicazione update-mime-database, con la directory in cui è posizionato il database MIME come primo parametro.

#### Aggiunta e modifica dei tipi MIME

Per aggiungere uno o più tipi MIME per tutti gli utenti:

1. Creare o modificare un file sorgente XML `Overrides.xml`, contenente le definizioni per i tipi MIME. Per maggiori informazioni, consultare mimetypes-source-xml.

2. Posizionare il file `Overrides.xml` nella directory `/usr/share/mime/packages`.

3. Aggiornare il database MIME eseguendo update-mime-database usando l'account di sistema.

       update-mime-database /usr/share/mime

Per aggiungere uno o più tipi MIME per un singolo utente, seguire la stessa procedura, provvedendo però a posizionare il file `Overrides.xml` nella directory `~/.local/share/mime/packages`. In aggiunta, eseguire update-mime-database con `~/.local/share/mime/packages` come primo parametro.

#### Verifica dei cambiamenti

Dopo aver apportato un cambiamento al database MIME e aver aggiornato il suo contenuto, è possibile verificare se il cambiamento abbia avuto effetto usando l'applicazione gnomevfs-info. Questa applicazione stampa il tipo MIME ed altre informazioni utili su un file.

Eseguendo gnomevfs-info su un file SVG viene fornito l'output mostrato qui sotto. Si può notare che l'applicazione predefinita per questo tipo MIME è `eog.desktop`; le applicazioni predefinite sono discusse in mimetypes-registering.

    $ gnomevfs-info mime-diagram.svg
    Name              : mime-diagram.svg
    Type              : Regular
    MIME type         : image/svg+xml
    Default app       : eog.desktop
    Size              : 14869
    Blocks            : 32
    I/O block size    : 4096
    Local             : YES
    SUID              : NO
    SGID              : NO
    Sticky            : NO
    Permissions       : 600644
    Link count        : 1
    UID               : 1000
    GID               : 100
    Access time       : Wed Feb 22 18:24:47 2006
    Modification time : Wed Feb 22 18:24:42 2006
    Change time       : Wed Feb 22 18:24:42 2006
    Device #          : 775
    Inode #           : 297252
    Readable          : YES
    Writable          : YES
    Executable        : NO
    $

In mimetypes-newtype-example è spiegata passo passo la creazione di un nuovo tipo MIME e la verifica dei cambiamenti usando gnomevfs-info.

#### Esempio `application/x-newtype`

Per creare (o sovrapporsi a) un tipo MIME e verificare i cambiamenti:

1. Creare nella propria directory home un nuovo file vuoto dal nome `testing.xyz`.

2. Usare gnomevfs-info sul file per individuare il tipo MIME. Il tipo MIME per questo file dovrebbe essere individuato come `text/plain` poiché non vi è alcun modello di glob o regola magic che ha corrispondenza col file

   Quando nessun modello di glog o regola magic ha corrispondeza con un file, tale file viene risolto nel tipo MIME `text/plain` se contiene dati di testo o `application/octet-stream` per dati binari. Se il file è vuoto, allora il valore predefinito è `text/plain`.

   .

3. Creare (o modificare) il file `Overrides.xml` come descritto in mimetypes-addmodify con il contenuto fornito in mimetypes-overrides-xml.

4. Aggiornare il database usando update-mime-database.

5. Usare gnomevfs-info per verificare che i cambiamenti apportati abbiano avuto effetto. Si dovrebbe leggere che il tipo MIME per il file `testing.xyz` è `application/x-newtype`.

       $ gnomevfs-info testing.xyz | grep MIME
       MIME type         : application/x-newtype
       $

##### File `Overrides.xml`

    <?xml version='1.0' encoding='utf-8'?>
    <mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
      <mime-type type="application/x-newtype">
        <comment>nuovo tipo mime</comment>
        <glob pattern="*.xyz"/>
      </mime-type>
    </mime-info>

### Registrazione di applicazioni per tipi MIME

La registrazione di applicazioni per la gestione di tipi MIME è molto semplice. Le applicazioni sono registrate creando una chiave `MimeType` nei rispettivi file `.desktop` ed elencando ciascun tipo MIME separato da un punto e virgola. La chiave `MimeType` dovrebbe essere usata sono in quei file `.desktop` per i quali la chiave `Type` ha come valore `Application`. Per maggiori informazioni sui file `.desktop`, consultare menustructure-desktopentry.

Dopo la creazione o la modifica di un file `.desktop`, è necessario aggiornare il database delle applicazioni usando l'applicazione update-desktop-database (molto simile a update-mime-database, fatto salvo che non accetta alcun argomento). In questo modo verrà creato un file `mimeinfo.cache` nella sottodirectory `applications` per ciascuna directory in `$XDG_DATA_HOME:$XDG_DATA_DIRS`. Il file cache è necessario per evitare di scansionare tutti i file `.desktop` per cercare la sola chiave `MimeType`, che causerebbe I/O disco non necessario.

Le applicazioni predefinite da usare per specifici tipi MIME dovrebbero essere specificate in un file dal nome `defaults.list`. Questo file è posizionato nella sottodirectory `applications` di ciascuna directory `$XDG_DATA_HOME` e `$XDG_DATA_DIRS`. Il formato di questo file consiste nel tipo MIME, il simbolo `=` e il Desktop File ID (cioè il nome di file per il file desktop entry). mimetypes-registering-example è un breve esempio di un file `defaults.list` nella directory `~/.local/share/applications` di un utente.

#### Il file `defaults.list` di un utente

    [Default Applications]
    application/pdf=evince.desktop
    text/html=epiphany.desktop
    text/plain=gedit.desktop
    image/jpeg=eog.desktop
    image/png=eog.desktop
    text/xml=gedit.desktop

#### Specifica entry desktop XDG

Il modo in cui registrare i tipi MIME per le applicazioni fa parte della specifica dei file desktop entry XDG, non della specifica delle informazioni mime condivise XDG

### Aggiunta di un'applicazione allo GNOME Desktop

Per aggiungere un'applicazione allo GNOME Desktop, procedere come segue:

1. Aggiungere una voce di menu per l'applicazione. Per maggiori informazioni su come aggiungere una voce ad un menu, consultare menustructure-2.

2. Aggiungere un'icona per l'applicazione in `/usr/share/icons/`nome-tema`/`dimensione-icona`/apps`. Per maggiori informazioni su icone e temi, consultare themes-11.

3. Se l'applicazione usa un nuovo tipo MIME, aggiungere un file sorgente XML al database MIME. Per maggiori informazioni, consultare mimetypes-modifying.

4. Se l'applicazione usa un nuovo tipo MIME aggiungere una icona per il tipo MIME in `/usr/share/icons/`nome-tema`/`dimensione-icona`/mimetypes`. Per maggiori informazioni su icone e temi, consultare themes-0.

5. Per associare l'applicazione con il tipo MIME, includere una chiave `MimeType` nel file `.desktop`. Per maggiori informazioni, consultare mimetypes-registering.

## Impostazione dei salvaschermo

Questo capitolo descrive come impostare le preferenze per il salvaschermo. Questo capitolo inoltre fornisce informazioni su come modificare i display disponibili per il salvaschermo.

### Introduzione ai salvaschermo

Un salvaschermo è un'applicazione che rimpiazza l'immagine su uno schermo quando questo non è in uso. L'applicazione salvaschermo per lo GNOME Desktop è gnome-screensaver. Le sezioni seguenti descrivono come impostare le preferenze dell'applicazione gnome-screensaver e come modificare i temi disponibili per il salvaschermo.

### Impostazione delle preferenze del salvaschermo

Tutte le preferenze e le impostazioni del salvaschermo sono memorizzate in GConf.

Per modificare le preferenze dell'applicazione salvaschermo, gli utenti possono usare lo strumento di preferenze Salvaschermo. Per informazioni sulle preferenze del salvaschermo, consultare la Guida per l'utente dello GNOME Desktop.

Gli utenti possono anche eseguire il comando `/usr/bin/gnome-screensaver-preferences` per aprire il dialogo Preferenze del salvaschermo.

Per impostare le impostazioni predefinite del salvaschermo e la politica per tutti gli utenti, modificare le impostazioni nella sorgente di configurazione predefinita di GConf.

Per impostare le impostazioni vincolanti e la politica per tutti gli utenti, modificare le impostazioni del salvaschermo nella sorgente di configurazione vincolante di GConf.

### Modifica dei temi del salvaschermo

L'applicazione salvaschermo consente agli utenti di scegliere uno o più temi del salvaschermo. Un tema del salvaschermo è una applicazione che mostra delle immagini sullo schermo dell'utente quando lo schermo non è in uso. I temi del salvaschermo disponibili sono elencati nello strumento di preferenze `Salvaschermo`.

Per aggiungere un nuovo tema del salvaschermo, copiare il file eseguibile per il motore di tema del salvaschermo in una posizione del PATH o nella directory degli eseguibili per i motori di tema del salvaschermo. Tale directory per il sistema in uso può essere determinata usando il seguente comando:

    pkg-config --variable=privlibexecdir gnome-screensaver

. Quindi aggiungere un file `.desktop` per il tema nella directory dei temi del salvaschermo. Tale directory per il sistema in uso può essere determinata usando il seguente comando

    pkg-config --variable=themesdir gnome-screensaver

Il campo Exec del file `.desktop` includere ogni argomento che è richiesto per eseguire il tema del salvaschermo a schermo intero invece che in finestra. Ad esempio alcuni vecchi motori di tema per il salvaschermo possono richiedere l'inclusione dell'opzione `-root` per essere mostrati a schermo intero.

L'infrastruttura di Screensaver implementa i temi in accordo alla specifica dei menu XDG. Supportando tale specifica, in GNOME è possibile:

- Personalizzare con facilità i temi. È possibile editare un numero limitato di file per personalizzare i temi disponibili. Non è necessario modificare le applicazioni o spostare dei file.

- Installare con semplicità i temi. Non è necessario fornire informazioni sul sistema quando si installano i temi.

- Configurare il sistema in modo che gli utenti non possano modificare i temi.

Per maggiori informazioni, consultare menustructure-0.

## Gestione delle sessioni

Questo capitolo introduce la gestione delle sessioni e descrive come impostare le preferenze predefinite di una sessione. Il capitolo contiene anche informazioni sulle sessioni e sugli script di login.

### Introduzione alle sessioni

Una sessione ha luogo nel tempo che intercorre tra il login dell'utente nello GNOME Desktop e il logout. Il gestore di sessioni è avviato non appena l'utente è autenticato dal gestore di login. Il gestore di sessioni consente all'utente di gestire la sessione: per esempio un utente può salvare lo stato di una sessione e tornare a quello stato al successivo login.

In una sessione debbono essere in esecuzione, come minimo, le seguenti applicazioni:

- Il gestore di sessione, `gnome-session`.

- Il demone GConf per le impostazioni di X, `gnome-settings-daemon`.

- L'applicazione gnome-panel, che gestisce i pannelli dello GNOME Desktop.

- Il window manager Metacity.

### Impostazioni predefinite della sessione

La seguente tabella elenca i file che contengono le informazioni sulla sessione predefinita:

File | Descrizione
`/usr/share/gnome/default.session` | File della sessione predefinita. I dettagli della sessione predefinita sono memorizzati in questo file.
`$HOME/.gnome2/session` | File di sessione dell'utente. Quando un utente modifica la sessione, i dettagli sono memorizzati in questo file.

Per impostare i dettagli della sessione predefinita per tutti gli utenti modificare il file della sessione predefinita.

Per ripristinare le impostazioni delle sessione predefinita per un utente, eliminare il file di sessione dalla directory home dell'utente. Quando non vi è alcun file di sessione dell'utente infatti, vengono usate le impostazioni predefinite in `/usr/share/gnome/default.session`.

Per salvare la sessione in uso come sessione predefinita, gli utenti possono eseguire il comando `gnome-session-save`.

## Sistema di aiuto

Questo capitolo descrive il sistema di aiuto in linea dello GNOME Desktop.

### Introduzione al sistema di aiuto

Lo GNOME Desktop mostra il manuali nell'esploratore di documentazione Yelp. Per maggiori informazioni, consultare Esploratore di documentazione Yelp nella Guida per l'utente dello GNOME Desktop.

I documenti sorgente per la documentazione sono file XML. Tali file XML sono scritti secondo il DocBook XML Version 4.1.2 DTD (document type definition). I file XML DocBook sono convertiti in HTML usando i fogli di stile installati con gnome-doc-utils e l'HTML è mostrato nell'esploratore di documentazione. Per maggiori informazioni su XML DocBook, consultare il seguente URL:

          http://www.oasis-open.org/docbook/xml

Il sistema di aiuto usa i file OMF (Open Source Metadata Framework) ed un sistema di catalogazione. Le sezioni seguenti descrivono i file OMF ed il sistema di catalogazione.

### File OMF

Il file XML di ogni manuale ha un associato un file OMF. Tale file OMF contiene delle informazioni sul manuale che sono usate dall'esploratore di documentazione. I file OMF hanno estensione `.omf`.

Quando si installa un'applicazione, il processo di installazione installa un file OMF nella directory dei file OMF. Se un documento di aiuto ha associato un file OMF in una directory di file OMF, allora tale documento è mostrato nel navigatore di documentazione.

I file OMF contengono informazioni sul documento di aiuto come:

- la posizione del file XML per il documento di aiuto;

- il titolo del documento di aiuto;

- la categoria a cui il documento di aiuto appartiene.

Per maggiori informazioni su come creare i file OMF, consultare Scrittura di file OMF per Scrollkeeper.

### Sistema di catalogazione ScrollKeeper

ScrollKeeper è un sistema di catalogazione per la documentazione. La sua funzione primaria è di gestire le informazioni nei file OMF per l'esploratore di documentazione. Quando si installa un'applicazione, il file OMF viene copiato nella directory ``$prefix`/share/omf/`<nome-applicazione>``.

Per mezzo di ScrollKeeper viene costruita un sommario dalla raccolta dei file OMF nelle directory specificate nel file ``$prefix`/etc/scrollkeeper.conf`. Questo file di solito consiste di una singola riga con la variabile `OMF_DIR` impostata ad un elenco di directory separate dalla virgola in cui cercare in modo ricorsivo.

    OMF_DIR=/usr/share/omf:/usr/local/share/omf:/opt/gnome2/share/omf:/opt/kde/omf

ScrollKeeper contiene una gerarchia di categorie di argomenti a cui un documento di aiuto può appartenere. La categoria di un documento, definita nel file OMF, determina la posizione del documento nel sommario presentato nell'esploratore di documentazione.

La gerarchia di categorie è definita nel file ``$prefix`/scrollkeeper/Templates/`<lingua>`/scrollkeeper_cl.xml`. La categoria di un documento deve corrispondere ad una categoria specificata in questo file.

Per maggiori informazioni sul sistema Scrollkeeper, visitare il sito web http://scrollkeeper.sourceforge.net/.

Se il file XML della documentazione viene spostato in una nuova posizione, allora è necessario aggiornare anche la posizione nel file OMF.

## Miglioramento delle prestazioni

Questo capitolo descrive come migliorare le prestazioni dello GNOME Desktop.

### Introduzione al miglioramento delle prestazioni

Questo capitolo elenca diverse preferenze modificando le cui impostazioni è possibile migliorare le prestazioni dello GNOME Desktop. È possibile usare il comando `gconftool-2` per impostare i valori delle preferenze per gli utenti. I comandi d'esempio in questo capitolo mostrano come impostare valori nella sorgente di configurazione dell'utente.

È anche possibile usare le opzioni `--direct` e `--config-source` per impostare valori vincolanti o valori predefiniti per le preferenze. Oppure ancora è possibile usare il comando `gconftool-2` in uno script per impostare i valori di diverse preferenze. Per maggiori informazioni sul comando `gconftool-2` e sulle opzioni disponibili per esso, consultare gconf-0.

### Riduzione dell'uso di CPU

Questa sezione descrive le preferenze che è possibile impostare per ridurre l'utilizzo di CPU nello GNOME Desktop.

#### Usare opzioni per il tema che richiedano meno risorse CPU

Alcune opzioni per il tema del bordo delle finestre caricano file di immagine per disegnare il bordo della finestra. Altre opzioni fanno uso di tecniche più semplici per disegnare il bordo delle finestre.

L'opzione per il bordo delle finestre Crux carica dei file di immagini e può risultare lenta su sistemi con limitate capacità di CPU. Per ridurre l'uso di CPU, usare una delle seguenti opzioni per il bordo delle finestre:

- Atlanta

- Esco

Anche le seguenti opzioni per il bordo delle finestre usano meno risorse CPU di Crux:

- AgingGorilla

- Bright

- Metabox

Metabox non lavora bene con opzioni "invertite" per i controlli come HighContrastInverse. In tal caso è bene usare Atlanta.

Per cambiare l'opzione per il tema del bordo delle finestre, eseguire il seguente comando:

    gconftool-2 \
    --type string \
    --set /apps/metacity/general/theme nome-opzione

Ad esempio, per usare Atlanta, eseguire il seguente comando:

    gconftool-2 \
    --type string \
    --set /apps/metacity/general/theme Atlanta

In alternativa, gli utenti possono usare lo strumento di preferenze Tema per selezionare l'opzione appropriata.

È possibile usare il Visualizzatore di temi di Metacity per misurare le prestazioni di una opzione di bordo delle finestre e per avere un'anteprima dell'opzione. Per avviare questo strumento, usare il comando seguente:

    metacity-theme-viewer nome-opzione

Ad esempio, per misurare le prestazioni di Atlanta e per averne un'anteprima, eseguire il seguente comando:

    metacity-theme-viewer Atlanta

#### Ridurre l'uso di CPU disattivando la visualizzazione delle icone nei menu

Alcune voci nei menu mostrano un'icona accanto alla voce stessa. Per disattivare questa funzione, eseguire il seguente comando:

    gconftool-2 \
    --type bool \
    --set /desktop/gnome/interface/menus_have_icons false

In alternativa, gli utenti possono usare lo strumento di preferenze Barre menu e strumenti per deselezionare l'opzione Mostrare le icone nei menu.

#### Ridurre l'uso di CPU disattivando la schermata d'avvio

In modo predefinito, quando l'utente effettua il login nell'ambiente desktop, viene mostrata una schermata di avvio (splash screen). In tale schermata vengono visualizzate delle icone durante il login. È possibile disattivare tale schermata per ridurre l'uso di CPU durante il login.

Per disattivare la schermata di avvio, eseguire il seguente comando:

    gconftool-2 \
    --type bool \
    --set /apps/gnome-session/options/show_splash_screen false

In alternativa, gli utenti possono usare lo strumento di preferenze Sessioni per deselezionare l'opzione Mostrare schermata di avvio al login.

#### Ridurre l'uso di CPU disattivando l'animazione del pannello

Quando gli utenti mostrano o nascondono i pannelli, tali azioni possono aver luogo accompagnate da un'animazione. Per disattivare l'animazione del pannello, eseguire il comando seguente:

    gconftool-2 \
    --type bool \
    --set /apps/panel/global/enable_animations false

In alternativa, gli utenti possono usare lo strumento di preferenze Pannello per deselezionare l'opzione Animazione per pannelli e cassetti.

#### Miglioramento delle prestazioni del file manager

Il file manager Nautilus include alcune caratteristiche che è possibile modificare per migliorare le prestazioni.

##### Modificare le preferenze delle prestazioni

Il file manager include alcune preferenze legate alle prestazioni. Ciascuna preferenza di prestazioni può assumere uno tra i tre valori descritti nella seguente tabella:

Valore | Descrizione
`always` | Esegue l'azione sia per i file locali che per i file su altri file system.
`local_only` | Esegue l'azione solo sui file locali. Quando si imposta una preferenza di prestazioni a `local_only`, l'uso di CPU è ridotto.
`never` | L'azione non viene eseguita. Quando si imposta una preferenza di prestazioni a `never`, l'uso di CPU e il traffico di rete sono ridotti.

La tabella seguente descrive le preferenze di prestazioni per il file manager. Per avere migliori prestazioni, impostare il valore delle preferenze a `never`.

Preferenza | Descrizione
`show_icon_text` | Specifica quando effettuare un'anteprima del contenuto dei file di testo all'interno dell'icona che rappresenta il file. Per non avere l'anteprima del contenuto dei file di testo, eseguire il comando seguente:
    gconftool-2 \
    --type string \
    --set /apps/nautilus/preferences/show_icon_text never
In alternativa, gli utenti possono procedere come segue: Scegliere Modifica Preferenze da una finestra del file manager, quindi scegliere Anteprima. Selezionare una opzione per la preferenza Mostrare il testo nelle icone.
`show_directory_item_counts` | Specifica quando mostrare il numero di oggetti nelle cartelle. Per non mostrare il numero di oggetti in alcun caso, eseguire il comando seguente:
    gconftool-2 \
    --type string \
    --set /apps/nautilus/preferences/show_directory_item_counts never
In alternativa, gli utenti possono procedere come segue: Scegliere Modifica Preferenze da una finestra del file manager, quindi scegliere Anteprima. Selezionare un'opzione per la preferenza Contare il numero di oggetti.
`show_image_thumbnails` | Specifica quando mostrare miniature per i file di immagine. Per non mostrare le miniature in alcun caso, eseguire il comando seguente:
    gconftool-2 \
    --type string \
    --set /apps/nautilus/preferences/show_image_thumbnails never
In alternativa, gli utenti possono procedere come segue: Scegliere Modifica Preferenze da una finestra del file manager, quindi scegliere Anteprima. Selezionare un'opzione per la preferenza Mostrare provini e minature.
`preview_sound` | Specifica quando generare un'anteprima dei file audio. Per non avere un'anteprima del contenuto dei file audio in alcun caso, eseguire il comando seguente:
    gconftool-2 \
    --type string \
    --set /apps/nautilus/preferences/preview_sound never
In alternativa, gli utenti possono procedere come segue: Scegliere Modifica Preferenze da una finestra del file manager, quindi scegliere Anteprima. Selezionare un'opzione per la preferenza Anteprima dei file audio.

##### Disattivare riquadro laterale, barra degli strumenti e barra della posizione

Il file manager include alcune preferenze che consentono di disattivare il riquadro laterale e la barra degli strumenti. Per migliorare le prestazioni del file manager, disattivare il riquadro laterale e la barra degli strumenti.

Per disattivare il riquadro laterale, eseguire il comando seguente:

    gconftool-2 \
    --type bool \
    --set /apps/nautilus/preferences/start_with_sidebar false

Per disattivare la barra degli strumenti, eseguire il seguente comando:

    gconftool-2 \
    --type bool \
    --set /apps/nautilus/preferences/start_with_toolbar false

È anche possibile disattivare la barra della posizione. Gli utenti possono usare la scorciatoia da tastiera Ctrl L per visualizzare la barra della posizione quando richiesto.

Per disattivare la barra della posizione, eseguire il seguente comando:

    gconftool-2 \
    --type bool \
    --set /apps/nautilus/preferences/start_with_location_bar false

##### Disattivare la scrivania

Il file manager contiene una preferenza che consente agli utenti di usare Nautilus per gestire la scrivania. È possibile disattivare la scrivania per migliorare le prestazioni. Ad ogni modo, disattivando la scrivania, non è possibile:

- Usare il file manager per cambiare il motivo o il colore dello sfondo della scrivania.

- Usare gli oggetti di scrivania, come il Cestino. Tali oggetti non sono mostrati sulla scrivania.

Per disabilitare la scrivania, eseguire il comando seguente:

    gconftool-2 \
    --type bool \
    --set /apps/nautilus/preferences/show_desktop false

### Riduzione del traffico di rete di X Window System

Questa sezione descrive le preferenze che è possibile impostare per ridurre il traffico di rete di X Window System per lo GNOME Desktop.

#### Usare opzioni del tema che creino meno traffico di rete

I protocolli per display remoto non trasferiscono ogni singolo pixel in un blocco di pixel se tutti i pixel del blocco sono dello stesso colore.

Per ridurre il traffico di rete di X Window System, usare una opzione per il tema del bordo delle finestre che faccia uso di una tinta unita. Cioè, usare una delle seguenti opzioni per il bordo delle finestre:

- Atlanta

- Esco

Per informazioni su come modificare le opzioni del tema, consultare performance-3.

#### Ridurre il traffico di rete disattivando la visualizzazione delle icone nei menu

Alcune voci di menu mostrano un'icona accanto ad esse. Se l'icona è posizionata su un altro file system, è possibile che questa caratteristica incrementi il traffico di rete di X Window System. È anche possibile che questa caratteristica incrementi il traffico di rete di X Window System se i pannelli sono visualizzati su un host remoto.

Per informazioni su come disattivare questa funzionalità, consultare performance-2.

### Riduzione dell'uso di colore e miglioramento della qualità del display

Molti computer moderni supportano il colore a 24 bit, cioè 16.777.216 colori. Ciò nonostante, molti utenti utilizzano ancora sistemi che supportano il colore ad 8 bit, cioè 256 colori.

Lo GNOME Desktop fa uso della tavolozza colori websafe. Questa tavolozza è una tavolozza di uso generico di 216 colori, che è progettata per ottimizzare l'uso del colore su sistemi che supportano il colore ad 8 bit. Alcune componenti visive dello GNOME Desktop comunque sono progettate per sistemi che supportano il colore a 24 bit.

Su sistemi che supportano il colore ad 8 bit, potrebbero verificarsi i seguenti problemi:

- Finestre, icone e immagini sullo sfondo potrebbero apparire sgranate. Molti temi, immagini di sfondo e icone fanno uso di colori che non sono nella tavolozza colori websafe. Se un colore non è presente nella tavolozza, è rimpiazzato con l'equivalente più simile o con una approssimazione dithered. Questo uso di colori sostitutivi è causa dell'aspetto sgranato.

- Le applicazioni che non usano la tavolozza colori websafe hanno a disposizione meno colori. Si possono verificare degli errori di colore. Alcuni colori potrebbero non apparire nell'interfaccia utente dell'applicazione. Alcune applicazioni potrebbero andare in crash se l'applicazione non può allocare i colori.

- Si potrebbe verificare un lampeggiamento di colore quando un utente passa da un'applicazione che fa uso della tavolozza colori websafe ad una che non usa questa tavolozza. Le applicazioni che non usano la tavolozza colori websafe potrebbero usare una mappa colore personalizzata. Quando viene usata una mappa colore personalizzata, altre componenti visive possono perdere colori, diventando così non visibili.

Le sezioni seguenti descrivono come ottimizzare l'aspetto dello GNOME Desktop per sistemi che utilizzano colore a 8 bit.

#### Usare opzioni del tema che usino la tavolozza colori websafe

Alcune opzioni per il tema del bordo delle finestre usano colori che sono nella tavolozza colori websafe. `Bright` e `Esco` fanno uso di colori che sono nella tavolozza colori websafe. Queste opzioni non hanno l'aspetto sgranato di altre opzioni per il bordo delle finestre su display a 8 bit per il colore. Usare `Bright` o `Esco` per la migliore visualizzazione del colore con modalità visive ad 8 bit.

Per informazioni su come modificare le opzioni del tema, consultare performance-3.

#### Ridurre l'uso di colore disattivando la visualizzazione delle icone nei menu

Alcune voci di menu mostrano un'icona accanto alla voce. Se l'icona contiene colori che non sono nella tavolozza colori websafe, questa caratteristica può incrementare il numero di colori usati.

Per informazioni su come disattivare questa funzionalità, consultare performance-2.

#### Ridurre l'uso del colore disattivando la schermata d'avvio

È possibile disattivare la schermata d'avvio per rendere disponibili allo GNOME Desktop ed alle applicazioni un maggior numero di colori.

Per informazioni su come disattivare la schermata d'avvio, consultare performance-6.

#### Ridurre l'uso del colore utilizzando una tinta unita per lo sfondo

L'uso di una tinta unita per lo sfondo della scrivania riduce il numero di colori usati dallo GNOME Desktop.

Per impostare una tinta unita per lo sfondo, eseguire i comandi seguenti:

    gconftool-2 \
    --type string \
    --set /desktop/gnome/background/picture_options none

    gconftool-2 \
    --type string \
    --set /desktop/gnome/background/color_shading_type solid

    gconftool-2 \
    --type string \
    --set /desktop/gnome/background/primary_color #colore-esadecimale

In alternativa, gli utenti possono usare lo strumento di preferenze Sfondo della scrivania per scegliere una tinta unita per lo sfondo.

## Disabilitazione di funzionalità dello GNOME Desktop

Questo capitolo descrive come disabilitare particolari funzionalità dello GNOME Desktop.

### Introduzione alla disabilitazione di funzionalità dello GNOME Desktop

Lo GNOME Desktop include delle funzionalità che è possibile usare per limitare l'accesso ad altre funzionalità dello stesso GNOME Desktop. Le funzionalità di disabilitazione possono rivelarsi utili in varie situazioni in cui si voglia limitare le azioni che gli utenti possono eseguire su un computer. Ad esempio, è possibile che si voglia prevenire le operazioni da riga di comando su un computer riservato al pubblico utilizzo in una manifestazione. Le funzionalità di disabilitazione sono anche note come funzionalità lockdown.

Per disabilitare le funzionalità si impostano alcune chiavi GConf. Per informazioni su come impostare le chiavi GConf, consultare gconf-0. È anche possibile usare l'applicazione Editor di configurazione per impostare le chiavi GConf in una sorgente di configurazione per l'utente. Per maggiori informazioni sull'applicazione Editor di configurazione, consultare il Manuale di GConf Editor.

### Lockdown manuale delle impostazioni

#### Disabilitare blocco schermo e termina sessione

Per disabilitare le funzioni per bloccare lo schermo e terminare la sessione, impostare a `true` la chiave `/apps/panel/global/disable_lock_screen` e la chiave `/apps/panel/global/disable_log_out`.

Quando si disabilitano le funzioni per bloccare lo schermo e terminare la sessione, i seguenti elementi sono rimossi dai pannelli:

- le voci di menu Blocca schermo e Termina sessione dal Menu principale;

- le voci di menu Blocca e Termina sessione dal menu Aggiungi al pannello Azioni. Per aprire tale menu, fare clic col tasto destro su uno spazio libero di un pannello, quindi scegliere Aggiungi al pannello Azioni;

- le voci di menu Blocca schermo e Termina sessione dal menu Azioni nell'applet Barra dei menu.

Sono disabilitati inoltre tutti i pulsanti Blocca schermo e Termina sessione presenti sui pannelli.

#### Disabilitare operazioni da riga di comando

Per disabilitare le operazioni da riga di comando, impostare a `true` la chiave `/desktop/gnome/lockdown/disable_command_line`.

Quando si disabilitano le operazioni da riga di comando, avvengono i seguenti cambiamenti nell'interfaccia utente:

- La voce di menu Esegui applicazione è rimossa dai seguenti menu:

  - Menu principale

  - il sottomenu Azioni nel menu Aggiungi al pannello;

  - il menu Azioni nell'applet Barra dei menu.

- Qualsiasi pulsante Esegui sui pannello viene disabilitato.

Per disabilitare tutte le operazioni da riga di comando, è necessario rimuovere anche le voci di menu per avviare applicazioni terminale. Ad esempio, potrebbe rivelarsi necessario rimuovere dai menu le voci che contengono i comandi seguenti:

- il comando di Terminale di GNOME, cioè `/usr/bin/gnome-terminal`;

- ``/usr/bin/xterm`;`

- ``/usr/bin/setterm`;`

Le voci sono rimosse dai menu seguenti:

- Menu principale

- Aggiungi al pannello Lanciatore dal menu

Per disabilitare le operazioni da riga di comando, è necessario disabilitare anche l'applet Riga di comando. Per disabilitare tale applet, aggiungerla alla chiave `/apps/panel/global/disabled_applets`. Quando si disabilita l'applet Riga di comando, tale applet è rimossa dai menu Menu principale e Aggiungi al pannello Utilità.

#### Disabilitare la configurazione del pannello

Per disabilitare la configurazione del pannello, impostare a `true` la chiave `/apps/panel/global/locked_down`.

Quando si disabilita la configurazione del pannello, avvengono i seguenti cambiamenti nell'interfaccia utente:

- Le seguenti voci sono rimosse dal menu a comparsa di pannello e cassetti:

  - Aggiungi al pannello

  - Elimina questo pannello

  - Proprietà

  - Nuovo pannello

- Il menù a comparsa del lanciatore è disabilitato.

- Le voci seguenti sono rimosse dal menu a comparsa delle applet:

  - Rimuovi dal pannello

  - Blocca

  - Sposta

- Il menu a comparsa del Menu principale è disabilitato.

- La funzionalità di trascinamento del lanciatore è disabilitata, cosicché gli utenti non possano trascinare i lanciatori da e su i pannelli.

- La funzionalità di trascinamento dei pannelli è disabilitata, cosicché gli utenti non possano trascinare i pannelli in nuove posizioni.

### Editor di lockdown

In GNOME 2.14 è stato incluso Pessulus,un editor di lockdown grafico che rende semplice la disabilitazione delle impostazioni dell'ambiente di lavoro.

#### Per cominciare

Per eseguire l'editor di lockdown:

- Fare clic su Sistema Amministrazione Editor di lockdown

- Eseguire il comando `pessulus` in una finestra di terminale.

Verrà mostrata una finestra con diverse schede. Ciascuna scheda rappresenta una diversa categoria di impostazioni dell'ambiente che può essere disabilitata. Nella sezione seguente sono discusse le singole categorie e viene fornita una breve descrizione per ciascuna impostazione che può essere disabilitata.

#### Disabilitazione di funzionalità

Per disabilitare una impostazioni, assicurarsi che la casella di spunta accanto alla descrizione dell'impostazione sia spuntata. La maggior parte delle impostazioni hanno effetto immediatamente, sebbene alcune possano richiede che l'applicazione venga riavviata per poter avere effetto.

All'avvio di Pessulus, l'applicazion tenta di ottenere una connessione alla sorgente di configurazione vincolante di GConf. L'indirizzo per questa sorgente di configurazione è `xml:merged:`$prefix`/etc/gconf/gconf.xml.mandatory`. Se l'utente che sta eseguendo Pessulus ha accesso a questa sorgente di configurazione, allora una icona a forma di lucchetto viene mostrata accanto alla casella di spunta di ciascuna impostazione. Facendo clic sul lucchetto, si commuta il carattere vincolante o predefinito dell'impostazione. Se l'impostazione è vincolante, allora i normali utenti non sono in grado di scavalcarla. Se l'utente che sta eseguendo Pessulus non ha accesso alla sorgente di configurazione vincolante, allora l'icona a forma di lucchetto non compare. In tal caso, tutte le impostazioni disabilitate sono semplicemente memorizzate nella sorgente di configurazione predefinta per l'utente e possono essere modificate in seguito usando altri strumenti come gconf-editor o gconftool-2. Per maggiori informazioni su GConf e sulle sorgenti di confirazione vincolanti, consultare gconf-26.

Le seguenti sottosezioni forniscono una breve descrizione delle impostazioni che possono essere disabilitate per ciascuna categoria.

In funzione delle applicazioni installate, potrebbero essere disponibili meno categorie di quelle descritte in questa sezione.

##### Generali

Disabilitare la riga di comando

- Impedisce all'utente di accedere al terminale o di specificare una riga di comando da eseguire. Ad esempio, questo disabiliterebbe l'accesso al dialogo "Esegui applicazione" del pannello.

Disabilitare la stampa

- Impedisce all'utente di stampare. Ad esempio, questo disabiliterebbe l'accesso al dialogo "Stampa" in tutte le applicazioni.

Disabilitare l'impostazione di pagina

- Impedisce all'utente di modificare le impostazioni di stampa. Ad esempio, questo disabiliterebbe l'accesso al dialogo "Imposta pagina" per tutte le applicazioni.

Disabilitare il salvataggio su disco

- Impedisce all'utente di salvare i file su disco. Ad esempio, questo disabiliterebbe l'accesso al dialogo "Salva come" per tutte le applicazioni.

##### Pannello

Applicare il lockdown sui pannelli

- Se impostato a TRUE, non è consentito alcun cambiamento alla configurazione del pannello, sebbene per le singole applet possa essere necessario effettuare separatamente il lockdown. È necessario riavviare il pannello affinché le modifiche abbiano effetto.

Disabilitare l'uscita forzata

- Se impostato a TRUE, all'utente non è consentito usare il pannello per forzare l'uscita di un'applicazione; cioè viene rimosso l'accesso al pulsante Forza uscita.

Disabilitare il blocco dello schermo

- Se impostato a TRUE, all'utente non è consentito usare il pannello per bloccare il proprio schermo; cioè viene rimosso l'accesso alle voci di menu relativo al blocco dello schermo.

Disabilitare la terminazione della sessione

- Se impostato a TRUE, all'utente non è consentito usare il pannello per terminare la sessione; cioè viene rimosso l'accesso alle voci di menu relative al termine di sessione.

##### Browser Web Epiphany

Disabilitare l'uscita

- All'utente non è consentito chiudere Epiphany.

Disabilitare gli URL arbitrari

- Disabilita l'abilità dell'utente di digitare un URL in Epiphany.

Disabilitare la modifica dei segnalibri

- Disabilita l'abilità dell'utente di aggiungere o modificare segnalibri.

Disabilitare la cronologia

- Disabilita tutte le informazioni di cronologia: disabilita la navigazione avanti/indietro, non consente l'uso del dialogo della cronologoa e nasconde l'elenco dei segnalibri usati.

Disabilitare il chrome javascript

- Disabilita il controllo di chrome per la finestra di JavaScript.

Disabilitare la modifica della barra degli strumenti

- Disabilita la possibilità dell'utente di modificare le barre degli strumenti.

Forzare la modalità schermo intero

- Blocca Epiphany in modalità a schermo intero.

Nascondere la barra dei menù

- Nasconde in modo predefinito la barra dei menu. È comunque possibile accedere alla barra dei menu usando il tasto F10.

Disabilitare i protocolli non sicuri

- Disabilita il caricamento di contenuti da protocolli insicuri. Protocolli sicuri sono "http" e "https".

##### Salvaschermo di GNOME

Bloccare all'attivazione

- Impostare a TRUE per bloccare lo schermo quando il salvaschermo viene attivato.

Consentire la terminazione della sessione

- Impostare a VERO per offrire un'opzione nel dialogo di sblocco per terminar la sessione dopo un certo ritardo. Il ritardo è specificato nella chiave "logout_delay".

Consentire il cambio di utente

- Impostare a TRUE per offrire un'opzione nel dialogo di sblocco per passare ad un diverso account utente.

## Directory nascoste

Questa appendice descrive le directory nascoste che lo GNOME Desktop aggiunge nelle directory home degli utenti.

Una directory nascosta è una directory il cui nome comincia con un punto (.). In appendixa-TBL-2 sono descritte le directory nascoste che lo GNOME Desktop aggiunge nella directory home degli utenti.

## Directory nascoste nelle directory home degli utenti

Directory | Descrizione
`.config` | È la posizione predefinita per la variabile d'ambiente `XDG_CONFIG_HOME`, se non impostata. I menu definiti dall'utente possono essere creati presso `menus/applications.menu`.
`.fonts` | Contiene i tipi di carattere specifici per un particolare utente. Quando un utente installa un tipo di carattere trascinandolo nell'URI `fonts:///` in nautilus, il file viene copiato in questa posizione.
`.esd_auth` | Contiene il cookie per l'autenticazione del demone audio di GNOME. Il demone audio di GNOME è Enlightened Sound Daemon (ESD). NOTA: questo è un file, non una directory.
`.gconf` | Contiene la sorgente di configurazione dell'utente per GConf. Quando l'utente imposta una preferenza, la nuova informazione di preferenza è aggiunta in questa posizione.
`.gconfd` | Contiene i seguenti dettagli del demone GConf: Informazioni di configurazione. Informazioni di blocco per oggetti referenziati da uno IOR (Interoperable Object Reference). Informazioni di stato per oggetti referenziati da uno IOR.
`.gnome` | Contiene dati di applicazioni specifici dell'utente che non sono memorizzati nel repertorio di GConf. NOTA: questa directory è deprecata ed è usata solo da applicazioni GNOME1.x.
`.gnome2` | Contiene dati di applicazioni specifici dell'utente che non sono memorizzati nel repertorio di GConf. Ad esempio questa directory contiene: Informazioni sulle scorciatoie da tastiera. Informazioni sulla posizione delle finestre. I file desktop entry per i lanciatori sui pannelli. Questa directory può contenere anche sottodirectory che memorizzano dati specifici delle singole applicazioni.
`.gnome2-private` | Ignorare questa directory, non ha alcuna funzione alla data di pubblicazione di questa guida.
`.local/share` | È la posizione predefinita per la variabile d'ambiente `XDG_DATA_HOME`, se non impostata. I file desktop entry definiti dall'utente possono essere creati nella sottodirectory `applications`. I tipi MIME definiti dall'utente possono essere creati in `mime/packages/Overrides.xml`.
`.metacity` | Contiene i dati di sessione per il window manager Metacity.
`.nautilus` | Contiene i dati del file manager specifici dell'utente. Ad esempio, questa directory contiene: I metadati per le directory con le quali l'utente lavora. I simboli per Nautilus aggiunti dall'utente. Le immagini di scrivania di Nautilus.
`.themes` | Contiene le opzioni per il tema dei controlli, della cornice della finestra e delle icone aggiunte dall'utente. L'utente può aggiungere temi dallo strumento di preferenze Tema.
`.thumbnails` | Contiene immagini miniature e provini per l'utente. Tali immagini sono usate nel file manager. Il file manager contiene una preferenza che l'utente può selezionare per fermare la generazione di miniature e provini.

## Note di sicurezza sulla configurazione di stampanti SMB

Questa appendice fornisce una nota di sicurezza relativa alla configurazione di stampanti su condivisioni di rete tipo Windows.

Le condivisioni di rete Windows sono indicate anche come condivisioni Samba o SMB. Quando si configura una stampante su una condivisione SMB, è necessario fornire un nome utente e una password per la coda di stampa.

Il nome utente e la password sono memorizzati come testo non cifrato nel file `/etc/cups/printers.conf`. Tale file ha permessi in sola lettura per utenti con privilegi di root, il che significa che ogni utente con privilegi di root può leggere il nome utente e la password per la coda di stampa.

Per ridurre l'impatto di eventuali violazioni di sicurezza, assicurarsi che il nome utente e la password usati per accedere alla coda di stampa, siano usati solo per la coda di stampa. Ciò assicura che ogni eventuale violazione di sicurezza è limitata ad un uso non autorizzato della coda di stampa.

## Glossario

file `.desktop`
file `.directory`
file `.omf`
registro applicazioni

Il registro applicazioni è una raccolta di file desktop entry che registrano le applicazioni. La posizione tipica del registro applicazioni per lo GNOME Desktop è `$XDG_DATA_DIRS:$XDG_DATA_HOME/applications/`.

file desktop entry

Un file di dati che fornisce informazioni su una voce in un menu. Il file desktop entry specifica i dettagli per la voce menu come un nome, un comando da eseguire, un'icona ed altro. I file desktop entry hanno estensione `.desktop`.

file directory entry

Un file di dati che fornisce informazioni su un menu. Il file directory entry specifica i dettagli per un menu come un nome, un suggerimento ed un'icona che lo rappresenti. I file directory entry hanno estensione `.directory`.

sorgente di configurazione GConf

Una posizione di memorizzazione nel repertorio di GConf. Ad esempio `xml:readonly:/etc/gconf/gconf.xml.defaults`.

chiave di preferenza GConf

Un elemento nel repertorio di GConf che corrisponde ad una preferenza di un'applicazione. Ad esempio, la chiave `/apps/gnome-session/options/show_splash_screen` corrisponde all'opzione Mostrare schermata di avvio al login nello strumento di preferenze Sessioni.

file percorso GConf

Un file che elenca le sorgenti di configurazione di GCong e l'ordine con cui cercare in tali sorgenti.

schema GConf

Un termine collettivo per una chiave schema ed un oggetto schema.

file definizione schema GConf

Un file definizione schema GConf elenca le chiavi di una particolare applicazione e definisce le caratteristiche delle chiavi. Gli schemi GConf sono generati dai file definizione schema; tali file hanno estensione `.schemas`.

chiave schema GConf

Una chiave che memorizza un oggetto schema per una chiave di preferenza. Ad esempio `/schemas/desktop/gnome/interface/font_name` è una chiave schema per la chiave di preferenza `/desktop/gnome/interface/font_name`.

oggetto schema GConf

Un elemento in una sorgente di configurazione che contiene informazioni su una chiave di preferenza. L'oggetto schema contiene informazioni come un valore predefinito per la chiave di preferenza e la documentazione della stessa chiave.

modello di glob

Un modello di glob è usato per creare corrispondenze con un nome di file facendo uso di caratteri speciali come `*` e `?`. Il sistema MIME usa i modelli di glob per assegnazioni dei tipi MIME in base ai nome dei file e, spesso, alle estensioni dei file.

Interoperable Object Reference

Uno IOR (Interoperable Object Reference) è una stringa che fa riferimento a un oggetto CORBA. Uno IOR codifica un nome di host e una porta a cui è possibile inviare messaggi per controllare l'oggetto. Lo IOR contiene anche una chiave oggetto per identificare l'oggetto.

regola magic

Una regola magic definisce il tipo MIME di un file specificando dei dati di testo o binari da cercare all'inizio del file. In una regola magic possono essere definiti degli offset per la ricerca di tali dati.

File definizione menu

I file di definizione menu definiscono la gerarchia dei menu usati nella barra dei menu di GNOME.

MIME

Multipurpose Internet Mail Extension.

file sorgente XML MIME

Un file sorgente XML MIME definisce come i tipi MIME sono risolti per diversi tipi di file. Ci sono tre modi in cui ciò può essere fatto: usando le estensioni dei file (modelli di glob), usando le regole magic e usando i namespace XML. I file sorgenti XML MIME sono posizionati nella directory `$XDG_DATA_DIRS:$XDG_DATA_HOME/mime/packages`.

tipo MIME

Un tipo MIME identifica il formato di un file. Il tipo MIME consente alle applicazioni di leggere il file. Ad esempio, le applicazioni per la posta elettronica possono usare il tipo MIME `image/png` per rilevare che un file PNG (Portable Networks Graphic) è allegato all'email.

database tipi MIME

Il database dei tipi MIME è una raccolta di file che registrano i tipi MIME per l'ambiente desktop. La posizione tipica del database dei tipi MIME è la directory `$XDG_DATA_DIRS:$XDG_DATA_HOME/mime`.

file OMF

File OpenSource Metadata Framework. È un file associato al file XML di un manuale. Il file OMF contiene delle informazioni sul manuale usate dall'esploratore di documentazione. I file OMF hanno estensione `.omf`.

PAM

Pluggable Authentication Modules.

salvaschermo

Un salvaschermo è un'applicazione che rimpiazza l'immagine su uno schermo quando questo non è in uso. L'applicazione salvaschermo per lo GNOME Desktop è XScreenSaver.

display del salvaschermo

Un display del salvaschermo è un'applicazione che mostra immagini sullo schermo quando quest'ultimo non è in uso.

UDP

User Datagram Protocol.

URI

Un URI (Uniform Resource Identifier) è una stringa che identifica una particolare posizione in un file system o sul web. Ad esempio l'indirizzo di una pagina web è un URI.

tavolozza colori websafe

La tavolozza di colori websafe è una tavolozza di 216 colori per uso generico. La tavolozza di colori websafe è progettata per ottimizzare l'uso dei colori su sistemi che supportano il colore ad 8 bit. La tavolozza di colori websafe è anche chiamata tavolozza colori Netscape o cubo colori Netscape.