Quel poco che sapevo io di Smart mi è stato confermato da un velocissimo guglamento: la forza di questo gestore di pacchetti sta nella capacità di gestire i più disparati tipi di repository con un’unica interfaccia, grazie a miracolosi algoritmi che calcolano le “precedenze”. APT, RPM, DEB, URPMI, YAST, TGZ ecc ecc …praticamente supporta *tutti* i formati finora conosciuti in ambito GNU/Linux!
Quello che avevo sempre male interpretato è che tutta questa potenza non è necessariamente usata sempre e in ogni sistema, anzi è proprio l’opposto. Se Ubuntu adotterà Smart non significa certo che installeremo RPM o TGZ nella nostra box! Smart su una ubuntu cercherà sempre di usare DEB, e tra i vari “canali” registrati cercherà sempre di utilizzare quelli con priorità più alta, ossia quelli ufficiali di Ubuntu. Solo in caso di mancanza di altra scelta si ricorrerà a formati non nativi, e questa è una cosa che già ora succede abbastanza spesso: a chi non è capitato di installare un rpm su debian (magari prima convertendolo con alien)?
Tutto molto bello quindi? Beh secondo me… nì. Il problema è che il numero di pacchetti per una distro sta diventando sempre più alto, ed è sempre più complicato tenere testa a esigenze e dipendenze e conflitti che ogni pacchetto porta con sè. La faccenda è vecchia e di non facile soluzione. Da una parte avere un database centralizzato pone indubbi vantaggi, dall’altra è uno sforzo assurdamente enorme continuare ad aggiornare milioni di repository sparsi per internet, tutti largamente incompatibili tra loro :(