It's handy to have the software you need ready to go when the development environment changes!
Before developing, manual tasks such as downloading the appropriate exe for your development environment from an official source, extracting zip files, worrying about dependencies, etc., are okay for one PC, but wasting time with multiple developers and repeating the same steps every time in different environments is a waste of time.
By using software management software, You can install all the software you need on Windows with a single command.
This is a comparison of the free software management software and how to use the mainstream CLI (Command Line Interfae; the one to operate by typing commands on a black screen).
This article is a record of the following management software.
Please refer to the separate summary of software installation and basic operations, notes, etc., if you like!
As it says in Chocolatey official, by installing software that manages the software you have installed, the following problems can be solved.
This article is only for the Windows environment.
I'd like to make a separate list for Homebrew on MacOS and apt-get and yum on Linux.
Point | Chocolatey | Scoop | winget |
---|---|---|---|
Developer | Chocolatey Software, Inc. | lukesampson | Microsoft Corp. |
Publish | Mar. 2011 | Sep. 2013 | May 2020 |
Is OSS? | OSS | OSS | OSS |
Package Count* | 5,036 | 2,959 | 657 |
Available on | since Win7, since Win2003 | since Win7, since Win2008 | Win10since ver 1709 |
Ease of Introduction | 3 | 2 | 2 |
Own repository | 2 | 2 | 2 |
Free or Paid | Free Partially Paid |
Free | Free |
ease of use | 3 | 2 | 3 |
Enhanced package content | 1 | 2 | 3 |
Point is on a scale of one to three. 1-marvelous! 2-sufficient 3-I felt a little trouble
None of them are so superior or inferior, so it seems good to choose the one that suits your purpose
The "ease of use" is just my personal impression of the product. The evaluation will vary from person to person. If I feel that it hinders automation, such as when installing a package, I'd rate it a negative.
*The number of package registrations is based on the official package count as of July-18-2020.
So, I'd like to recommend Scoop to anyone developing apps and the like at the moment.
In addition, there is also Microsoft software called OneGet that can connect to both Chocolatey and Scoop and manage them with common commands, but I haven't used it yet, so I'll skip it.
The official site delivers various software installers, EXE files, Zip files, and installation scripts in the form of Chocolatey package files (files with .nupkg extension).
NuGet is a library management software for Microsoft's .NET framework, and since Chocolatey's package description often mentions NuGet, I'll remind you of its relevance.
Chocolatey makes use of NuGet's packaging framework.
In fact, Chocolatey uses NuGet.Core.dll internally to install the software.
As it says in Chocolatey official - FAQ.
NuGet is mainly aimed at making it easy to deploy development libraries, whereas Chocolatey's main goal is to make it easy to deploy apps and tools. Chocolatey is not intended to be used mainly by developers. It's not intended to be developer-centric.
Specifically, Chocolatey's package file (.nupkg file) and NuGet's package file are both zip files. The metafiles in them are different.
Chocolatey has silent installation using PowerShell (mode that allows installation without GUI interaction) with meta-information in the nupkg file so that GUI processing at the time of software installation can be eliminated.
The nupkg file is an extension of NuGet package file that contains some additional meta-information for Chocolatey. So Chocolatey is compatible with plain NuGet packages as well. (Source: Chocolatey Official wiki - What Are Chocolatey Packages?)
Unlike apt, Chocolatey is not aware of source code control, Chocolatey is aware of pre-built software and tools.
ref: Chocolatey Official - FAQ - how-iswill-Chocolatey-be-different-than-apt
There is an official Chocolatey Community Package repository.
You can search for packages on the web, or after installing Chocolatey, you can search for packages on command.
I heard that this repository is managed by Chocolatey Community. When you register software in this repository, you need to check security check or quality check.
Chocolatey is a NuGet package with extended information for Chocolatey, so you can use a NuGet repository server.
There are several types of repositories. "folder/unc share", "simple server", "package gallery", "commercial packge repositories"
"folder/unc share" allows you to create a repository with a specified path to a folder to be shared on the network, such as using Windows File Sharing.
See The official document- Host your own server for details.
The following server programs are listed as being compatible with the Chocolatey package, although this is an assumption for which officials are not responsible. All of them are NuGet package hosting servers.
There may be others if you look for them.
You can manage the command line (CLI) for installing, uninstalling and updating apps published in Git through a bucket (like a repository).
It doesn't seem to be dealing with packages that can corrupt the registry, system configuration or environment. They are officially called portable apps by the Scoop team.
On the other hand, they do allow standalone applications such as EXE and Powershell scripts to be handled as packages without compression.
However, you can install other things besides portable apps, such as Skype, if you add a repository called scoop-extras to Scoop's search.
In Scoop, we call the part of the package management system "buckets". Scoop only installs the official buckets, called "main", immediately after installation.
The following buckets are also officially introduced.
Here is only a selection of what I personally liked.
buckets | summury |
---|---|
main | Generic CLI App |
extras | An application that doesn't fit in with the main |
games | OSS freegame, game tools |
java | Java, JDK-related |
nonportable | Non-Portable Apps |
php | Various PHP versions and so on. |
You can use winget (Windows Package Manager) to install and update OSS applications and others published on GitHub locally from the command line.
*You can find out the version and build number of your Windows PC in a separate article here.
Windows Package Manager Preview Participation Page says it has not been officially released and is still subject to change. It will be included in the preview version of the AppInstaller app, he said.
I'll update the information when it's officially released in the future.
If you have a choice of software with similar features, you can use I think you should think about the future when you hire.
Although you may have worked hard to create a script that builds automatically, it's not It's entirely possible that there will be a decline in the community or the technology you're using and you'll have to move to another management software.
So the ease of porting to other management software might be a good thing to keep in mind when you're introducing it.
Thank you for your message.
Sorry. The Error has occurred.We apologize for the inconvenience.Please try again in a few minutes or contact us via DM below.
Twitter:@NodachiSoft_engName:Send the following information to us. If you are happy with your submission, please click "Send". If you want to modify it, please click "Back".
Name: