1 508
contributi
S3v (discussione | contributi) Nessun oggetto della modifica |
(revisionata, corretti alcuni errori, modificata gerarchia titoli) |
||
Riga 1: | Riga 1: | ||
=Introduzione= | |||
==Introduzione== | |||
Il pacchetto bootsplash per Debian, presente nei repository: | Il pacchetto bootsplash per Debian, presente nei repository: | ||
<pre> | <pre> | ||
Riga 5: | Riga 6: | ||
deb-src http://debian.bootsplash.de unstable main | deb-src http://debian.bootsplash.de unstable main | ||
</pre> | </pre> | ||
è molto comodo per la gestione dei temi, ma ha un ''difetto'': utilizza debconf per la gestione dei temi. Questo porta ad un effetto collaterale: i temi installati manualmente non saranno riconosciuti e per poterli usare si dovranno eseguire operazioni scomode (rispetto ad un semplice | è molto comodo per la gestione dei temi, ma ha un ''difetto'': utilizza debconf per la gestione dei temi. Questo porta ad un effetto collaterale: i temi installati manualmente non saranno riconosciuti e per poterli usare si dovranno eseguire operazioni scomode (rispetto ad un semplice <code>dpkg-reconfigure bootsplash</code> :-) ). | ||
Vedremo, ora, come creare un pacchetto Debian contenente un tema, e come gestire il template di debconf per aggiornare la lista dei temi. | Vedremo, ora, come creare un pacchetto Debian contenente un tema, e come gestire il template di debconf per aggiornare la lista dei temi. | ||
Riga 11: | Riga 12: | ||
{{Box|Nota Bene:|gli script qui descritti non sono opera mia, ma di [mailto:oliver_at_dediziert_dot_org Oliver Sorge], che mantiene i temi presenti nel repository sopra riportato}} | {{Box|Nota Bene:|gli script qui descritti non sono opera mia, ma di [mailto:oliver_at_dediziert_dot_org Oliver Sorge], che mantiene i temi presenti nel repository sopra riportato}} | ||
=Requisiti= | ==Requisiti== | ||
Per poter creare un pacchetto Debian dobbiamo installare i seguenti pacchetti: | Per poter creare un pacchetto Debian dobbiamo installare i seguenti pacchetti: | ||
* build-essential | * build-essential | ||
Riga 18: | Riga 19: | ||
* debhelper | * debhelper | ||
=Creazione del pacchetto= | ==Creazione del pacchetto== | ||
Estraiamo il pacchetto contenente il tema, e rinominiamo la directory contenente il tema in un formato del tipo | Estraiamo il pacchetto contenente il tema, e rinominiamo la directory contenente il tema in un formato del tipo <code>bootsplash-theme-<nometema>-<versione></code>. | ||
La directory deve contenere le directory images, ... | La directory deve contenere le directory images, ... | ||
Riga 27: | Riga 28: | ||
$ dh_make --copyright GPL | $ dh_make --copyright GPL | ||
</pre> | </pre> | ||
ovviamente dopo aver verificato la licenza del tema | ovviamente dopo aver verificato la licenza del tema. | ||
Alla domanda: | Alla domanda: | ||
Riga 34: | Riga 35: | ||
[s/m/l/k]</pre> rispondiamo con una ''s''. | [s/m/l/k]</pre> rispondiamo con una ''s''. | ||
Controlliamo i dati riportati (per il nome e l'email possiamo usare le variabili d'ambiente $DEBEMAIL e $DEBFULLNAME); se tutto è corretto è possibile andare avanti. | Controlliamo i dati riportati (per il nome e l'email possiamo usare le variabili d'ambiente <code>$DEBEMAIL</code> e <code>$DEBFULLNAME</code>); se tutto è corretto è possibile andare avanti. | ||
Verrà così creata la directory debian/, contenente tutto il necessario per il nostro pacchetto. | Verrà così creata la directory <code>debian/</code>, contenente tutto il necessario per il nostro pacchetto. | ||
==La directory debian/*== | ===La directory <code>debian/*</code>=== | ||
===Rimozione dei file non necessari=== | ====Rimozione dei file non necessari==== | ||
La directory debian/ contiene molti file non necessari, che possiamo tranquillamente rimuovere: | La directory <code>debian/</code> contiene molti file non necessari, che possiamo tranquillamente rimuovere: | ||
<pre> | <pre> | ||
$ cd debian | $ cd debian | ||
Riga 46: | Riga 47: | ||
</pre> | </pre> | ||
===.templates=== | ====<code>.templates</code>==== | ||
Dobbiamo creare il template utilizzato da debconf. Creiamo, quindi, un file del tipo | Dobbiamo creare il template utilizzato da debconf. Creiamo, quindi, un file del tipo <code>bootsplash-theme-<nometema>.template</code> con il seguente contenuto: | ||
<pre> | <pre> | ||
Template: shared/bootsplash-theme | Template: shared/bootsplash-theme | ||
Riga 64: | Riga 65: | ||
remember to include the proper (vga=???) line in your lilo.conf. | remember to include the proper (vga=???) line in your lilo.conf. | ||
</pre> | </pre> | ||
Ricordandoci di sostituire a | Ricordandoci di sostituire a <code><nometema></code> il nome del nostro tema ed eventualmente sistemare i valori delle risoluzioni. | ||
===rules=== | ====<code>rules</code>==== | ||
Il file | Il file <code>debian/rules</code> necessita di molte modifiche. Conviene, quindi, sostituire il contenuto con questo: | ||
<pre> | <pre> | ||
#!/usr/bin/make -f | #!/usr/bin/make -f | ||
Riga 130: | Riga 131: | ||
</pre> | </pre> | ||
ricordando le | ricordando le seguenti cose: | ||
* fare attenzione ad usare la tabulazioni (tasto <tab>) al posto degli spazi per le indentazioni (obbligatorie)! | * fare attenzione ad usare la tabulazioni (tasto <code><tab></code>) al posto degli spazi per le indentazioni (obbligatorie)! | ||
* modificare la variabile THEME_DIRS riportando solo le directory presenti all'interno della directory | * modificare la variabile <code>THEME_DIRS</code> riportando solo le directory presenti all'interno della directory <code><nometema>-<versione></code> ad eccezione di <code>debian</code>. | ||
* modificare la variabile THEME_SUFFIX con il nome del tema. | * modificare la variabile <code>THEME_SUFFIX</code> con il nome del tema. | ||
===control=== | ====<code>control</code>==== | ||
Il file | Il file <code>debian/control</code> necessita di alcune modifiche: | ||
* | * <code>Section</code> dovrebbe essere modificata in <code>graphics</code> | ||
* | * <code>Architecture</code> può essere modificato in <code>all</code>, visto che il pacchetto non sarà dipendente dall'architettura | ||
* | * <code>Depends</code> può essere modificato in <code>bootsplash (>= 3.0.0), debconf (>= 0.5) | debconf-2.0</code> | ||
* deve essere aggiunta la riga | * deve essere aggiunta la riga <code>Provides: bootsplash-theme</code> | ||
* la descrizione deve essere modificata nel seguente modo (in linea coi pacchetti di http://www.bootsplash.de ): | * la descrizione deve essere modificata nel seguente modo (in linea coi pacchetti di http://www.bootsplash.de ): | ||
<pre>Description: The bootsplash theme <nometema> | <pre>Description: The bootsplash theme <nometema> | ||
Riga 148: | Riga 149: | ||
Resolutions: 1280x1024</pre> | Resolutions: 1280x1024</pre> | ||
===dirs=== | ====dirs==== | ||
Dovrà contenere: | Dovrà contenere: | ||
<pre> | <pre> | ||
Riga 154: | Riga 155: | ||
</pre> | </pre> | ||
===docs=== | ====docs==== | ||
Dovrà contenere: | Dovrà contenere: | ||
<pre> | <pre> | ||
Riga 161: | Riga 162: | ||
se la directory è presente nei sorgenti del tema (altrimenti si può omettere questo file). | se la directory è presente nei sorgenti del tema (altrimenti si può omettere questo file). | ||
===postinst=== | ====postinst==== | ||
Usiamo direttamente quelli creati per i pacchetti dei temi presenti su http://www.bootsplash.org: | Usiamo direttamente quelli creati per i pacchetti dei temi presenti su http://www.bootsplash.org: | ||
<pre> | <pre> | ||
Riga 207: | Riga 208: | ||
exit 0 | exit 0 | ||
</pre> | </pre> | ||
===postrm=== | ====postrm==== | ||
<pre> | <pre> | ||
#! /bin/sh | #! /bin/sh | ||
Riga 271: | Riga 272: | ||
</pre> | </pre> | ||
===prerm=== | ====prerm==== | ||
<pre> | <pre> | ||
#! /bin/sh | #! /bin/sh | ||
Riga 320: | Riga 321: | ||
</pre> | </pre> | ||
=Compilazione= | ==Compilazione== | ||
La compilazione di un pacchetto è semplicissima: nella directory contenente i sorgenti diamo il seguente comando: | La compilazione di un pacchetto è semplicissima: nella directory contenente i sorgenti diamo il seguente comando: | ||
<pre> | <pre> | ||
Riga 327: | Riga 328: | ||
se tutto va a buon fine, verrà creato un pacchetto Debian nella directory superiore. | se tutto va a buon fine, verrà creato un pacchetto Debian nella directory superiore. | ||
=Test del pacchetto= | ==Test del pacchetto== | ||
L'unico modo per testare il pacchetto è installarlo (dpkg -i pacchetto.deb) e riconfigurare il pacchetto bootsplash (dpkg-reconfigure bootsplash) | L'unico modo per testare il pacchetto è installarlo (<code>dpkg -i pacchetto.deb</code>) e riconfigurare il pacchetto bootsplash (<code>dpkg-reconfigure bootsplash</code>): se tutto è stato fatto correttamente, nella lista apparirà il nuovo tema. | ||
=Conclusioni= | ==Conclusioni== | ||
La guida qui riportata è frutto dell'analisi dei pacchetti | La guida qui riportata è frutto dell'analisi dei pacchetti <code>bootsplash-theme-*</code> presenti nel repository di http://www.bootsplash.de ;) | ||
[[Categoria:Apt]] | [[Categoria:Apt]] | ||
[[Categoria:Apt-Dev]] | [[Categoria:Apt-Dev]] |
contributi