Una de las características de los sistemas Linux son sus gestores de paquetes. Las distros suelen tener una serie de repositorios de software incluidos que permiten a los usuarios bajar e instalar programas con un solo comando de terminal, sin tener que buscar ni descargar nada desde páginas web. Gracias a estos gestores de paquetes es posible bajar todo tipo de programas de forma rápida y segura, además de asegurarnos de tenerlos siempre actualizados a la última versión. Windows, en este aspecto, siempre ha estado por detrás. Aunque, más vale tarde que nunca, esto va a cambiar gracias a la llegada del nuevo WinGet.
Instalar programas con un gestor de paquetes es mucho más cómodo y práctico que hacerlo de la forma clásica. La primera de sus ventajas es que nos ahorra tener que navegar hasta una web, movernos hasta el apartado de descargas y bajar el último instalador. Además, nos garantiza que siempre bajamos la última versión de forma segura, y evita que podamos caer en estafas.
A la hora de instalar los programas, los gestores de paquetes también nos ahorran tiempo. En vez de tener que seguir manualmente el asistente de instalación, el gestor (como APT, en Linux, o este WinGet de Windows) se encargan de completar la instalación sin que tengamos que interactuar con el programa.
WinGet, el gestor de paquetes de Microsoft para Windows 10
WinGet, Windows Package Manager, es un gestor de paquetes desarrollado por Microsoft que forma parte de las últimas versiones del sistema operativo. Gracias a él vamos a poder descargar e instalar todo tipo de programas desde CMD o PowerShell con un simple comando, evitando perder el tiempo buscando los instaladores de los programas en la red.
Este gestor de paquetes es de código abierto, por lo que está abierto a posibles auditorías, correcciones de errores y mejoras. Igualmente, los repositorios que utilizan también son abiertos, por lo que cualquier usuario puede revisarlos para comprobar que los programas que ofrece son seguros y actualizados y colaborar en su ampliación para poder encontrar prácticamente cualquier tipo de software que queramos.
Cómo usar WinGet
La finalidad de WinGet es muy similar a la de los gestores de paquetes de Linux, como APT, aunque más sencilla. Su objetivo es facilitar a los usuarios la tarea de buscar programas, bajarlos, instalarlos, actualizarlos y borrarlos. Y si un programa concreto tiene algunas dependencias, automáticamente las satisfará para garantizar que el software funciona correctamente.
Ver ayuda e información de WinGet
Lo primero que vamos a hacer es acceder a la ayuda de este gestor de paquetes. Esta ayuda podemos encontrarla fácilmente ejecutando el siguiente comando, tanto en CMD como en PowerShell:
winget --help
Aquí vamos a poder ver los comandos que podemos usar con este gestor de paquetes, además de otra información útil sobre el funcionamiento de la herramienta. En caso de querer conocer información más específica sobre un comando concreto, podemos pasarle el parámetro «-?».
winget install -?
También podemos obtener información sobre la versión del gestor de paquetes con el siguiente comando:
winget --version
Y otra información útil para solucionar problemas con:
winget --info


Abrir ajustes y activar funciones experimentales
Esta herramienta suele incluir de vez en cuando funciones experimentales. Estas, por motivos de calidad, vienen desactivadas por defecto, y para poder usarlas es necesario activarlas manualmente dentro del archivo de configuración del programa. Para ver todas estas funciones, lo que debemos hacer es ejecutar el siguiente comando:
winget features
Como podemos ver, aquí nos aparecerán todas las funciones del programa, su estado (si está habilitada o deshabilitada) y el comando con el que podemos lanzarla. Si queremos activar (o desactivar) alguna de estas funciones, ejecutaremos el siguiente comando para abrir los ajustes:
winget settings
Abrirá un fichero json en nuestro editor por defecto, y debemos añadir a la lista de «experimentalFeatures» las funciones que queremos activar (con true) o desactivar (con false).
Guardamos los cambio, y la próxima vez que lancemos el comando «winget» ya estarán estas funciones activadas. Desde estos ajustes también podemos cambiar otros parámetros del programa, como la apariencia visual de la barra de progreso.
Buscar programas y administrar repositorios de software
Conocer de memoria todos los programas que podemos encontrar en los repositorios de WinGet sería muy complicado. Por ello, Microsoft ha incluido dentro de su gestor de paquetes un sencillo buscador que nos permitirá buscar fácilmente el programa que queramos y conocer su nombre exacto para instalarlo.
Para ello debemos usar el parámetro «search», seguido del nombre (o una parte del mismo) que queremos buscar. Por ejemplo:
winget search fire
winget search chrom


Lo que nos interesa de este buscador es el ID que lleve el programa, ya que será el que tendremos que invocar para bajar e instalar el programa en el PC.
Otro parámetro que no podemos pasar por alto es «source». Con este parámetro vamos a poder administrar los orígenes de software (es decir, los repositorios) donde busca los programas WinGet. Podemos añadir nuevos repositorios, ver los que tenemos instalados, actualizarlos o borrarlos.
winget source
winget source list
Verificar e instalar programas
Una vez que hemos encontrado el programa que queremos instalar (recordamos, al usar el parámetro «search» debemos apuntar el ID del programa), ya podremos bajarlo e instalarlo en el ordenador. Sin embargo, antes de hacerlo, vamos a comprobar que todo está correcto.
El parámetro «show», seguido del nombre del paquete, nos permite ver toda la información del mismo.
winget show Mozilla.FirefoxESR
Si todo está correcto, ya podemos instalar el programa usando el parámetro «install», seguido del ID del programa anterior. Por ejemplo, para instalar la edición ESR de Firefox podremos hacerlo con el siguiente comando:
winget install Mozilla.FirefoxESR
Cuando termine el proceso de instalación el programa estará listo para utilizarse. No tendremos que hacer nada más.



Ver una lista con los programas instalados
Desde la versión 0.3 de esta herramienta podemos encontrar una nueva función muy útil: list. Gracias a ella vamos a poder ver una lista completa con todos los programas que tenemos instalados en nuestro ordenador. En esta lista estarán los programas que se han instalado con WinGet, por supuesto, así como aquellos que se han instalado a mano, desde la tienda o que forman parte del bloatware del sistema.
Para ver esta lista, simplemente debemos ejecutar el siguiente comando:
winget list
Esta lista es meramente informativa, pero nos puede resultar muy útil para usarla junto con otros comandos, como el de desinstalar, o el de actualizar (cuando esté disponible).
Actualizar los programas instalados
Actualizar los programas siempre ha sido una de las tareas más tediosas del mantenimiento del sistema operativo. Por suerte, las versiones más recientes de Winget, por fin, cuentan con esta posibilidad.
Podemos ejecutar el siguiente comando en cualquier versión superior a la 1.0 del programa para comparar las versiones de los programas que tenemos instalados en el ordenador con las versiones más recientes de cada uno de ellos.
winget upgrade
Podremos ver una lista completa con todos los paquetes que podemos actualizar. Podemos actualizar un programa concreto añadiendo, después del «upgrade», el nombre exacto del paquete, o actualizarlos todos de una vez ejecutando el siguiente comando:
winget upgrade --all
Desinstalar un programa
Como buen gestor de paquetes, WinGet nos permite también desinstalar programas desde la misma terminal de CMD o PowerShell. Para ello, lo que debemos hacer es usar el comando «winget search», como hemos explicado en el paso anterior, para saber exactamente cuál es el nombre del paquete del programa. Y una vez localizado el programa, lo que tenemos que ejecutar es «winget uninstall», seguido del nombre del paquete.
Una vez incluida la función «list», ahora podremos ver una lista completa con todos los programas que tenemos instalados en nuestro sistema. En esta lista estarán incluidos los programas que hayamos instalado desde WinGet, así como los que hayamos instalado desde otras fuentes. Y esto se debe a que este gestor de paquetes puede desinstalar igualmente cualquier programa independientemente de cuál haya sido su origen. Da igual si hemos bajado Firefox a mano, o si lo hemos instalado con el comando «install», vamos a poder desinstalarlo sin problemas con esta herramienta.
Por ejemplo, si queremos desinstalar Firefox ESR, el comando que debemos ejecutar es:
winget uninstall Mozilla.FirefoxESR
Veremos una barra de progreso, igual que al ir a instalar el programa, y cuando se complete, lo tendremos desinstalado por completo. Si el nombre del paquete tiene espacios (algo común en los programas instalados a mano) tendremos que introducir el nombre del programa entre comillas. No no tiene espacio, las comillas son opcionales.
Administrar dependencias
Función en desarrollo aún no disponible.
WinInstall, la forma más fácil de usar WinGet
Por supuesto, no ha pasado mucho tiempo hasta que han aparecido los primeros proyectos que faciliten el uso de esta herramienta. Sin llegar a ser una GUI como tal, WinInstall es una web que nos permite seleccionar todos los programas que queremos instalar y nos genera un script para instalarlos con WinGet.
Lo único que debemos hacer es seleccionar todos los programas que queremos instalar (podemos ver los programas más populares, o buscar los que queramos desde su buscador) hasta tener todos los que queramos instalar marcados.
Una vez marcados todos, elegiremos la opción de «Generar script».
En la siguiente página que nos cargará podremos ver el script que nos ha generado, así como una lista con todos los programas que se instalarán al ejecutarlo.
Podemos copiar el script al portapapeles y pegarlo en CMD o PowerShell, o descargar un archivo BAT para poder ejecutarlo haciendo doble clic. De esta manera vamos a poder tener nuestro propio script para instalar todos los programas que queramos con un simple doble clic, sin tener que bajar ningún instalador y ahorrándonos una gran cantidad de tiempo.