Pagina 1 di 2

nuovo requiredbuilder

Inviato: mar 24 lug 2007, 3:53
da Stabe
Ciao a tutti,
di recente ho fatto molti cambiamenti al codice di requiredbuilder quindi prima di rilasciare la nuova versione aspetto qualche giorno per fare più test ed essere sicuro che tutto funzioni a dovere :)
Se qualcuno vuole provare la beta, la potete scaricare qui:

http://www.stabellini.net/requiredbuilder-beta

I miglioramenti sono i seguenti:

-requiredbuilder ora può essere eseguito in due istanze contemporaneamente su pacchetti diversi senza conflitti

-è possibile specificare una lista di dipendenze da includere e una lista di dipendenza da evitare per ogni singolo pacchetto in maniera differenziata, usando le variabili d'ambiente ADD e EXCLUDE.
Quindi per esempio potete eseguire requiredbuilder nel seguente modo:

Codice: Seleziona tutto


ADD="openssl" \
EXCLUDE="mysql openldap" \
requiredbuilder /tmp/package-postfix

per essere sicuri che che openssl sia inclusa come dipendenza mentre mysql e openldap non ci siano nella lista finale.
Da notare che in queste liste per il momento non è possibile specificare versioni o nomi di pacchetto completi.

-ultima modifica è l'aggiunta dell'opzione -r, ovvero ricerca ricorsiva delle dipendenze.
Questa è utile nel caso il pacchetto A dipenda da B, il pacchetto B dipenda da C e voi volete essere sicuri che nella lista delle dipendenze di A ci siano sia B che C.
In generale questa opzione non dovrebbe essere usata perchè rallenta di molto l'esecuzione ma può essere utile in alcuni casi particolari o per debugging. Allo scopo di velocizzare la cosa potete configurare requiredbuilder in modo da utilizzare un file PACKAGES.TXT per leggere le dipendenze delle dipendenze (quelle dal secondo livello in poi), aggiungendo una linea al file /etc/requiredbuilder.conf:

Codice: Seleziona tutto

PACKAGES=/path/PACKAGES.TXT
quindi per esempio potete scaricare il file PACKAGES.TXT del repository di slacky, settare il percorso tramite la variabile PACKAGES in requiredbuilder.conf e poi provare a generare tutto l'albero delle dipendenze di un pacchetto, ovvero quello che alla fine l'utente andrà a scaricarsi tramite slapt-get per poter installare il pacchetto in questione.

Inutile dire che con tutte queste modifiche mi aspetto un certo quantitativo di bug :P quindi fatemi sapere se ne trovate qualcuno.
Grazie,

Stefano Stabellini

Inviato: mar 24 lug 2007, 7:48
da Loris
Stefano io sono già in test 8)
Come sempre grazie del lavoro che fai ;)

Inviato: mar 24 lug 2007, 8:18
da gohanz
Grazie lo scarico subito per i test, mi interessa sopratutto la funzionalità di includere dipendenze! ;)

Inviato: mar 24 lug 2007, 8:43
da michelino
Ottimo lavoro !!!

Inviato: mar 24 lug 2007, 9:41
da submax82
ragazzi non sapevo che stabellini facesse parte della community di slacky!!! che bello!!! sono onorato :blob7: :occasion6: :occasion5:

ottimo lavoro... vedo anche che è passato alla gpl3... anche io, per il mio tool, ci stò pensando :roll:

Inviato: mar 24 lug 2007, 17:43
da Stabe
Grazie a tutti voi del supporto!

released!!!

Inviato: gio 2 ago 2007, 3:28
da Stabe
Finalmente ho rilasciato la tanto attesa ;) versione 0.16.0 di requiredbuilder.
Non ho cambiato nulla dalla beta per quanto riguarda l'opzione -r per la ricerca ricorsiva perchè mi sembra che funzioni a dovere.
Invece ho cambiato qualcosa nella sintassi delle liste ADD e EXCLUDE:
ora sono liste separate da virgole.
Continuando con l'esempio precedente:

Codice: Seleziona tutto

ADD="openssl" \
EXCLUDE="mysql, openldap" \
requiredbuilder /tmp/package-postfix
Inoltre ho aggiunto supporto per le versioni dei pacchetti, la lista ADD supporta pienamente lo standard slapt-get quindi potete scrivere per esempio:

Codice: Seleziona tutto

ADD="openssl >= 0.9.8e-i486-1, glibc = 2.5-i486-1"
invece la lista EXCLUDE è più semplice e supporta solo una singola versione da escludere per pacchetto, versione che potete specificare scrivendo il nome completo del pacchetto oppure usando l'operatore uguale:

Codice: Seleziona tutto

EXCLUDE="sendmail-8.14.1-i486-1, mysql = 5.0.37-i486-1"
spero che che sia tutto chiaro e che vi piacciano le nuove funzionalità.
Come al solito scrivetemi se qualcosa non va come dovrebbe.
Ciao,

Stefano Stabellini

Inviato: gio 2 ago 2007, 7:39
da Loris
Ottimo lavoro Stefano, installo subito la nuova release e la testo ;)
Grazie mille, sei sempre molto gentile :D

Inviato: ven 3 ago 2007, 14:33
da submax82
aggiorno subito...

Inviato: dom 5 ago 2007, 13:02
da gohanz
Loris ho aggiunto queste righe nello SlackBuild di PyQt4!

cd $PKG
chown -R root:root .
ADD="sip >= 4.7-i486-1as, qscintilla >= 2.1-i486-1as" \
requiredbuilder -y -v -s $CWD $PKG
makepkg -l y -c n $CWD/$NAME-$VERSION-$ARCH-$BUILD.tgz

if [ "$1" = "--cleanup" ]; then
rm -rf $TMP
fi

Però mi aggiunge solo sip >= 4.7-i486-1as allo slack-required :roll:

Inviato: dom 5 ago 2007, 13:18
da Loris
Ho appena provato e a me funziona anche con più pacchetti, solo che ho eliminato lo spazio dopo la virgola, altrimenti mi generava un required così

Codice: Seleziona tutto

 prova >= 0.00-1sl
cxxlibs >= 6.0.8-i486-4 | gcc-g++ >= 4.1.2-i486-1
gcc >= 4.1.2-i486-1
glibc-solibs >= 2.5-i486-4
ladspa >= 1.12-i686-1sl
vedi il prova in alto ? spostato !
tolto lo spazio così

Codice: Seleziona tutto

cxxlibs >= 6.0.8-i486-4 | gcc-g++ >= 4.1.2-i486-1
gcc >= 4.1.2-i486-1
glibc-solibs >= 2.5-i486-4
ladspa >= 1.12-i686-1sl
prova >= 0.00-1sl

Inviato: dom 5 ago 2007, 15:49
da gohanz
Ok allora elimino lo spazio! ;)

Senza lo spazio funziona bene! :D

Inviato: dom 5 ago 2007, 19:59
da Stabe
Ok cerchero' di eliminare il problema dello spazio nella prossima versione.
In teoria slapt-get dovrebbe funzionare comunque anche se c'e' lo spazio, ma sicuramente e' molto antiestetico :D

Inviato: dom 5 ago 2007, 20:05
da Loris
Stefano siamo perfezionisti \:D/

Inviato: dom 5 ago 2007, 20:22
da Stabe
LOL
Infatti non e' un caso che i vostri pacchetti siano i migliori :)