Pacchettizziamo con pbuilder

Linux Add comments

Come richiesto ecco che dopo essermi ben documentato vi riporto la procedura per creare pacchetti debian col tool pbuilder

Perchè pbuilder?

Perchè con mio piacere ho scoperto che è un tool molto potente è molto facile da utilizzare, l’utilizzo di pbuilder è il metodo consigliato per chi sviluppa o ha intenzione di pubblicare i propri pacchetti su un repository ufficiale/pubblico.

Con pbuilder possiamo

  • Pacchettizzare con facilità qualsiasi sorgente.
  • Pacchettizzare software anche per altre distribuzioni senza doverle necessariamente installare.
  • Pacchettizzare in maniera quasi del tutto automatica.
  • Se abbiamo culo partecipare al team dei backport testers Laughing

Come funziona

Pbuilder ci consente di installare una jail chroot totalmente isolata dal nostro sistema, in questa jail chroot verrà installato un ambiente minimale ma pienamente funzionale della distribuzione che scegliamo, possiamo quindi gestire più jails per ad esempio pacchettizzare sia per intrepid che per hardy.

Pbuilder inoltre si preoccupa di analizzare i sorgenti del software, calcolare e risolvere in automatico le dipendenze necessarie, compilare e pacchettizzare, ed infine eliminare il tutto (tranne i sorgenti), risolvendo cosi il problema di lasciare i pacchetti delle diepndenze come residui sul sistema occupando spazio inutilmente.

la preparazione

Di default pbuilder prevede l’installazione, all’interno della jail, dei soli pacchetti della componente main di ubuntu; se ci interessa abilitare le altre componenti dobbiamo modificare il file /etc/pbuilderrc decommentando la riga:

COMPONENTS=”main restricted universe multiverse”

L’installazione della jail chroot

Finita la preparazione di pbuilder dobbiamo iniziare a scaricare ed installare i pacchetti base della nostra distribuzione, poniamo il caso di voler pacchettizzare per ubuntu hardy heron, dobbiamo quindi dare il comando:

sudo pbuilder create –basetgz /var/cache/pbuilder/hardy.tgz –distribution hardy

dopo pochi minuti (dipende dal tipo di connessione e dalla potenza del vostro pc), la preparazione sarà ultimata e possiamo…

iniziare a pacchettizzare i sorgenti

per utilizzare pbuilder abbiamo bisogno dell’archivio dei sorgenti in formato tar.gz, e di un file di controllo dell’archivio, o file .dsc.

Se scarichiamo i sorgenti con apt dagli archivi ufficiali li avremo tutti e due, altrimenti dovremo procurarci questo file di controllo, o per meglio dire crearlo.

Possiamo quindi estrarre l’archivio dei sorgenti e una volta dentro possiamo dare il comando:

dpkg-buildpackage -us -uc -S

finita la procedura al livello superiore avremo un nuovo archivio tar.gz e questo fantomatico file .dsc; adesso il tutto è estremamente semplice basta il comando:

sudo pbuilder build –basetgz /var/cache/pbuilder/hardy.tgz –distribution hardy nomepacchetto.dsc

adesso non ci resta che aspettare, durante questo tempo pbuilder si occupera di:

  1. Scompattare la jail chroot

  2. Verifica delle dipendenze necessarie del pacchetto

  3. Scaricamento/installazione delle dipendenze

  4. Compilazione

  5. Creazione del pacchetto

  6. Eliminazione dei file temporanei utilizzati

se tutto andrà bene troveremo il pacchetto pronto nella cartella /var/cache/pbuilder/result

Manutenzione:

col tempo sarà necessario aggiornare la jail chroot, per non incorrere in problemi di dipendenze coi pacchetti creati, dobbiamo in questo caso lanciare:

sudo pbuilder update –basetgz /var/cache/pbuilder/hardy.tgz –distribution hardy

oppure cancellare la cache di pbuilder che nel tempo sarà diventata abbastanza voluminosa:

sudo pbuilder clean

questo ovviamente non cancellera i pacchetti creati in /var/cache/pbuilder/result.

E’ previsto anche l’utilizzo di uno script chiamato pbuilder-distribution ma ad essere sincero ancora non ho capito bene il funzionamento quindi per ora non scrivo nulla, anzi se qualcuno è interessato a contribuire su questo argomento può contattarci, avrà un account creato sul portale col quale potrà scrivere in prima pagina e su un proprio blog personale sempre interno al portale. Smile

[fonte Wiki Ubuntu Italia]

Condividi il post coi tuoi amici:
  • Print this article!
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • BarraPunto
  • BlinkList
  • blogmarks
  • co.mments
  • E-mail this story to a friend!
  • Fark
  • Fleck
  • FriendFeed
  • Gwar
  • HelloTxt
  • Identi.ca
  • laaik.it
  • LinkaGoGo
  • LinkArena
  • LinkedIn
  • Live
  • MSN Reporter
  • MySpace
  • Netvibes
  • NewsVine
  • Turn this article into a PDF!
  • Ping.fm
  • Reddit
  • Segnalo
  • Slashdot
  • StumbleUpon
  • Technorati
  • Twitter
  • Wikio IT
  • Yahoo! Bookmarks
  • Yigg
  • Blogosphere News
  • DZone

Articoli (forse) correlati:

  1. Pacchettizziamo in maniera semplice con DebCreator
  2. Pacchettizziamo (sorgenti in python) in maniera semplice con PyDebCreator
  3. Avant window navigator bazaar 0.2.1 [repository]
  4. Aperte posizioni per redattori
  5. Creare un pacchetto debian – parte 3°

Leave a Reply

 

CSS XHTML