15 votos

Eliminación de las herramientas de línea de comandos desinstaladas de las actualizaciones de la AppStore

He eliminado las herramientas de línea de comandos de Xcode de mi máquina esencialmente eliminando la carpeta. Sin embargo, AppStore todavía muestra las actualizaciones de las herramientas CLI, que obviamente no quiero.

He estado tratando de entender correctamente donde AppStore mira para averiguar lo que necesita ser actualizado, pero no he sido capaz de encontrar una respuesta segura todavía. Intenté editar el archivo updatejournal, pero eso no ayudó, así que lo he restaurado.

Empecé a sospechar que el hecho de que pkgutil muestra algunos CLTools -Los paquetes pueden ser la causa de esto. Sin embargo, olvidarlos no funciona, ya que las bombas no están en /var/db/receipts o /Library/Receipts (el pkgutil --forget esencialmente falla debido a esto).

Sin embargo, los encontré después de mucho buscar en /System/Library/Receipts . Sin embargo, no puedo borrarlos debido a la seguridad del sistema. Por supuesto, puedo evitarlo y borrarlos para ver si funciona, pero no quiero hacerlo "sólo para ver".

Me gustaría encontrar una solución adecuada a esto.

¿Alguna idea de lo que debería hacer aquí?

0 votos

1 votos

No del todo, como he escrito en la parte superior he borrado la carpeta, pero parece que otro comentarista de esa pregunta tiene el mismo problema que yo.

0 votos

Gracias por la respuesta. Lo enlazo ya que otros tendrán el mismo problema. +1 aquí y en la respuesta por supuesto

3voto

Bruno Voisin Puntos 1

Gracias Alex Esta era exactamente la información que necesitaba.

En una configuración de Mac bastante reciente (chip de silicio de Apple, MacOS 12.0 Monterey Beta), tras instalar las herramientas de línea de comandos y luego desinstalarlas borrando /Library/Developer/CommandLineTools y corriendo sudo xcode-select -r , seguía recibiendo actualizaciones de las herramientas en Preferencias del Sistema > Actualización de Software.

De hecho, los recibos están a /Library/Apple/System/Library/Receipts en forma de ficheros

com.apple.pkg.CLTools_Executables.{bom,plist}
com.apple.pkg.CLTools_SDK_macOS*.{bom,plist}
com.apple.pkg.CLTools_macOS_SDK.{bom,plist}

Están protegidos por SIP: para borrarlos, primero tuve que desactivar SIP (es decir, desactivar SIP, borrar los archivos, volver a activar SIP).

1voto

ashley Puntos 21

Al probar en MacOS 12.4, Actualización de Software en Preferencias del Sistema tiene el plist y bom almacenados en /Library/Apple/System como volumen de pacakges de instalación. El proceso para eliminarlos:

  1. desactivar SIP
  2. Ejecute la siguiente línea de comandos
  3. activar SIP

la línea de comandos:

Vol="/Library/Apple/System"; if [ "$(csrutil status | awk -F': ' '{print $2}')" = "disabled." ]; then /usr/sbin/pkgutil --pkgs="com.apple.pkg.CLTools_.*" --volume "$Vol" | while read -r pkg; do sudo /usr/sbin/pkgutil --forget "$pkg" --volume "$Vol"; done; else echo "After disbale SIP, run this command again, and then enable SIP."; fi

explicación sencilla si SIP está desactivado, lee todos los ID de paquete com.apple.pkg.CLTools_* y los elimina uno a uno asignando la ruta de volumen a "/Library/Apple/System".

0voto

Siguiendo con lo que TonyL. compartió, actualmente puedes (a partir de MacOS Ventura) olvidar cualquier paquete por:

  1. Desactivar temporalmente SIP
  2. Ejecutar sudo pkgutil --forget _ANY_PACKAGE --volume "/Library/Apple/System"
  3. Activar SIP

-2voto

Awk Puntos 101
  • Eliminar

    sudo rm -rf /Library/Developer/CommandLineTools
  • Si es necesario, instale de nuevo

    sudo xcode-select --install

1 votos

Esto está en varias otras respuestas y la mayoría de ellos tienen más información. ¿Qué hace que su respuesta sea buena para este sitio?

0 votos

Hey @mmmmmm dando la posibilidad de triple clic para copiar pegar línea entera hacer mi respuesta directa y diferente a los demás

0 votos

Así que edita la respuesta que no lo deja claro. para añadir la facilidad de uso.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X