Winget Upgrader is a Node.js command line tool that automates the process of updating software on your computer using Windows Package Manager (Winget).
Structure and appearance | |
---|---|
Dependencies | |
Console appearance |
Winget Upgrader uses Winget commands to update all software installed on your computer. It automatically checks for Winget on your system, performs the software updates, and keeps an event log for easy tracking of the process.
Windows Package Manager (Winget) is a package management tool for Windows that allows
you to easily install, update and uninstall software directly from the command line.
Winget allows you to update installed programs quickly and conveniently, making it
a useful tool for keeping your system up to date.
Before starting the update, the program checks whether Winget is installed on the system. If Winget is not installed, the program displays an error message and stops execution, providing instructions on how to install it.
Next, the program checks the version of Winget. If the version of Winget is less than the one required for correct execution of commands, the program displays an error message and provides instructions on how to update Winget to the latest version via the Microsoft Store or the command line.
The Winget Upgrade program uses the winget export
and winget import
commands to update all installed programs. Upgrade process:
- Automatically accepts the terms of the agreement.
- Disables interactivity, allowing the upgrade process to continue without interruption.
The program keeps a log of events in the file winget_upgrade.log
, which stores information about:
- Actions performed.
- Errors.
- Other events related to the upgrade process.
The log file winget_upgrade.log
is stored in the folder %USERPROFILE%\documents\
.
The log is automatically truncated if its size exceeds 256 KB to avoid file overflow.
-
When the program is first launched, it generates an ignore file template
ignore.json
, which specifies the packages that do not need to be updated. The user has the opportunity to add all the necessary packages, it should be noted that package names are case sensitive. The template has the following structure:{ "Packages": [ { "name": "REPLACE_WITH_PACKAGE_NAME" }, { "name": "REPLACE_WITH_PACKAGE_NAME" } ] }
-
Once created the program tries to apply this ignore file. If the structure of the ignore file is invalid the program displays a warning message.
-
The program displays information about packets that are ignored in the console and log, forming messages for each packet on a new line which makes it easier to read.
Supported on Windows versions with winget (Windows Package Manager) support: Windows 10 Version 1809 (Build 17763) and later or Windows 11 |
---|
Use the winget_upgrade.exe
available for download in the release or use an alternative method:
- Run the program using the command
node main.js
. - The program will automatically check for Winget in the system.
- If Winget is present, it will start updating the entire software.
- The upgrade process will be displayed in the console window and written to the
%USERPROFILE%\documents\winget_upgrade.log
log file. - After the update is complete, the program will automatically exit in 10 seconds, or you can exit manually by pressing any key.
Additionally, you can use start_menu_shortcut_enabler.bat
, which will add a shortcut winget_upgrade.exe
to the Windows Start Menu which will automatically launch Winget Upgrade with the system.
In case of errors, the program displays the corresponding messages in the console and writes them to the log file for further analysis.
When the program is finished updating, it automatically exits to free up system resources.
main.js
: The main program file.utils.js
: Module for executing commands and logging events.settings.js
: A module that contains the necessary settings for executing commands and logging events.start_menu_shortcut_enabler.bat
: a batch script that adds thewinget_upgrade.exe
shortcut to the Windows Start Menu or removes it if necessary.