Difference between revisions of "GNOME package guidelines (Italiano)"

From ArchWiki
Jump to: navigation, search
(creata pagina)
 
(updated links)
(11 intermediate revisions by 5 users not shown)
Line 1: Line 1:
[[Category:Guidelines (English)]][[Category: Package development (English)]]
+
[[Category: Package development (Italiano)]]
The GNOME packages on Arch Linux follow a certain schema.
+
[[en:GNOME Package Guidelines]]
 +
{{Package Guidelines (Italiano)}}
  
==Gnome profile initialization==
+
I pacchetti GNOME di Archlinux seguono un determinato schema.
  
There is no gnome profile initialization anymore. The old line below should be stripped from any PKGBUILD:
+
==Profilo di inizializzazione di GNOME==
 +
 
 +
Non c'è più alcun profilo di inizializzazione. La vecchia riga dovrebbe essere eliminata da ogni PKGBUILD:
 
  [ -z "$GNOMEDIR" ] && . /etc/profile.d/gnome.sh
 
  [ -z "$GNOMEDIR" ] && . /etc/profile.d/gnome.sh
  
==GConf schemas==
+
==Schemi GConf==
  
Many GNOME packages install GConf schemas. These schemas get installed in the system GConf database, which has to be avoided.
+
Molti pacchetti GNOME installano schemi Gconf. Questi schemi vengono installati nel database del sistema GConf, che andrebbe evitato.
Some packages provide a --disable-schemas-install switch for ./configure, which hardly ever works. Therefore, gconftool-2 has a variable called <code>GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL</code>, whenever this is set, gconftool-2 won't update any databases.
+
Alcuni pacchetti mettono a disposizione l'opzione {{ic|--disable-schemas-install}} per il {{ic|./configure}}, che spesso non funziona. Per questo motivo gconftool-2, possiede una variabile chiamata {{ic|GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL}}, se questa viene impostata, gconftool-2 non aggiornerà alcun database.
When creating packages that install schema files, use
+
Nel creare pacchetti che installano file schema, utilizzare
 
  make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR=${pkgdir} install
 
  make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR=${pkgdir} install
for the package installation step in the PKGBUILD.
+
nello stage di installazione del pacchetto.
 +
 
 +
È necessario installare e rimuovere gli schemi GConf nel file .install, utilizzando pre_remove(), pre_upgrade(), post_upgrade() e post_install(). Utilizzare gconf-merge-schemas per unire diversi schemi in unico file specifico per uno pacchetto, installarli o disinstallarli tramite {{ic|usr/sbin/gconfpkg --(un)install $pkgname}}.
 +
L'utilizzo di gconfpkg richieda la dipendenza gconf>=2.18.0.1-4 (or gconfmm>=2.20.0).
  
GConf schemas need to be installed and removed in the .install file using pre_remove, pre_upgrade and post_upgrade and post_install. Use gconf-merge-schemas to merge several schemas into one package specific file, install or uninstall them with <code>usr/sbin/gconfpkg --(un)install $pkgname</code>.
+
==Schemi GSettings==
The usage of gconfpkg requres a dependency on gconf>=2.18.0.1-4 (or gconfmm>=2.20.0).
+
Gli schemi Gconf verranno rimpiazzati dagli schemi Gsettings in un futuro molto prossimo, anche se alcune applicazioni li usano già (ad es. Empathy). Il sistema GSettings utilizza dconf come backend, perciò ogni pacchetto che contiene schemi GSettings deve avere dconf come dipendenza. Quando viene installato un nuovo schema GSettings sul sistema, il database GSettings deve essere rigenerato, ciò non deve accadere invece durante la fase di pacchettizzazione. Per evitare che avvenga la rigenerazione del database GSettings durante la pacchettizzazione, utilizzare lo switch {{ic|--disable-schemas-compile}} sul ./configure. Per ricompilarlo al momento dell'installazione, aggiungere le righe seguenti al file {{ic|.install}} nel blocco post_install, post_upgrade e post_remove:
 +
{{ic|glib-compile-schemas usr/share/glib-2.0/schemas}}
  
==Scrollkeeper documentation==
+
==Scrollkeeper e la documentazione==
Starting from GNOME 2.20 there's no need to handle scrollkeeper anymore, as rarian reads OMF files directly. Scrollkeeper-update is a dummy these days. The only required thing now is to makedepend on gnome-doc-utils>=0.11.2.
+
A partire da GNOME 2.20 non vi è più la necessità di utilizzare Scrollkeeper, in quanto Rarian legge direttamente i file OMF. Scrollkeeper-update è quindi un'abitudine superata, ormai.
 +
L'unico requisito è la soddisfazione della dipendenza di compilazione gnome-doc-utils>=0.11.2.
  
==.desktop files==
+
==File .desktop==
Many packages install Freedesktop.org compatible .desktop files and register MimeType entries in them. Running <code>update-desktop-database -q</code> in post_install() and post_remove() is recommended (package should depend on desktop-file-utils in this case).
+
Molti pacchetti installano file .dektop compatibili con le specifiche di Freedesktop.org, e registrano chiavi MimeType al loro interno. L'esecuzione di {{ic|update-desktop-database -q}} all'interno del post_install() e del post_remove() è raccomandata (il pacchetto dovrebbe dipendere da desktop-file-utils in questo caso)
  
==GTK Icon cache==
+
==Cache delle icone GTK==
Quite some packages install icons in the hicolor icon theme. These packages should depend on hicolor-icon-theme and should have <code>gtk-update-icon-cache -q -t -f usr/share/icons/hicolor</code> in the post_install, post_upgrade and post_remove function.
+
Alcuni pacchetti installano le proprie icone all'interno del tema hicolor. Questi pacchetti dovrebbero dipendere da hicolor-icon-theme e dovrebbero eseguire {{ic|gtk-update-icon-cache -q -t -f usr/share/icons/hicolor}} nelle funzioni post_install(), post_upgrade() e post_remove().
  
==.install files==
+
==File .install==
For many gnome packages, all .install files look almost exactly the same. The gedit package contains a very generic install file:
+
Per molti pacchetti GNOME, i file .install sono esattamente identici. Il pacchetto gedit contiene un file .install molto generico.
http://repos.archlinux.org/wsvn/packages/gedit/repos/extra-i686/gedit.install
+
https://projects.archlinux.org/svntogit/packages.git/tree/gedit/repos/extra-i686/gedit.install
  
Basically, the only thing that has to be changed is the pkgname variable on top of the .install file. As long as pacman doesn't supply us with the pkgname variable, we need to supply it in the .install file.
+
Fondamentalmente, l'unica cosa che deve essere modificata è la variabile pkgname in cima al file .install. Visto che pacman non fornisce il nome del pacchetto come variabile, dovremo fornirlo noi nel file .install.
When packages don't have gconf .schemas, hicolor icon files, or .desktop files, remove the parts that handle those subjects.
+
Nel caso il pacchetto non contenesse schemi GConf, icone per il tema hicolor, o file .desktop, si possono tranquillamente rimuovere le parti che gestiscono questi ultimi.
  
==Example==
+
==Esempio==
For an example of above rules, take a look at the gedit PKGBUILD and the .install file supplied above:
+
Per un esempio delle regole citate, consultare il PKGBUILD del pacchetto gedit con relativo file .install fornito al seguente indirizzo:
http://repos.archlinux.org/wsvn/packages/gedit/repos/extra-i686/
+
https://projects.archlinux.org/svntogit/packages.git/tree/gedit/repos/extra-i686/

Revision as of 20:41, 18 June 2012

I pacchetti GNOME di Archlinux seguono un determinato schema.

Profilo di inizializzazione di GNOME

Non c'è più alcun profilo di inizializzazione. La vecchia riga dovrebbe essere eliminata da ogni PKGBUILD:

[ -z "$GNOMEDIR" ] && . /etc/profile.d/gnome.sh

Schemi GConf

Molti pacchetti GNOME installano schemi Gconf. Questi schemi vengono installati nel database del sistema GConf, che andrebbe evitato. Alcuni pacchetti mettono a disposizione l'opzione --disable-schemas-install per il ./configure, che spesso non funziona. Per questo motivo gconftool-2, possiede una variabile chiamata GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL, se questa viene impostata, gconftool-2 non aggiornerà alcun database. Nel creare pacchetti che installano file schema, utilizzare

make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR=${pkgdir} install

nello stage di installazione del pacchetto.

È necessario installare e rimuovere gli schemi GConf nel file .install, utilizzando pre_remove(), pre_upgrade(), post_upgrade() e post_install(). Utilizzare gconf-merge-schemas per unire diversi schemi in unico file specifico per uno pacchetto, installarli o disinstallarli tramite usr/sbin/gconfpkg --(un)install $pkgname. L'utilizzo di gconfpkg richieda la dipendenza gconf>=2.18.0.1-4 (or gconfmm>=2.20.0).

Schemi GSettings

Gli schemi Gconf verranno rimpiazzati dagli schemi Gsettings in un futuro molto prossimo, anche se alcune applicazioni li usano già (ad es. Empathy). Il sistema GSettings utilizza dconf come backend, perciò ogni pacchetto che contiene schemi GSettings deve avere dconf come dipendenza. Quando viene installato un nuovo schema GSettings sul sistema, il database GSettings deve essere rigenerato, ciò non deve accadere invece durante la fase di pacchettizzazione. Per evitare che avvenga la rigenerazione del database GSettings durante la pacchettizzazione, utilizzare lo switch --disable-schemas-compile sul ./configure. Per ricompilarlo al momento dell'installazione, aggiungere le righe seguenti al file .install nel blocco post_install, post_upgrade e post_remove: glib-compile-schemas usr/share/glib-2.0/schemas

Scrollkeeper e la documentazione

A partire da GNOME 2.20 non vi è più la necessità di utilizzare Scrollkeeper, in quanto Rarian legge direttamente i file OMF. Scrollkeeper-update è quindi un'abitudine superata, ormai. L'unico requisito è la soddisfazione della dipendenza di compilazione gnome-doc-utils>=0.11.2.

File .desktop

Molti pacchetti installano file .dektop compatibili con le specifiche di Freedesktop.org, e registrano chiavi MimeType al loro interno. L'esecuzione di update-desktop-database -q all'interno del post_install() e del post_remove() è raccomandata (il pacchetto dovrebbe dipendere da desktop-file-utils in questo caso)

Cache delle icone GTK

Alcuni pacchetti installano le proprie icone all'interno del tema hicolor. Questi pacchetti dovrebbero dipendere da hicolor-icon-theme e dovrebbero eseguire gtk-update-icon-cache -q -t -f usr/share/icons/hicolor nelle funzioni post_install(), post_upgrade() e post_remove().

File .install

Per molti pacchetti GNOME, i file .install sono esattamente identici. Il pacchetto gedit contiene un file .install molto generico. https://projects.archlinux.org/svntogit/packages.git/tree/gedit/repos/extra-i686/gedit.install

Fondamentalmente, l'unica cosa che deve essere modificata è la variabile pkgname in cima al file .install. Visto che pacman non fornisce il nome del pacchetto come variabile, dovremo fornirlo noi nel file .install. Nel caso il pacchetto non contenesse schemi GConf, icone per il tema hicolor, o file .desktop, si possono tranquillamente rimuovere le parti che gestiscono questi ultimi.

Esempio

Per un esempio delle regole citate, consultare il PKGBUILD del pacchetto gedit con relativo file .install fornito al seguente indirizzo: https://projects.archlinux.org/svntogit/packages.git/tree/gedit/repos/extra-i686/