Package Managers are tools that help you manage the programs on your computer. It makes it easier to install, update, and uninstall programs.
Installing things isn’t so bad when the program comes with an official installer - you just click “next” a few times, and you’re done. But sometimes, software doesn’t come with an easy-to-use tool. You’re expected to install it yourself.
Installing from Scratch
To install a program from scratch, you typically do some, or all, of these things:
- Download the source code. (Usually in a zip or tar file.)
- Extract the code into a folder.
- Move the folder to where you want it to be. (On Windows, this is usually the “Program Files” folder.)
- Run the Makefile, which creates an actual program you can run. (May already be provded.)
- Adjust your
PATH
environment variable. (So your terminal can find your program.)
It’s especially tough when you’re just starting out. You open your terminal, run python
, but nothing happens. How are you supposed to know you need to edit your PATH
, when you don’t even know it exists? :(
For beginner and experienced developers alike, this process isn’t quite as streamlined as it could be. What if you could type install <program>
, and it gets installed for you? What a world that would be.
As it turns out, that’s exactly what package managers do. The future is now! (Actually, they first came into existence in the 1990s, but close enough.)
Tell me more
Different operating systems have different package managers.
Operating System | Package Manager |
---|---|
Windows | Scoop, Chocolatey |
Mac | Homebrew |
Linux | Apt, Dpkg (and more) |
Installation Links
Windows
Mac
Linux
- Should come with the operating system.
- Ubuntu uses Apt, and Debian uses Dpkg.
Installation
For the rest of this article, I’ll focus on installing Scoop on the Windows operating system. (Why Scoop over Chocolatey? Scoop just seemed simpler, and fit my needs so far.)
All information is pulled from Scoop’s official GitHub page.
Open the “Powershell” program on your computer. (You can search for it using the “Search” feature in the Taskbar.)
Prepare Powershell to install Scoop. You can run the below command by pasting, and pressing “Enter”.
Set-ExecutionPolicy RemoteSigned -scope CurrentUser
Tip: If pasting is more trouble than it should be… Powershell automatically copies what you highlight to the clipboard, so try not to click/drag your mouse too much.
- Install Scoop. (Just the first line is needed.)
For security purposes, I didn’t want to include the command directly on this blog. (Better to trust the official source than me :)
- Try running
scoop help
in Powershell. You should see something like this:
$ scoop help
Usage: scoop <command> [<args>]
Some useful commands are:
alias Manage scoop aliases
bucket Manage Scoop buckets
install Install apps
... (Commands removed for brevity)
Type 'scoop help <command>' to get help for a specific command.
Finding Packages
The actual programs you’ll want to install depend on your use case. But say you wanted to install 7-Zip, you can just run scoop install 7zip
.
That being said, I don’t have a good way of finding out whether Scoop supports a specific program.
I normally just try running the install
command, and if it works, it works. ¯\(ツ)/¯ Otherwise, I search through their list of programs on GitHub.
(They support more programs by the way - those are just default ones available. Check out the extras bucket for more options.)
Useful Commands
scoop install <program>
Installs the program you want.
scoop update
Updates Scoop.
scoop update <program>
Updates that program.
scoop list
Lists the programs you installed with Scoop.
scoop uninstall <program>
Uninstalls the program.
If you want the inside scoop more information on how to use Scoop, a good page to start is Scoop’s Wiki page.
Conclusion
Phew. I hope you’ve learned more about package managers. They’re a tool that helps make life easier, especially for software developers.
As always, thanks for reading!