Scoop简识
本文转载自:Scoop包管理工具
Scoop 包管理工具介绍
Windows下常用的包管理工具有:
- Scoop
- Chocolatey
由于Scoop更容易配置(相比于Chocolatey),这里选择 Scoop
使用Scoop安装最佳的应用程序通常称为“便携式”应用程序:即在解压缩时独立运行的压缩程序文件,不存在更改注册表或将文件放在程序目录之外的副作用。
对于像 VirtualBox、Docker for Windows 这些需要高权限的软件还是会用安装包在用户界面下自定义安装。
对比Scoop和Chocolatey:
Chocolatey 能更加全面地包办绝大多数的软件安装,适应重度需求;而 Scoop 则更加简单利落,容易自定义软件包,适应中低需求。
Chocolatey 的安装脚本默认要求管理员权限安装,同时非管理员安装默认路径是 C:\ProgramData\chocoportable
,这对于非高权限用户来说不太友好(比如没有管理员权限的工作机安装会比较折腾),而 Scoop 默认仅需普通用户权限,安装路径是 %USERPROFILE%\scoop
则显得比较清新,不过这都是可以根据需求修改的了。
Scoop更专注于开源的命令行开发人员工具 。
Github页面: scoop: A command-line installer for Windows.
Scoop安装配置
默认设置已配置为用户级别安装的程序和Scoop本身都位于 C:\Users\<user>\scoop
全局安装的程序(所有用户可用)(--global
)位于C\ProgramData\scoop
中。可以通过环境变量更改这些设置 。
所以安装时先通过配置环境变量来配置其安装路径;然后在PowerShell运行命令下载。
Install Scoop to a Custom Directory
[environment]::setEnvironmentVariable('SCOOP','D:\Scoop','User')
$env:SCOOP='D:\Scoop'
iex (new-object net.webclient).downloadstring('https://get.scoop.sh')
相当于在用户变量中设置
SCOOP=D:\Scoop
具体安装方法见其Github
Configure Scoop to install global programs to a Custom Directory(可选,建议不改)
[environment]::setEnvironmentVariable('SCOOP_GLOBAL','D:\Scoop\GlobalScoopApps','Machine')
$env:SCOOP_GLOBAL='D:\Scoop\GlobalScoopApps'
相当于在系统变量中设置:
SCOOP_GLOBAL=D:\Scoop\GlobalScoopApps
;默认是在C:\ProgramData\scoop
,感觉不应该更改。
为什么需要全局安装呢?我想应该 对于那些 要求管理员权限的程序需要安装在全局
Global Installs / scoop Wiki ,像字体等需要给所有用户使用,所以需要使用全局安装。
|
|
Multi-connection downloads with aria2
scoop可通过aria2来进行多任务下载:
|
|
Scoop常用命令
|
|
-
对于GUI程序,scoop会自动为其在开始菜单中添加快捷方式 ,路径:
C:\Users\Fan Dean\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Scoop Apps
-
对于命令行程序,scoop会自动在 scoop应用安装路径下的 shims 文件夹下为其添加对应的exe程序,而shims文件夹是被添加到 PATH 变量中,所以可以直接在命令行中运行刚安装的程序。
安装 curl 、grep
scoop install curl grep
我们发现,下载的过程中自动下载了依赖7-zip。 在安装方面,它利用了7zip去解压安装包/压缩包,因此它对绿色软件有天生的友好属性。 。不仅如此,下载之后的内容会自动将加入到(Path)环境变量中。十分方便。大家都可以自己尝试为一些免安装软件建立软件源(需要安装的软件比较复杂,需要一定门槛)
Scoop 是一个强大的工具,有着极大的可玩性、设计与实现理念,包括但不限于
shim
的软链接理念、利用persist
存储用户数据等等,如果你感兴趣,请直接参考 Scoop 官方的 Wiki。
添加软件源Bucket
Scoop说自己的软件源为Bucket,也可以称其为软件源或仓库。
参考:
# bucket的用法
scoop bucket add|list|known|rm [<args>]
一个添加第三方bucket的示例:
scoop bucket add dorado https://github.com/h404bi/dorado
明确指定安装此软件源中的的程序
scoop install dorado/<app_name>
# 下面是dorado中特有的软件,测试其是否添加成功
scoop search trash
推荐的Bucket:
extras
:Scoop 官方维护的一个仓库,涵盖了大部分因为种种原因不能被收录进主仓库的常用软件。地址:lukesampson/scoop-extrasnirsoft
:是一个 NirSoft 开发的小工具的安装合集。NirSoft 制作了大量的(dozens and dozens)小工具,包括系统工具、网络工具、密码恢复等等,孜孜不倦、持续更新。- Bucket 地址:kodybrown/scoop-nirsoft
- NirSoft 官网地址:NirSoft
- dorado(对中文支持更好)h404bi/dorado: 🐟 A bucket of Scoop, for h404bi
- ash258:Ash258/scoop-Ash258: Personal bucket with wide variety of applications of all kind.
- java:
- nerd-fonts :包含各种字体
|
|
bucket更新时遇到问题
由于extras bucket更新时遇到问题,我将其删除后再添加提示成功,但是它却把 main bucket及默认的bucket给删除了。通过"scoop status"检查状态时出现"These app manifests have been removed"并且下面列出了已被移除的软件名单。那么如何将 main bucket重新添加进来?
|
|
网络问题安装失败
比如安装irfanview一直失败,查看信息
|
|
看另一个示例:
|
|
也是下载不下来,从输出信息中可以看到如下内容
ERROR Download failed! (Error 1) An unknown error occurred
ERROR https://mediaarea.net/download/binary/mediainfo/19.09/MediaInfo_CLI_19.09_Windows_x64.zip
referer=https://mediaarea.net/download/binary/mediainfo/19.09/
dir=D:\Scoop\Applications\cache
out=mediainfo#19.09#https_mediaarea.net_download_binary_mediainfo_19.09_MediaInfo_CLI_19.09_Windows_x64.zip
ERROR & ‘D:\Scoop\Applications\apps\aria2\current\aria2c.exe’ –input-file=’D:\Scoop\Applications\cache\mediainfo.txt’
我们可以发现文件的下载路径和下载后的文件名称,这里 out=
后面的压缩包就是下载后文件的名称,(也可以在 mediainfo.txt 中找到)
然后我们可以尝试在浏览器下载该程序,再更改文件名放入 sxoop 的 cache 目录,最后再次运行 scoop install mediainfo 即可安装。
下面的内容只是个人的一些记录,还有待补充和完善
已安装软件列表
添加额外的extras bucket:
|
|
离线文档查看 zeal :可集成到 idea 等
|
|
视频播放器 mpv
|
|
文件同步工具 syncthing,在GitHub上超级火爆
|
|
ImageMagick 看图软件可以安装其替代品 GraphicsMagick
SVN
scoop install sliksvn
scoop install xx-net
idea-ultimate:
scoop install idea-ultimate
scoop install sumatrapdf
推荐的软件
这里记录了Github上各种bucket,rasa/scoop-directory: A directory of buckets for the scoop package manager for Windows 相当于Scoop的第三方软件源。
新机安装顺序:
- 可选:Google官网下载Chrome下载器
- 先安装 scoop,将其配置好;再为scoop添加下面几个软件源:extras、dorado(对中文支持更好)、ash258、java
- 通过scoop安装cmder(或者安装WindowsTerminal)、RunAny(第一次使用scoop安装其他程序时就会自动安装7z)
- 通过scoop安装必要软件
按安装方式进行分类
下载exe安装包安装:
-
Firefox:使用scoop下载的话会出现无法更改语言和添加插件;使用PortableApp下载速度又贼慢
Firefox最新版本下载:根据此处(latest Firefox release)说明,拼出下面的下载地址(Win64,简体中文)
https://download.mozilla.org/?product=firefox-latest&os=win64&lang=zh-CN
-
Chrome浏览器:直接在官网下载(是一个安装器),通过安装器安装的Chrome在之后更新时无需翻墙
通过压缩包安装:
- RunAny - 开源免费“一劳永逸”的热键快速启动工具 非常不错的工具,它的快捷键是`,如果要在文件中输入它,需要先按 “win”键。
- ZoomIt:用作教鞭。通过Scoop无法安装它。ZoomIt是由微软工作人员开发的 Sysinternals Utilities 系列中的一个,我们也可以选择通过scoop安装所有工具
通过Scoop安装:
- Cmder:Windows下替代cmd的终端
- 各种可在命令行使用的开发相关的程序
- geekuninstaller:著名的卸载工具,能够完全清理卸载残留
- vscode-portable :VS code 在scoop中已经有绿色版
- qbittorrent:BT下载软件
- notepadplusplus:替代默认记事本的程序
- 7-zip:
- uGet:简洁无广告的下载工具(Linux上可用)