The package management system was one of the driving force for Linux.Originally, Linux is a distribution that collects the number of open source apps, libraries, tools required for systems, and tools.Package management tools that can be managed, including dependencies, are required, and this has made it easier for users to install binary programs without thinking about dependencies.
The Linux package management system was developed in the 1990s, and at the end of the 1990s, most Linux distributions have some kind of package management system, and Linux distributions are classified as the adopted package management system. Became.
The "modern" package management system consists of three elements: "client tool", "package tool", and "repository" as shown in (Fig. 01).There are differences depending on the platform, for example, those with license management and billing functions, such as smartphone application stores, and those that are assumed to be distributed in source codes, such as a library management tool in a language implementation system.
Twenty years of delay, Windows has finally appeared on a "modern" package management tool.This is called "Windows Package Manager".Winget is an open source, and the first release on GitHub was May 2020.After that, Ver in May this year.1.0 has been distributed as a stable version, and the latest version of Ver1 at the end of September.1.12653 (stable version) and ver.1.1.12701 (preview version) has appeared.
This Winget can be obtained from GitHub, but is included in the App Installer distributed at the Microsoft store.For example, if you get Windows Terminal from the Microsoft store, the installation will be performed using this App Installer, so if you have introduced an application such as Windows Terminal, the Winget has already been installed.
This Winget has a similar command, whether referring to the apt of the preceding Debian Linux (Table 01).I don't mean that Winget has "Park" the apt command, but if it's a package management with an apt command, it's not so difficult to use Winget.
Windows package management
Windows Mobile for smartphones is the one that seems to be a package management system on Windows.Windows Marketplace for mobile was launched in 2009, making it possible to distribute software and uniformly install.Later, Windows Mobile will be Windows Phone (2010), and Windows Phone Store will start.
Windows itself has entered the store from Windows 8 (2012).However, it was a modern app -only store that was not compatible with the conventional Win32.From here, Windows has a desktop app, two modern apps, and two desktops.However, Windows 8, which uses two desktops separately, is not popular, and the same is true for modern apps with many restrictions.As a result, the Windows Store could not be the mainstream of Windows software distribution.
Windows 10, the successor to Windows 8, recovered as an OS, but did not increase the popularity of the successor to the modern app.He complained of the commonality of iOS and Android's app development, but he was only a minor distribution of software.
Therefore, Microsoft begins to return to Win32 app.First, the Win32 app (Classic Windows App, called CWP) was packaged and made it possible to distribute it at the Microsoft store.In addition, launch Project Reunion.This is a commonization of GUI parts and runtime libraries with UWP and Win32 apps.The Win32 app, which is separated from the modern app and UWP, deprived the leading role, and was called classic, returned to the leading role (Figure 02).
In Windows 11, EXE installers and MSI installers can be distributed "as they are" at the Microsoft store.In the past, it was possible to distribute the Win32 app on the Microsoft Store of the Win32 app by using a special package, but there were many Win32 apps that were strongly restricted.
In addition, Microsoft integrates the installation of the separated UWP and CWP.For that purpose, open source Windows Package Manaer (commonly known as Winget).The first "modern" package manager for Windows.Finally, a package management system with the same function as Linux and the like has appeared, and it is possible to install the Win32 and Microsoft Store app with a single command.Conventionally, msiexec.It was necessary to install MSI -format apps in EXE and manage the Microsoft store application in PowerShell.
Twenty years of Linux, the day has finally arrived on Windows with a single package management tool.However, Winget can manage Windows standard applications, but cannot manage programs and libraries that make up Windows itself.This is different from the Linux package management system.
For a long time on Windows, the application was a style in which the application was registered in the start menu and the application itself was provided by the application itself.Therefore, the introduction of a package management system alone is not enough.For example, if the package is installed and the app does not register anything in the start menu, the user must look for the activation file.In some cases, it can be easily analogous from the package name, but you may not be able to imagine the executable file name.In the Linux/UNIX system, it is possible to use standard commands such as man and info, or a package management tool command that enumerates all the files contained in the package.
Currently, WinGet can use an integrated application at the command level, but actually deals with multiple packages such as MSI, EXE installer, and Appx/MSIX format, not to manage the package itself.The application is installed via the meta information (manifest file) of the package.For this reason, it is not possible to extract detailed information from the package itself, such as a Linux apt command or a DPKG command.
At Windows 11, the Win32 app has finally returned to the leading role.Many major software remained the Win32 app while Microsoft was giving UWP and others.Windows has just begun to respond to these entities.