Scoop Package Manager (Windows)

Scoop - Command-line installer for Windows.


Installation

 1# Set execution policy
 2Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
 3
 4# Install Scoop
 5irm get.scoop.sh | iex
 6
 7# Or long form
 8Invoke-RestMethod -Uri https://get.scoop.sh | Invoke-Expression
 9
10# Verify
11scoop --version

Basic Commands

 1# Search for app
 2scoop search app-name
 3
 4# Install app
 5scoop install app-name
 6
 7# Install specific version
 8scoop install app-name@version
 9
10# Install from bucket
11scoop install bucket/app-name
12
13# Uninstall app
14scoop uninstall app-name
15
16# Update Scoop
17scoop update
18
19# Update all apps
20scoop update *
21
22# Update specific app
23scoop update app-name
24
25# List installed apps
26scoop list
27
28# Show app info
29scoop info app-name

Buckets (Repositories)

 1# List known buckets
 2scoop bucket known
 3
 4# Add bucket
 5scoop bucket add extras
 6scoop bucket add versions
 7scoop bucket add java
 8scoop bucket add games
 9
10# Add custom bucket
11scoop bucket add bucket-name https://github.com/user/bucket
12
13# List added buckets
14scoop bucket list
15
16# Remove bucket
17scoop bucket rm bucket-name
18
19# Common buckets:
20# - main (default)
21# - extras (GUI apps)
22# - versions (older versions)
23# - java (JDK/JRE)
24# - nerd-fonts
25# - games

Common Applications

 1# Development tools
 2scoop install git
 3scoop install python
 4scoop install nodejs
 5scoop install go
 6scoop install rust
 7scoop install vscode
 8
 9# System tools
10scoop install 7zip
11scoop install curl
12scoop install wget
13scoop install grep
14scoop install sed
15scoop install jq
16
17# Extras bucket
18scoop bucket add extras
19scoop install googlechrome
20scoop install firefox
21scoop install vlc
22scoop install obs-studio

App Management

 1# Show app status
 2scoop status
 3
 4# Check for updates
 5scoop status
 6
 7# Hold app (prevent updates)
 8scoop hold app-name
 9
10# Unhold app
11scoop unhold app-name
12
13# List held apps
14scoop list | Where-Object { $_.held }
15
16# Cleanup old versions
17scoop cleanup app-name
18
19# Cleanup all apps
20scoop cleanup *
21
22# Cache management
23scoop cache show
24scoop cache rm app-name
25scoop cache rm *

Global Installation

 1# Install globally (for all users)
 2sudo scoop install -g app-name
 3
 4# Note: Requires 'sudo' from scoop
 5scoop install sudo
 6
 7# List global apps
 8scoop list -g
 9
10# Update global apps
11sudo scoop update * -g
12
13# Uninstall global app
14sudo scoop uninstall -g app-name

Shims and Environment

 1# Scoop adds apps to PATH via shims
 2# Shim location: ~\scoop\shims
 3
 4# Reset shims
 5scoop reset *
 6
 7# Reset specific app
 8scoop reset app-name
 9
10# Check PATH
11$env:PATH -split ';' | Select-String scoop

Configuration

 1# Show config
 2scoop config
 3
 4# Set config
 5scoop config aria2-enabled true
 6scoop config aria2-warning-enabled false
 7
 8# Proxy settings
 9scoop config proxy proxy.example.com:8080
10
11# Cache directory
12scoop config cache_path D:\scoop-cache
13
14# Global install directory
15scoop config global_path C:\ProgramData\scoop

Manifest Files

Create Custom Manifest

 1// myapp.json
 2{
 3    "version": "1.0.0",
 4    "description": "My custom application",
 5    "homepage": "https://example.com",
 6    "license": "MIT",
 7    "url": "https://example.com/myapp-1.0.0.zip",
 8    "hash": "sha256:...",
 9    "bin": "myapp.exe",
10    "shortcuts": [
11        [
12            "myapp.exe",
13            "My Application"
14        ]
15    ],
16    "checkver": {
17        "url": "https://example.com/latest",
18        "regex": "v([\\d.]+)"
19    },
20    "autoupdate": {
21        "url": "https://example.com/myapp-$version.zip"
22    }
23}
1# Install from local manifest
2scoop install .\myapp.json
3
4# Install from URL
5scoop install https://example.com/myapp.json

Troubleshooting

 1# Check for problems
 2scoop checkup
 3
 4# Diagnose issues
 5scoop doctor
 6
 7# Reset app
 8scoop reset app-name
 9
10# Reinstall app
11scoop uninstall app-name
12scoop install app-name
13
14# Clear cache
15scoop cache rm *
16
17# Update Scoop itself
18scoop update
19
20# Verbose output
21scoop install app-name -v

Aliases

 1# Create alias
 2scoop alias add update-all 'scoop update * ; scoop cleanup *'
 3
 4# List aliases
 5scoop alias list
 6
 7# Remove alias
 8scoop alias rm update-all
 9
10# Use alias
11scoop update-all

Backup and Restore

1# Export installed apps
2scoop export > scoop-apps.txt
3
4# Restore apps
5Get-Content scoop-apps.txt | ForEach-Object { scoop install $_ }
6
7# Or manually
8scoop list | Out-File apps.txt

Comparison with Other Package Managers

FeatureScoopChocolateyWinget
Admin requiredNoSometimesSometimes
Install locationUser profileProgram FilesProgram Files
GUI appsYes (extras)YesYes
Portable appsYesNoNo
Custom bucketsYesYesLimited

Integration with Other Tools

PowerShell Profile

1# Add to $PROFILE
2# Scoop completion
3Import-Module scoop-completion
4
5# Aliases
6Set-Alias -Name s -Value scoop
7Set-Alias -Name si -Value 'scoop install'
8Set-Alias -Name su -Value 'scoop update'

Windows Terminal

 1// settings.json
 2{
 3    "profiles": {
 4        "list": [
 5            {
 6                "name": "PowerShell (Scoop)",
 7                "commandline": "pwsh.exe -NoLogo",
 8                "startingDirectory": "%USERPROFILE%"
 9            }
10        ]
11    }
12}

Advanced Usage

 1# Install multiple apps
 2scoop install git python nodejs
 3
 4# Update and cleanup
 5scoop update * ; scoop cleanup *
 6
 7# Search in specific bucket
 8scoop search extras/app-name
 9
10# Show app dependencies
11scoop depends app-name
12
13# Show app manifest
14scoop cat app-name
15
16# Edit app manifest
17scoop edit app-name
18
19# Download app without installing
20scoop download app-name

Related Snippets