2年多前写过一个Chocolaty的简单教程,Chocolaty很棒,但是在国内使用还是有点问题,,不知道为什么很多IP被禁了, 而且Chocolaty似乎在商业化,有诱导使用商业版的意图.
最近发现一个新的包管理器Scoop,完全免费,依赖于Github,虽然现在上面的包不如Chocolaty多,但是看好它的后市发展.
安装
Scoop的安装如Chocolaty一样方便,在Powershell下面运行下面的代码即可. 如果提示你没有权限,您可能需要运行Set-ExecutionPolicy RemoteSigned -scope CurrentUser
Invoke-Expression (New-Object System.Net.WebClient).DownloadString('https://get.scoop.sh')
卸载
第一规则永远是找好退路在前进, 学会安装前,先学会删除. Scoop的删除很简单,就是用Scoop删除卸载自己就好了.
scoop uninstall scoop
配置
默认情况下,用户安装的程序和Scoop本身都位于其中C:\Users\<user>\scoop
。全局安装的程序(--global
)位于中C:\ProgramData\scoop
。可以通过环境变量更改设置。
$env:SCOOP='D:\Applications\Scoop'
[Environment]::SetEnvironmentVariable('SCOOP', $env:SCOOP, 'User')
$env:SCOOP_GLOBAL='D:\Applications\Global-Scoop'
[Environment]::SetEnvironmentVariable('SCOOP_GLOBAL', $env:SCOOP_GLOBAL, 'Machine')
注意,这些环境变量要在安装scoop前设置,如果你已经安装过scoop了想改位置,一个办法就是卸载掉Scoop,然后配置好环境变量,重新安装. 另外一个办法就是,设置好环境变量,然后把默认位置的文件拷贝到新配置的路径上.
scoop通过aria2来实现多线程下载,建议安装aria2
scoop install aria2
使用
第一步一定是帮助了, 在powershell里面scoop help
就可以看到scoop的所有命令了. 如果需要看某个具体的命令的用法,可以使用scoop help cmd
这里cmd
就是具体的名利,比如scoop help list
.
然后就是安装和卸载了,也很简单scoop install appname
和scoop uninstall appname
.
scoop 安装的一般都是portable的应用,也就是我们所谓的绿色软件,不需要访问注册表什么的.
scoop list
可以查看已经安装了那些应用.
scoop search appname
可以查找应用.
一些概念
在Scoop中,存储桶(bucket)是应用程序的集合。或者,更具体地说,存储桶是一个Git存储库,其中包含描述如何安装应用程序的JSON 应用程序清单。
Scoop有一个与Scoop捆绑在一起的主存储桶,它始终可作为安装应用程序的主要来源。
默认情况下,当您运行时scoop install <app>
,它会在主存储桶中显示,但是也可以从其他存储桶中进行安装。
如果想搭建自己的存储桶(bucket),其实就是自己搭建一个github的仓库,把自己的软件放进去就好. 主存储桶里面包含的软件, 可以通过应用列表 来查看.
查看目前公开的存储桶,可以调用scoop bucket known
. 需要从某个桶里面下载,则需要scoop bucket add bucketname
把这个桶加入进来. 比如:scoop bucket add jetbrains
把jetbrains的安装包加进来.
最后的话
目前scoop有的应用太少了,用于工作还是chocolaty比较好,但是scoop的方式明显更好,预期scoop的包很快就会赶上chocolaty.