spina ha scritto:Stamattina mi sono svegliato con questo pensiero in testa. Risolvere il problema delle dipendenze una volta per tutte! Si sa che altre distribuzioni risolvono le dipendenze, ma che vuol dire di preciso "risolvere le dipendenze"?
Putroppo o per fortuna conosco solo la Slackware, e quindi non ho idea di cosa facciano le altre distribuzioni.
Non so le altre distribuzioni, ma per esempio OpenBSD, che usa pacchetti .tgz come Slackware (anche in quel caso si decomprimono in /) ci sono degli script accessori, come in Slackware
per esempio c'è +DISPLAY che è come un doinst.sh, +DESC che è come slack-desc e poi c'è un +CONTENTS che contiene il nome del programma, la dimensione, l'md5 di tutti i file inclusi, varie altre cose e le dipendenze. Queste sono segnalate in due modi:
depend, che mostra i programmi da cui dipende
wantlib, le librerie che richiede
Qesta cosa che in Slackware non è gestita ed i programmi che la usano si fanno una voce apposita in PACKAGES.TXT che si chiama SLACK-REQUIRED (mi sembra, o qualcosa di simile)
Basterebbe aggiungere una cosa di simile in ogni pacchetto (così posso usare i normali installpkg, etc... senza dipendere da software di dubbio gusto che leggono PACKAGES.TXT)
In pratica ogni pacchetto sa cosa gli serve e quindi va a prenderselo (in OpenBSD non c'è nessuna locazione perché prendi solo dai mirror ufficiali) dai mirror che abbiano indicato in un qualche file in /etc
In pratica il file .meta (che serve appunto per creare il file PACKAGES.TXT) andrebbe incluso nel .tgz, e poi fare in modo che gli script vada a leggerlo
Faccio presente che uno script per creare i file .meta è fatto da Alien Bob del team Slackware, quindi non è proprio eresia (anche se c'è da dire che lo script prevede la presenza di REQUIRED ma lo lascia vuoto). Ma del resto Alien Bob è quello che spinge per mettere PAM dentro la Slackware, il meno ortodosso del team mi sembra di capire
Come dici giustamente tu, vale la pena tutto questo? Non so rispondere, so che una "forte" dipendenza non mi piacerebbe. Con forte dipendenza intendo dire quel caso in cui togli una libreria (magari perché vuoi ricompilarti da solo per motivi tuoi) e mezzo sistema si vuole cancellare ed il gestore pacchetti va in tilt