Windows系统安装使用Scoop包管理器
前言
Scoop是Windows的命令行安装程序。
如果用过Linux系统,使用apt-get
工具安装过软件,或者用过Python,知道pip
工具用于管理Python各种依赖包,那么理解Scoop就比较容易,这些工具的设计理念与使用方法都非常类似。
Scoop一般用来管理绿色软件,即是一种通过解压压缩包即可就地使用的软件,对于比较专业软件(比如Office、Adobe等)支持不好
基础环境配置
在准备安装之前,建议进行配置(如果你能解决GitHub访问问题,请跳过😄)
如果你是win10系统,建议安装Terminal
(win11已经自带,请跳转至正式开始Scoop的安装)
新一代终端Windows Terminal
支持标签页、多种命令行工具多开...
可定制美化
Terminal 终端
安装 Terminal
- 打开Windows自带的应用商店(MicroSoft Store)
- 搜索
Terminal
- 安装
建议添加任务栏方便使用
Terminal 使用
%}
首次运行时,Windows Terminal以Powershell作为默认配置文件启动。下拉菜单可用于启动其他选项卡并访问设置:
可以在设置里面进行修改透明度,更改背景等设置
我的个人效果如下:
正常访问 GitHub
由于GitHub在国内时常会被DNS劫持,所以需要进行本地反代理,保证访问GitHub稳定。
本文推荐使用Steam++来完成本地反代。
安装:
- 打开Windows自带的Microsoft Store.
- 搜索
Watt Toolkit
并安装.
然后,给GitHub打上勾点一键加速.
打开GitHub链接看看是否能访问:https://github.com
正式开始Scoop的安装
github地址:https://github.com/ScoopInstaller/Scoop
文档地址:https://scoop.sh/
命令安装
为了让PowerShell可以执行脚本,首先需要设置PowerShell执行策略,通过输入以下命令Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
(在之前安装好的Terminal执行)
从非管理员 PowerShell 运行此命令以使用默认配置安装 scoop, Scoop将安装到 C:\Users<YOUR USERNAME>\scoop
irm get.scoop.sh | iex
# 使用镜像安装
irm get.scoop.sh -Proxy 'http://<ip:port>' | iex
或者以下命令:
Invoke-Expression (New-Object System.Net.WebClient).DownloadString('https://get.scoop.sh')
高级安装
如果你不想安装到C盘,可采用此方法(小白不推荐)
先执行
irm get.scoop.sh -outfile 'install.ps1'
下载安装程序
可以explorer .
在当前打开资源管理器,查看下载的文件
查看安装程序的所有可配置参数。
.\install.ps1 -?
例如,可以将 scoop 安装到自定义目录,配置 scoop 进行安装全局程序到自定义目录,并在安装过程中绕过系统代理。
.\install.ps1 -ScoopDir 'D:\Applications\Scoop' -ScoopGlobalDir 'F:\GlobalScoopApps' -NoProxy
或者,可以使用旧方法通过设置环境变量来配置自定义目录。(不推荐)
$env:SCOOP='D:\Applications\Scoop'
$env:SCOOP_GLOBAL='F:\GlobalScoopApps'
[Environment]::SetEnvironmentVariable('SCOOP_GLOBAL', $env:SCOOP_GLOBAL, 'Machine')
irm get.scoop.sh | iex
默认情况下已禁用管理员控制台下Scoop的安装,如果需要使用
-RunAsAdmin
irm get.scoop.sh -outfile 'install.ps1' .\install.ps1 -RunAsAdmin [-OtherParameters ...] # I don't care about other parameters and want a one-line command iex "& {$(irm get.scoop.sh)} -RunAsAdmin"
Scoop配置
如果输出了successfully,就代表已成功安装Scoop。
打开C:\Users\<user name>\scoop
路径就可以看到下面的文件夹
- app —— 安装的软件放在这里
- bucket —— 已经添加的软件仓库
- shims —— Scoop可以自动生成shell脚本,省去了Windows配环境变量的烦恼(我的jdk,MG-win64,cmake,python,conda,git等环境变量基本就靠Scoop的shims)
我们先在Terminal中输入scoop -v
看看scoop命令是否可以使用
可以看到我这边可以正常显示版本号
输入scoop help
就可以看Scoop命令
部分命令:
Command | Summary |
---|---|
update | 更新 |
list | 显示已安装列表 |
install | 安装 |
uninstall | 卸载 |
search | 搜索app |
status | 检查更新 |
bucket | Scoop buckets |
cache | 缓存 |
reset | 重设 |
cleanup | 清除旧版 |
help | 帮助 |
shim | shims |
安装apps
由于Scoop的软件仓库,是基于Git和7zip工具管理的,所以我们首先需要安装的就是git。
scoop install git
git config --global http.sslVerifyfalse # git 配置
注意:安装时会自动安装7zip。安装会很慢..等
好吧,其实可以先安装aria2多线程加速(笑
scoop install aria2
如果使用代理,有时需要通过如下命令关闭 aria2
scoop config aria2-enabled false
scoop update # 更新一下Scoop
scoop全局安装软件可以附加`-g`,如:scoop install git -g;但是必须以管理员的身份执行。
bucket
在 Scoop 中,存储桶是应用程序的集合。或者,更具体地说,存储桶是一个 Git 存储库,其中包含描述如何安装应用程序的 JSON 应用程序清单。
Scoop默认的bucket是main
scoop bucket known # 查看社区的bucket列表
我们可以为main bucket配置镜像来加速
- 先卸载 main的bucket
scoop bucket rm main
- 添加 main 镜像代理
scoop bucket add main https://ghproxy.com/github.com/ScoopInstaller/Main.git
添加其他 bucket
常用bucket:https://rasa.github.io/scoop-directory/by-score.html
scoop bucket add extras # 添加了多种软件包
scoop bucket add versions # 保留了旧版本
scoop bucket add dorado https://github.com/chawyehsu/dorado # 许多国内应用qq、微信
国内推荐:
scoop bucket add scoop-cn https://ghproxy.com/github.com/duzyn/scoop-cn
指定仓库安装
scoop install <bucket_Name>/<packName>
jdk安装实例演示
- 先添加Java的bucket
scoop bucket add java
- 再使用scoop search来搜索jdk的包
scoop search jdk
- 选择自己需要的jdk版本,以下以oraclejdk-lts做演示
scoop install oraclejdk-lts
安装成功!
安装后scoop会保留安装包,可以使用scoop cache show
查看缓存。
scoop cache rm * # 清除所有缓存
scoop 版本控制
scoop可以使用scoop reset
切换软件版本,用法是scoop reset <pack name>@<version number>
、scoop reset <对应的软件包名>
scoop install <pack name>@<version number>
安装指定的版本(这个不太好用)
scoop cleanup
用来清理旧版本
scoop cleanup * # 清理所有旧版
软件推荐
#调用管理员权限
scoop install sudo
#使用
sudo scoop install git -g
#scoop 本地搜索,提高搜索效率
scoop install scoop-search
scoop-search jdk
#插件补全
scoop install scoop-completion
我的安装列表
adb
anaconda3
aria2
cmake
dark
innounp
mingw
openjdk11
openjdk8-redhat
oraclejdk-lts
python
scoop-completion
scoop-search
sudo
xmake
7zip
dotnet-sdk-lts
git
nodejs
nodejs-lts
pandoc
picgo
powertoys
snipaste-beta
utools
附录
常用命令
# 查看已安装程序
scoop list
# 查看更新
scoop status
# 更新版本,更新仓库
scoop update
# 删除旧版本
scoop cleanup
# 自身诊断
scoop checkup
Aria2 的参数
scoop config aria2-retry-wait 4
scoop config aria2-split 16
scoop config aria2-max-connection-per-server 16
scoop config aria2-min-split-size 4M
Scoop代理
#设置代理
scoop config proxy 127.0.0.1:7890
#关闭代理
scoop config proxy false
#使用用户代理
scoop config proxy currentuser@default
#绕过代理直连
scoop config proxy none