sudo pacman -Syu
Intento actualizar todos los paquetes usando pacman en mi Manjaro Linux y pacman necesariamente hace todo lo posible para descargar las últimas actualizaciones de todos los paquetes disponibles y después de verificar si hay conflictos de archivos, arroja
... (126/126) checking keys in keyring 100% (126/126) checking package integrity 100% (126/126) loading package files 100% (126/126) checking for file conflicts error: failed to commit transaction (conflicting files) npm: /usr/lib/node_modules/npm/lib/exec/get-workspace-location-msg.js exists in filesystem npm: /usr/lib/node_modules/npm/node_modules/@npmcli/git/lib/utils.js exists in filesystem npm: /usr/lib/node_modules/npm/node_modules/balanced-match/.github/FUNDING.yml exists in filesystem npm: /usr/lib/node_modules/npm/node_modules/just-diff/index.d.ts exists in filesystem npm: /usr/lib/node_modules/npm/node_modules/just-diff/index.tests.ts exists in filesystem npm: /usr/lib/node_modules/npm/node_modules/libnpmexec/CHANGELOG.md exists in filesystem npm: /usr/lib/node_modules/npm/node_modules/libnpmexec/LICENSE exists in filesystem npm: /usr/lib/node_modules/npm/node_modules/libnpmexec/README.md exists in filesystem npm: /usr/lib/node_modules/npm/node_modules/libnpmexec/lib/cache-install-dir.js exists in filesystem npm: /usr/lib/node_modules/npm/node_modules/libnpmexec/lib/get-bin-from-manifest.js exists in filesystem npm: /usr/lib/node_modules/npm/node_modules/libnpmexec/lib/index.js exists in filesystem npm: /usr/lib/node_modules/npm/node_modules/libnpmexec/lib/manifest-missing.js exists in filesystem npm: /usr/lib/node_modules/npm/node_modules/libnpmexec/lib/no-tty.js exists in filesystem npm: /usr/lib/node_modules/npm/node_modules/libnpmexec/lib/run-script.js exists in filesystem npm: /usr/lib/node_modules/npm/node_modules/libnpmexec/package.json exists in filesystem npm: /usr/lib/node_modules/npm/node_modules/proc-log/LICENSE exists in filesystem npm: /usr/lib/node_modules/npm/node_modules/proc-log/README.md exists in filesystem npm: /usr/lib/node_modules/npm/node_modules/proc-log/index.js exists in filesystem npm: /usr/lib/node_modules/npm/node_modules/proc-log/package.json exists in filesystem Errors occurred, no packages were upgraded.¿Debo hacer algo específico para los node_modules que supongo que son los módulos de nodo instalados globalmente para sobrescribirlos o algo así?
Eliminar primero el paquete npm y luego eliminar el directorio node_modules es una solución alternativa que utilicé para que esto funcionara. Sin embargo, no estoy seguro de si esa es la solución correcta. Puede hacer algo como esto antes de realizar una actualización completa y luego volver a instalar el npm.
$ sudo pacman -Rns npm $ sudo rm -R /usr/lib/node_modules/npm/ $ sudo rm -R /usr/share/man/man1/ $ sudo pacman -Syyu $ sudo pacman -S npmPuede sudo pacman -S npm --overwrite '/usr/lib/node_modules/npm/*'
Comentario del autor de la respuesta:
Básicamente resuelve conflictos sobrescribiendo archivos. En su caso, todos los archivos en conflicto se encuentran en
/usr/lib/node_modules/npm/por lo tanto,*coincidirá con todos ellos. No es necesario eliminarlos manualmente conrm -r, lo que dejaría el paquete en un estado inconsistente. Es una buena práctica actualizar/actualizar después consudo pacman -Syyu.
Simplemente sudo rm -fr /usr/lib/node_modules también funcionará. node_modules es donde npm compila las cosas, así que simplemente elimine el contenido de la compilación.