
Instalé un programa (Paint.Net) con Choco. En ese momento, la versión era 3.13, pero Paint.Net se actualizó a 3.15.
Sin embargo, cuando ejecuto choco outdated
, todavía piensa que 3.13 está instalado y quiere (re)instalar 3.15.
¿Hay alguna manera de sincronizar lo que hay en la base de datos local de choco de los paquetes instalados con la versión actual?
Esta es la versión gratuita de choco.
Respuesta1
Esta opción existe en chocolatey, pero sólo en la versión paga. Se llama el Comando de sincronización. Puede encontrar más información sobre su uso en el enlace anterior. Puede encontrar un vídeo que describe el comando en YouTube.
Chocolatey también puede realizar esta sincronización automáticamente, como se describe en
Sincronizar con programas y funciones (solo ediciones con licencia).
Se dice que un administrador de programas gratuito para chocolatey que realiza sincronización es Implementar, que podrías probar.
En caso de necesidad, si no desea que chocolatey actualice ciertos paquetes, ignorándolos, puede usar el comando choco pin.
Para que Chocolatey conozca las aplicaciones instaladas sin ejecutar los scripts de instalación, utilice el parámetro -n
, --skippowershell
, --skip-powershell
, --skipscripts
, (todos ellos son el mismo modificador). Ver
--skip-scripts
--skip-automation-scripts
Cómo instalar o actualizar un paquete sin ejecutar scripts.
También puede conectar chocolatey con la contraparte de PowerShell de Microsoft para Linux apt-get: OneGet, ahora renombrado a Gestión de paquetes. Package Manager es el nombre de Microsoft, mientras que el proyecto de código abierto subyacente todavía se llama OneGet. Luego podrá utilizar PowerShell como interfaz única tanto para Windows como para Chocolatey.
Puede leer sobre OneGet en el blog de Microsoft.
Novedades de PowerShell: Introducción a OneGet en una línea con Windows PowerShell 5.0.
OneGet es ungerente de administradores de paquetesy admite chocolatey como proveedor de paquetes. Puede instalarlo en PowerShell usando el Comando Buscar-PackageProvider:
Luego podrá utilizar el Comando Install-PackageProvider para configurar la interfaz color chocolate (aunque atención, todavía es un prototipo, por lo que tendrás que tantear):
Install-PackageProvider chocolatey -Scope CurrentUser
Aquí hay un ejemplo de PowerShell sobre cómo instalar Notepad++ desde la galería chocolatey:
Puede encontrar más información en las siguientes referencias:
Respuesta2
Esta respuesta se basa en el resultado del siguiente comando:
choco outdated
Como se mencionó en otra respuesta, no existe una forma automática en la versión de código abierto de Chocolatey de actualizar la versión del paquete Chocolatey, según la versión de la aplicación que se actualiza de otra manera. En una versión con licencia de Chocolatey, estocaracterísticaestá disponible.
Si desea realizar la instalación inicial de una aplicación con Chocolatey, es decir
choco install paint.net
y luego dejar que la aplicación se actualice sola, entonces el mejor consejo sería fijar el paquete usando elalfiler dominio. Esto se haría con el siguiente comando:
choco pin add -n="paint.net"
Esto significará que cuando ejecute el choco upgrade all
comando, suponiendo que lo esté utilizando, este paquete ya no se considerará para una actualización, incluso si se encuentra una nueva versión. Además, el resultado del choco outdated
comando cambiará a lo siguiente:
Si REALMENTE desea eliminar la entrada del choco outdated
informe, pero también desea confiar en la capacidad de la aplicación para actualizarse, entonces debería poder ejecutar el siguiente comando:
choco upgrade paint.net --skip-automation-scripts
Esto le indica a Chocolatey que actualice el paquete a la versión disponible actualmente, pero también evitará la ejecución del archivo chocolateyInstall.ps1 (y otros archivos), lo que significará que el instalador de la aplicación nunca se ejecutará. Como se muestra aquí:
Después de ejecutar el comando anterior, la salida del choco outdated
comando se convierte en: