Skip to main content

Windows Package Manager (WinGet)

Introduction

Microsoft a mis en place un nouveau package pour l’installation de programme en ligne de commande (CMD ou PowerShell). Et suite aux nouvelles politiques de Mircrosoft le logiciel est disponible sur github.

Attention, Windows Package Manager est en développement donc à vos risques et périls

Installation

Pour utiliser cette nouvelle fonctionnalité qui est encore en preview (actuellement en version v0.1.41331 Preview), il faut installer la dernière version disponible sur :

Microsoft a déjà publié en français une documentation sur cette fonctionnalité : Gestionnaire de package Windows

winget dans la pratique

winget [<command>] [<options>]
Commande Description
search Rechercher une application
install Installer une application
show Affiche les informations d'une ou plusieurs applications
source Permet de gérer les sources d'application
hash Génère le hachage SHA256 pour le programme d’installation
validate Valide un fichier manifeste pour l’envoi dans le dépôt du Gestionnaire de package Windows
winget search [[-q] <query>] [<options>]
Commande Description
-q,--query Requête utilisée pour rechercher une application
--id Filtrer les résultats par identifiant
--name Filtrer les résultats par nom
--moniker Filtrer les résultats par nom d’application
--tag Filtrer les résultats par mot-clé
--command Filtrer les résultats par commande
-s,--source Rechercher une application à l’aide de la source indiquée
-n,--count Ne pas afficher plus de résultats que le nombre spécifié
-e,--exact Rechercher une application à l’aide d’une correspondance exacte

winget-search.png

winget install

winget install [[-q] <query>] [<options>]
Commande Description
-q,--query Requête utilisée pour rechercher une application
-m,--manifest Chemin d’accès au manifeste de l’application
--id Filtrer les résultats par identifiant
--name Filtrer les résultats par nom
--moniker Filtrer les résultats par nom d’application
-v,--version Utiliser la version indiquée; la version par défaut est la dernière version
-s,--source Rechercher une application à l’aide de la source indiquée
-e,--exact Rechercher une application à l’aide d’une correspondance exacte
-i,--interactive Demander une installation interactive; l’intervention de l’utilisateur peut être nécessaire
-h,--silent Demander une installation sans assistance
-o,--log Emplacement du journal (si pris en charge)
--override Remplacer les arguments à transmettre au programme d’installation
-l,--location Emplacement d’installation (si pris en charge)
Exemple d’installation
winget install -h Microsoft.AzureCLI
winget install Microsoft.AzureCLI

Pour l'exemple je voulais faire une silent install, mais comme je n'avais pas lancé ma session powershell en administrateur, j'ai eu une erreur.

winget-install.png
Recherche via la commande -q
winget install -q Microsoft

winget-install-search.png

Faite attention avec install -q, si il n'y a qu'un choix cela installe directement le logiciel. C'est ce qui m'ai arrivé avec la recherche sur Notion.

winget install -q webnotion

winget-install-search2.png

winget source

winget source <command>
Commande Description
add Ajouter une nouvelle source
list Répertorier les sources actuelles
update Mettre à jour les sources actuelles
remove Supprimer les sources actuelles
reset Réinitialiser les sources
winget source list

winget-source-liste.png

Actuellement, il n'y a que une seule source de possible. La commande winget source add n'a pas d’intérêt pour le moment.

winget source update

winget-source-update.png

La seule commande utile est : winget source update. Car la liste des applications disponibles augmente depuis la publication de beta. Les applications ont un processus de validation par Microsoft.

Les applications disponibles

La liste des application actuellement disponible sont consultable de deux façons :

Le site winstall.app permet de gérer en plus les lignes de commandes d’installation.

winget1.png

Comme on peut le voir en dessous, il est possible d'exporter dans un fichier .bat ou .ps1

winget2.png