If you aren’t excited about Windows 10, you may want to revisit it because the upcoming operating system is shaping up to be a notable improvement in the Windows line. Not only will it make you more productive, but new Windows features are still being added. One of the more interesting features is the OneGet Package Manager.
Technically, OneGet has been available for Windows 8.1 for users who install Windows Management Framework 5.0, but Windows 10 will be including OneGet by default as part of the system’s PowerShell package.
What Is A Package Manager?
One big draw of Linux and Unix-like systems is the prevalence of package management tools. Windows might be late to the party, but it’s better late than never because package management can seriously boost productivity, increase security, and ultimately save you a lot of headache.
A package is a collection of files and dependencies that make it possible to install and configure a certain piece of software for your system. A package manager is a tool that maintains a database of repositories where each repository is itself a collection of packages.
The main benefit of a package manager is that it provides a singular tool for managing the software on your system. In the past, there have been third-party package managers for Windows and there have been tools for bundled software installation, but having a Microsoft-endorsed package manager can centralize all of that effort in one place.
Instead of having to navigate from website to website and downloading individual installers, you can handle it all through OneGet.
The Built-In Cmdlets
Using OneGet will require a bit of familiarity with PowerShell and cmdlets, but have no fear if you don’t know what that means. The learning curve isn’t too steep and the effort is worth it. For those acquainted with PowerShell, here are the cmdlets related to the OneGet module:
The PackageSource cmdlets are used to add, remove, and view the repositories that are configured for OneGet. The Package cmdlets are used to Find available packages that are available in said repositories, Install and Uninstall particular packages, and Get a list of currently installed packages on your system.
Packages can contain extra data, such as version information, that can help improve security (e.g. confirming that a particular package is authentic) and make it easier to stay up to date (e.g. automatically installing new updates).
Don’t feel bad if all of this sounds too advanced or intimidating for you. In the future, Microsoft plans to incorporate a graphical interface that eases the entire process for those who aren’t familiar with the PowerShell command line.
Trusted Sources & Repositories
Have you ever downloaded a fake installer file that ended up introducing malware to your system? I’ll admit that I’ve fallen for that trick a few times in the past. That’s one of the issues inherent with installer files: if you aren’t tech-savvy, it can be difficult to know whether an installer file is authentic or not.
The repository system used by package managers — including but not limited to OneGet — is a much safer alternative. As long as you only use repositories that are known to be trusted, you can have peace of mind in knowing that you probably won’t have to deal with fake installers ever again.
Just to be clear, this isn’t a flawless system; there’s still an element of trust involved. Rather than trusting in each individual EXE that you download, you’re placing your trust in the people who curate and maintain each repository.
The beauty of the repository system is that no one entity has control over which packages can or cannot be included as part of OneGet. You can rely on the default repositories that come with OneGet if that’s enough for you, but you can also mix and match third-party repositories according to your needs.
For example, if you work for a large corporation, upper management might decide to maintain a private repository full of packages that are only relevant to employees at that company. Another example could be a public repository of free software for digital artists. As long as there’s someone to maintain it, anything is possible.
Also, due to the extensible nature of PowerShell, the functionality of OneGet can be improved and extended with third-party cmdlets and scripts. Microsoft recently went open source with their .NET framework, so that could mean good things for the future of PowerShell and OneGet.
Are You Excited For OneGet?
Relatively speaking, OneGet is still in its infancy and has a long way to go before it catches up to some of the more popular package managers for Linux. Still, the fact that Microsoft is working on OneGet is reason enough to be excited and I can’t wait to see how Windows 10 changes the landscape.
What about you? Is a package manager enough to get you excited? Or do you think it’s just a gimmick that will fizzle out sooner or later? Tell us what you think in the comments below.