Questa non è affatto una risposta completa o esaustiva: i poster che avevo davanti mi davano già degli ottimi punti, vorrei solo aggiungere i miei 2 centesimi. Un'altra cosa: non mi sono mai abituato a apt / dpkg. Mi è sempre sembrato troppo complesso, mi sento davvero a mio agio con yum / rpm.
pacman è molto facile da usare, che è un pro e un contro - puoi imparare ad usarlo (creazione di pacchetti a parte) in un solo pomeriggio - usa funzionalità di gestione dei pacchetti per lo più intuitive e complete, ma - e questo è un grande ma - è estremamente inflessibile.
Se i progettisti non hanno pensato prima a una funzione, sei fregato.
Alcuni esempi: non esiste un versioning nativo in pacman. Se desideri effettuare il downgrade di una versione del pacchetto, devi scaricare quella particolare versione del pacchetto e utilizzare l'opzione -U (aggiornamento) per installare dal file. È molto orientato all'utilizzo sempre di pacchetti all'avanguardia sul tuo sistema.
Non esiste una vera pulizia della cache interna / ricostruzione completa. Se (a causa di un problema di rete) un download del pacchetto è stato corrotto, ad esempio durante -Syu, il messaggio di errore, sebbene accurato, non sarà di grande utilità - non individuerà il pacchetto corrotto anche con la verbosità "completa" e il debug attivato e nessuna quantità di -Syyc pulirà davvero la cache e scaricherà nuovamente i pacchetti. La buona notizia è che -Sc ti farà sapere dove sono i pacchetti scaricati in modo da poter semplicemente rimuovere quello offensivo (se riesci a capire quale sia) o tutti e riavviare -Syu.
Anche l'integrazione di pacman con dkms è alquanto problematica - durante l'installazione di un nuovo kernel ho continuato ad avere errori da dkms. Usando dkms build && dkms install contro il nuovo kernel ha funzionato senza intoppi, ma pacman non avrebbe fornito alcuna informazione sul motivo per cui dkms non è riuscito durante l'aggiornamento del kernel (sospetto che non abbia mai superato il percorso corretto del nuovo kernel, e lascia che dkms usi il valore predefinito (attualmente in esecuzione) kernel ma con versione errata).
Un altro aneddoto sulla sua inflessibilità - come detto, sono abituato a rpm / yum. Se ho un file sul mio sistema e desidero sapere quale pacchetto lo possiede, posso eseguire yum fornisce / path / to / file e ottenere TUTTI i pacchetti che possono metterlo lì, anche se nessuno di essi è installato. Se il file è stato inserito manualmente e ora desidero installare un pacchetto, rinominerà quello nuovo (aggiungi l'estensione .rpmnew) e lasciami scegliere cosa usare.
pacman semplicemente fa un errore del fatto che un file esiste già, ma con un messaggio di errore completamente irrilevante - si lamenta dei conflitti tra il proprietario del file "vero" e il pacchetto "filesystems" attualmente installato, come se fosse anche il proprietario dello stesso file. Inoltre è principalmente orientato verso le informazioni installate locali: cercare di ottenere informazioni (come elenchi di file e proprietà) di pacchetti non ancora installati è meno intuitivo.
In poche parole: non è maturo come lo yum, e probabilmente dpkg, che si presta alla sua facilità d'uso e alla relativa inflessibilità.