scoop windows包管理器
分别试用了chocolatey和scoop一下,最终放弃了chocolatey,选择使用scoop
chocolatey VS scoop
- chocolatey权限要求高, scoop 使用-g安装才需要管理员权限, 默认普通用户权限.
- scoop可以建软件包仓库, 如果官方仓库里没有想用的软件, 可以自己建一个仓库, 存放自己的软件.
- chocolatey很多软件安装位置不固定, 会污染Path
scoop 安装
设置powershell
1
set-executionpolicy remotesigned -s currentuser
默认安装(安装到C:\Users<user>\scoop), 在powershell里面运行:
1
iex (new-object net.webclient).downloadstring('https://get.scoop.sh')
安装到指定目录(D:\Applications\Scoop)
1
2
3[environment]::setEnvironmentVariable('SCOOP','D:\Applications\Scoop','User')
env:SCOOP='D:\Applications\Scoop'
iex (new-object net.webclient).downloadstring('https://get.scoop.sh')指定-g安装目录(D:\Applications\Scoop_GlobalApps)
1
2[environment]::setEnvironmentVariable('SCOOP_GLOBAL','D:\Applications\Scoop_GlobalApps','Machine')
env:SCOOP_GLOBAL='D:\Applications\Scoop_GlobalApps'
scoop 使用方法
常用命令
1
2
3
4
5
6
7
8
9scoop help #帮助
scoop info #查看软件信息
scoop bucket #管理buckets
scoop install #安装软件
scoop list #查看当前已安装软件
scoop search #搜索软件
scoop uninstall #卸载软件
scoop update #更新安装的软件和scoop
scoop cleanup #删除旧版本清理应用程序shims 目录
scoop安装程序后会在scoop安装目录下的shims里生成一个对应程序的shim.exe(不知道为啥不用快捷方式)
安装scoop后 会自动把shims目录加到用户的Path里
persist 目录
这个目录下面放的是已安装软件的配置文件, 后续更新软件的时候这部分内容不会修改
scoop bucket
Scoop 给我们提供了很多可以直接使用的 bucket,就是为了方便我们安装更为常见的带有 GUI 的软件。一个最为常见,也是我推荐大家添加的 bucket 是 extras,这里面基本涵盖了大部分不符合 main bucket 收录条件的常用软件,包括我们熟悉的:各个版本的 Firefox、福昕阅读器、Geek Uninstaller、Inkscape、Snipaste 等等
添加bucket:
1
scoop bucket add <name-of-bucket> <location-of-git-repo>
官方维护的 bucket
extras:Scoop 官方维护的一个仓库,涵盖了大部分因为种种原因不能被收录进主仓库的常用软件。地址:lukesampson/scoop-extras
1
scoop bucket add extras #添加官方bucket
官方维护认证的 bucket
extras 这个 bucket 是最有用,也是我们大部分人肯定会用到的仓库。除此之外,我们可以通过这个命令查看 Scoop 还能直接识别哪些 bucket:
1
2scoop bucket known #列出 Scoop 已知的 bucket
scoop bucket add [bucketName]社区提供的 bucket
scoop也有很多由社区(用户)维护的 bucket。这里是一个按照 Github score(由 Star 数量、Fork 数量和 App 数量综合决定的 Github score)排列的 bucket 列表:Scoop buckets by Github score
自己维护一个 bucket
- 创建一个名为eg的新GitHub仓库 my-bucket
- 将应用添加到您的存储桶中。在PowerShell会话中:
1
2
3
4
5git clone https:// github.com / < your - username > / my - bucket
cd my - bucket' {version:“1.0”,url:“https://gist.github.com/lukesampson/6446238/raw/hello.ps1”,bin:“hello.ps1”} ' > hello.json
git add
git commit - m “ add hello app ”
git push
往往,Google 搜索「App 的名字 + scoop」就可以找到我们想要安装 App 的仓库有没有存在
scoop 常用软件
1 | scoop install 7zip #安装压缩软件 |
使用问题
- 安装某些 gui 程序后, 运行对应的 shim.exe 会出现 cmd 窗口 (nvim-qt cmd窗口一直显示, cmder cmd窗口一闪而过 ) 临时解决办法: 手动删掉 对应的shim.exe, 改放一个快捷方式