https://scoop.sh/是一款windows系统下的包管理工具,根据官网只需要以下命令即可安装。
iwr -useb get.scoop.sh | iex
#Note: if you get an error you might need to change the execution policy (i.e. enable Powershell) with
Set-ExecutionPolicy RemoteSigned -scope CurrentUser
实际使用中,通常需要镜像加速以及修改安装位置,所以结合文章Windows下Scoop安装、配置与使用,在此,我记录一下我的安装过程。
由于我的C盘空间有限,可以修改安装位置我将目标目录修改为
#将Scoop安装到自定义目录(命令行方式),默认为C:\Users\scoop
$env:SCOOP='D:\Applications\Scoop'
[Environment]::SetEnvironmentVariable('SCOOP', $env:SCOOP, 'User')
#将Scoop配置为将全局程序安装到自定义目录 SCOOP_GLOBAL(命令行方式),默认为C:\ProgramData\scoop
$env:SCOOP_GLOBAL='D:\Applications\GlobalScoopApps'
[Environment]::SetEnvironmentVariable('SCOOP_GLOBAL', $env:SCOOP_GLOBAL, 'Machine')
我的网络质量不佳,使用iwr -useb get.scoop.sh | iex
无法安装,可以借助镜像,来实现安装,下面的脚本会自动替换掉安装脚本中的github的链接
#可能需要通过下面的命令设置权限之后再安装
Set-ExecutionPolicy RemoteSigned -scope CurrentUser
#iwr -useb get.scoop.sh | iex
#网络慢可以使用下面替换为cnpm和fastgit的链接
iwr -useb https://raw.fastgit.org/ScoopInstaller/Scoop/master/bin/install.ps1 | %{$_.Content.replace("github.com","github.com.cnpmjs.org").replace("raw.githubusercontent.com","raw.fastgit.org") | iex
上面这个命令可以正常安装scoop程序,如果需要使用scoop安装其他程序可能会出现问题,下面的脚本会修改scoop源码,使得scoop安装其他程序时替换掉github链接
$(Get-Content $env:SCOOP\apps\scoop\current\lib\manifest.ps1 -raw).replace('Get-Content $path -raw -Encoding UTF8 | convertfrom-json -ea stop','$(Get-Content $path -raw -Encoding UTF8).replace("github.com","github.com.cnpmjs.org").replace("raw.githubusercontent.com","raw.fastgit.org") | convertfrom-json -ea stop') | Out-File -FilePath $env:SCOOP\apps\scoop\current\lib\manifest.ps1
安装完成之后通过如下命令中的一条修改配置,更新的时候就可以方便许多。
#cnpmjs
scoop config SCOOP_REPO https://github.com.cnpmjs.org/ScoopInstaller/Scoop/
#fastgit
scoop config SCOOP_REPO https://hub.fastgit.org/ScoopInstaller/Scoop/
#gitee
scoop config SCOOP_REPO https://gitee.com/squallliu/scoop
scoop使用git来管理软件源列表,所以需要安装git。在上一步安装scoop的时候安装脚本 会自动下载main bucket的压缩包,这个压缩包里面定义了git的安装方法,但是其依赖7zip使用了github的链接,无法访问,会导致安装失败,可以手动修改掉这个链接。
scoop通过bucket管理软件源,列表见github
此外还可以在这个网站中查找一些社区维护的bucket:如
#scoop bucket remove main
scoop bucket add main 'https://github.com/ScoopInstaller/Main'
scoop bucket add extras 'https://github.com/ScoopInstaller/scoop-extras'
scoop bucket add versions 'https://github.com/ScoopInstaller/Versions'
scoop bucket add jetbrains 'https://github.com/Ash258/Scoop-JetBrains'
scoop bucket add java 'https://github.com/ScoopInstaller/Java'
scoop bucket add dorado https://github.com/chawyehsu/dorado
scoop bucket add scoopet https://github.com/ivaquero/scoopet
#scoop bucket remove main
scoop bucket add main 'https://github.com.cnpmjs.org/ScoopInstaller/Main'
scoop bucket add extras 'https://github.com.cnpmjs.org/ScoopInstaller/scoop-extras'
scoop bucket add versions 'https://github.com.cnpmjs.org/ScoopInstaller/Versions'
scoop bucket add jetbrains 'https://github.com.cnpmjs.org/Ash258/Scoop-JetBrains'
scoop bucket add java 'https://github.com.cnpmjs.org/ScoopInstaller/Java'
scoop bucket add dorado 'https://github.com.cnpmjs.org/chawyehsu/dorado'
scoop bucket add scoopet 'https://github.com.cnpmjs.org/ivaquero/scoopet'
#scoop bucket remove main
scoop bucket add main 'https://hub.fastgit.org/ScoopInstaller/Main'
scoop bucket add extras 'https://hub.fastgit.org/ScoopInstaller/scoop-extras'
scoop bucket add versions 'https://hub.fastgit.org/ScoopInstaller/Versions'
scoop bucket add jetbrains 'https://hub.fastgit.org/Ash258/Scoop-JetBrains'
scoop bucket add java 'https://hub.fastgit.org/ScoopInstaller/Java'
scoop bucket add dorado 'https://hub.fastgit.org/chawyehsu/dorado'
scoop bucket add scoopet 'https://hub.fastgit.org/ivaquero/scoopet'
在软件安装过程中通常会自动添加main
bucket,可以通过scoop bucket rm main
删除之后重新添加。之后修改链接可以使用如下内容:
cd $env:SCOOP\buckets\Main
git remote set-url origin https://hub.fastgit.org/ScoopInstaller/Main
可以在网站https://scoopsearch.github.io/#/apps中搜索软件是否有bucket搜录,这个网站搜录了一些常用bucket
运行scoop checkup
安装提示修改注册表,和安装推荐的软件。通常要求安装以下软件
scoop install 7zip innounp wixtoolset
注:在修改注册表来支持长路径时需要在管理员模式运行powershell