-
-
Notifications
You must be signed in to change notification settings - Fork 471
Home
First of all... What is WingetUI? WingetUI is an application whose main goal is to create an intuitive UI to manage the most common CLI package managers for Windows, such as Winget and Scoop.
With this app, you'll be able to download, install, update and uninstall any software that's published on the supported package managers — and so much more.
AppGet was supported in release 0.3, but since that project has been discontinued, the support has been removed.
Disclaimer: This project has no connection with the official Winget project — it's completely unofficial.
-
WingetUI
-
How does it work?
-
Is WingetUI safe?
-
Installation
- Common Problems
- Running and building the source code
- Translating WingetUI
To understand how WingetUI works, first it's necessary to understand what is a package manager. Basically, it's a software that allows the users to download, install, upgrade and uninstall computer programs with ease.
While most Windows users aren't familiar with the concept, various package managers have existed on Linux for several years, such as APT on Debian/Ubuntu and Pacman on Arch Linux.
There are a few unofficial package managers for Windows, such as Chocolatey, Scoop and Ninite. On 2020, Microsoft finally decided to develop an official package manager, called Winget-CLI (inspired by the now defunct AppGet).
However, there's no official graphical user interface (GUI) for Winget and Scoop. It's necessary a CLI (PowerShell or cmd) to be able to use it.
Therefore, WingetUI provides a GUI for Winget-CLI and Scoop, making it easy for users to enjoy their capabilities without having to deal with a command-line interface (CLI).
Learn more about Winget: https://learn.microsoft.com/en-us/windows/package-manager/
Learn more about Scoop: https://scoop.sh/
You have arrived at the end of the section. Return to top
WingetUI, Winget-CLI and Scoop are open-source applications, which makes it possible for anyone to verify that there's no malware in their source-code.
However, WingetUI, Microsoft and Scoop aren't responsible for the packages available for download, which are provided by third parties and can theoretically be compromised.
To mitigate the risks of downloading malware, Microsoft has implemented a few checks for the software available on Winget-CLI:
We are automatically checking each manifest. We leverage SmartScreen, static analysis, SHA256 hash validation and a few other processes to reduce the likelihood of malicious software making its way into the repository and onto your machine
Even so, it's recommended to only download software from publishers that you trust.
Source: https://devblogs.microsoft.com/commandline/windows-package-manager-preview/
You have arrived at the end of the section. Return to top
Check out the installation instructions for more information!
You have arrived at the end of the section. Return to top
Check out the FAQ for more information!
You have arrived at the end of the section. Return to top
Cloning the source code is useful to be able to test WingetUI's source code, to debug it, to modify it, and even to build your custom WingetUI version with your custom features or fixes. Though this steps are really intuitive and are the same that most software use, here are the detailed steps required to achieve that.
If you want to clone a specific version, you can download the source code in a zip file from GitHub Releases
- Open a Command Prompt on a folder
- Run the following command to clone the repository and access it:
git clone https://github.com/martinet101/WingetUI && cd wingetui
NOTE: If you want to use PowerShell, the command would be the following:
git clone https://github.com/martinet101/WingetUI; cd wingetui
- Open a browser and download the source code.
- Extract the files into a new folder. To do this, you can use any zip extractor, such as 7-zip, Winzip, etc...
Python 3.10 is required to run WingetUI. Other versions of python are NOT supported. You can download python from here
NOTE: The Microsoft Store Python should work, but you won't be able to build WingetUI.
When Python 3.10 is installed:
- Open the folder where the WingetUI source is located. Open the ROOT folder of the repo, NOT the folder where init.py is placed
- Make sure you have
pip
installed. You can see how to install pip here: https://pip.pypa.io/en/stable/installation/ - Open a Command Prompt or PowerShell window there and run:
py -m pip install -r ./requirements.txt
If it fails, as an alternative, run pip install -r ./requirements.txt
Aditionally you can try the following if you are still getting errors: go to C:\Users{username}\AppData\Local\Programs\Python\Python310\Scripts
and run python pywin32_postinstall.py -install
- Wait for it to finish
- Open the local repository folder and navigate to a subfolder named wingetui
- Open a Command Prompt or PowerShell Window on that folder
- Run the following command:
python __init__.py
- Open the WingetUI local folder and navigate to the root folder of the repository
- Run
build.bat
to build a standalone executable file. If the process finishes successfully, a file namedWingetUI.exe
will be generated on the same folder. - Run
build_debugging.bat
to build a debuggable executable. If the process finishes successfully, a folder named__init__
will be generated on the same folder. Access this folder and run the file named__init__.exe
. A console will appear and WingetUI will run in debugging mode
You have arrived at the end of the section. Return to top
Since WingetUI is an app that wants to reach every single person in the world running Windows 11, on issue #67 it was requested to add this feature. And here we are. On this page you will find useful information about how does the WingetUI translation program works and how to participate on it, because anyone can contribute here!
You can check the supported languages here. If you want to add a new language, drop an e-mail at marticlilop@gmail.com
The method WingetUI uses to translate the UI is based on JSONs, containing a reference sentence and a translated sentence. Every language file codes for a different language, and every language is stored on one single file. If a translation is missing, the program will fallback to English, providing always a readable UI for everyone. Those language files need to be registered to be used, and this is done in languages.py.
Either if you want to update an already existing language or you want to create a new one, the steps are the same:
- Log in or create an account in Tolgee. You can log in with GitHub, if you prefer.
-
E-mail me to marticlilop@gmail.com with the following information: the mail you used for registration and the languages where you are willing to contribute.
-
I'll accept you (or not hehe) and you'll find the WingetUI project in your Tolgee Dashboard
-
Now select the language you want to translate
-
To make things easier, you can filter the untranslated strings
-
You can then start translating. The changes will be included with the next WingetUI release.
- Make sure not to modify the original strings. If this happened the translation wouldn't work at all.
- Make sure to add any final stop/colon/semicolon/hyphen/etc.
- Make sure to add the {0} symbols, since they code for variable values
List of supported languages here
You have arrived at the end of the section. Return to top
The icon and screenshot database is still limited, but we are going to (hopefully soon) open a contribution platform. It is just not finished yet, so check back later! Thanks!
WingetUI - Made with ❤️ by Martí Climent