Intanto:
http://www.slackpkg.org/documentation.html
L'ultima volta che ho usato slackpkg emi pare dalla documentazione che non sia cambiato nulla:
- non supporta la risoluzione automatica delle dipendenze
- si appoggia unicamente al repository ufficiale o ad un suo mirror (solo http o ftp).
Quindi: la gestione delle dipendenze su slackware è tradizionlamente demandata all'utente.
Apt, pacman, yum ecc ecc che gestiscono i pacchetti su altre distribuzioni supportano la risoluzione automatica delle dipendenze.
La differenza sta nel come sono fatti i pacchetti slackware:
ufficialmente tali pacchetti non contengono alcuna informazione circa le dipendenze necessarie per far girare il software che siinstalla.
Invece i pacchetti .deb o .rpm prevedono questa caratteristica.
Su slackware puoi installare tutto quelleo che vuoi, salvo poi scoprire che un software non gira perchè magari gli manca qualche libreria installata.
Slackpkg non fa eccezione, non aggiunge nulla ai pkgtools ufficiali e di fatti penso che si il tool quanto più vicino ai dettami di Pat.
Slackpkg serve solo a collegarsi ad un repo ufficiale remoto e scaricare il pacchetto, poi passa la palla ai pkgtools...
Su altre distribuzioni che prevedono la risoluzione automatica delle dipendenze, per installare un pacchetto devi installare anche le dipendenze, ricordo parecchie imprecazioni le prime volte che armeggiavo con gli rpm...poi penso cisia la possibilità di forzare il sistema, ma in quei sistemi è meglio affidarsi ai tools come yum o aptget.
Ti chiederai, ma come fa un nuvo arrivato ad usare slackware. Semplice:
se lanci un eseguibile cche non può girare perchè manca una libreria ottieni un errore che ti dice quale file manca.
Noto il file mancante devi cercare a quale pacchetto tale file appartiene e poi installare il pacchetto.
Il comando ldd in questi casi è molto utile: preso l'eseguibile /usr/bin/pippo che non funziona perchè gli mancano diverse librerie, se dai
ldd /usr/bin/pippo
ottieni tutte le librerie che necessita pippo per funzionare, ed alcune risulteranno "not found" ovvero non presenti...sono quelle che devi installare.
Quindi per capire cosa manca basta:
ldd /usr/bin/pippo |grep not
E ottieni la lista ci ciò che manca.
Il passo successivo sta nel capire a quale pacchetto appartiene ciascun file indicato dall'output precedente.
Se il pacchetto mancante appartiene al repository ufficiale, c'è un motore di ricerca a questo indirizzo:
http://packages.slackware.it/
Se il pacchetto mancante appartiene al repo slacky o a quello ufficiale, c'è un motore di ricerca messo in piedi di recente da
teox99:
http://www.teoxonline.com/utils/sse/
A breve direttamente su slacky.eu dovrebbe aggiunta questa possibilità al motore di ricerca.
in tali motori, tu metti il nome de flie che ti manca, e loro ti ritornano il nome del pacchetto .tgz in cui sta quel file.
C'è anche un metodo alternativo:
I files MANIFEST.bz2 presenti nei repositories (ufficiali e non) sono files di testo contenenti i nomi di tutti i files presenti nel repository (non i pacchetti, prprio i files....): quindi ti basta usare grep dopo avere scompattato tali files crcando il pattern di ricerca del tuo file mancante e trovi a quale pacchetto appartiene.
Determinato il pacchetto: lo installi e ripeti l'operazione per gli altri files macanti. Così risolvi le dipendenze a mano, senza la necessità di conoscere molto del sistema.
Detto questo, ci sono strumenti che si allontanano dalla tradizione slackware e funzionano tipo yum o apt, si tratta di slaptget e swaret...magari ce ne sono anche altri....non so. Comunque questi supportano le dipendenze ma mi pare che anche i pacchetti creati nei repo debbano essere concepiti per supportare questi tool ovvero avere al loro interno informazioni sui pacchetti da installare per soddisfare le dipendenze richieste dal programma.
Non ho mai usato programmi del genere quindi non ti so dire di più, aspetta se mai altre risposte.
Tornando a slackpkg, ha il limite che usa solo il repo ufficiale quindi se devi utilizzare pacchetti di slacky per esempio non serve.
Ho sempre trovato scomodo dovermi collegare via web al repository di slacky e cercare il pacchetto così anche perchè non ho una connessione decente e comunque lo trovo scomodo così uso uno script fatto in casa che consulta i files PACKAGES.TXT presenti nei repo e cerca un pattern di ricerca che gli dò come argomento. Da anni lo uso con soddisfazione e devo ringraziare l'aiuto che mi diede tale David Paleino che ancora frequenta il newsgroup icoli.
Più volte ho deciso di mettere mano a quello script per migliorarlo, perchè poi alla fine l'ho scritto io e ora noto alcune ineleganze. Però poi ha sempre fatto il suo lavoro e quindi non ho mai avuto l'esigenza reale di migliorarlo.
Per la questione dipendenze ti cito anche sto link ad una recente discussione:
viewtopic.php?f=4&t=28728&start=15