Scoop 是一个 Windows 上的包管理器,类似于 Homebrew,是非官方维护的。
为什么选择使用 Scoop#
- 无需管理员权限(对于大部分程序)
- 最接近于 Linux 意义上的 “包管理器”,而不是像 winget 一样更像是 “安装程序管理器”:Scoop 会把下载、安装都管理好,而 winget 只负责下载安装包,再运行安装包进行安装。
- 虽然没有 chocolatey 那么多,但也够用的软件库
- 只影响
~/scoop
下的文件,不会污染注册表和$PATH
- 把 Scoop 的 skim 添加到 PATH 后,安装新软件不用重启以使 PATH 生效
- 与 chocolatey 和 winget 的详细对比,可以查看 官方 wiki 的描述
安装#
- Scoop 的本体和安装的软件默认会放在
%USERPROFILE%\scoop
,使用管理员权限进行全局安装 (-g) 的软件在C:\ProgramData\scoop
,如果想要更改位置需要在安装前设置好环境变量,如果已经安装的的话可以卸了重装(可以搜到保留数据的办法,比如 这个 issue) - 如果不想更改安装位置,直接
> Set-ExecutionPolicy RemoteSigned -Scope CurrentUser # Optional: Needed to run a remote script the first time
> irm get.scoop.sh | iex
- 设置用户安装路径
$env:SCOOP='D:\Softwares\scoop'
[Environment]::SetEnvironmentVariable('SCOOP', $env:SCOOP, 'User')
- 设置全局安装路径(不建议更改)
$env:SCOOP_GLOBAL='D:\Scoop_Global'
[Environment]::SetEnvironmentVariable('SCOOP_GLOBAL', $env:SCOOP_GLOBAL, 'Machine')
- 然后再运行那两条 PowerShell 命令
基本操作#
scoop install exampleApp #安装
scoop uninstall exampleApp #卸载
scoop search exampleApp #搜索
scoop update exampleApp #升级
scoop update #更新软件仓库,类似于 "apt update"
scoop update * #更新所有应用
#Scoop 的软件都是存在bucket里的,要先安装bucket
scoop bucket --help #Scoop 的 help 页面都做得很简单易懂,看看就知道怎么用 bucket 了
-
方便的使用流程:
- 打开 https://scoop.sh/ ,搜索想装的软件(比内置的 search 方便多了,可以搜到官方认可的 bucket 里的所有软件)
- 复制命令,运行
-
tips
- 不建议安装 nonportable bucket 里的软件,不是便携的意味着有可能卸不干净,不如直接用正常方式安装
- 建议安装 dorado bucket,适合中国用户。详见 这里
版本切换#
- Scoop 的一大特点就是可以方便的切换软件的版本,比如 python
- 可以参考 https://www.thisfaner.com/p/install-and-switch-versions-of-java-python-ruby-via-scoop/
- 简单的说,就是先安装有过往版本的 bucket (一般是 versions),然后安装旧版本,然后用
scoop reset 想用的版本
切换