一. 前言
假如你的计算机使用 Windows 系统,如果你需要安装 Git,正常的步骤是:
打开浏览器 ——> 在搜索引擎中输入关键词「Git」——> 找到 Git 官网 ——> 下载 Git 安装包 ——> 运行 Git 安装程序 ——> 安装完成
如果你使用的是「Baidu」等 ** 搜索引擎,中间的过程可能会更加繁琐曲折🤕
在 Windows 下大部分软件安装、配置使用各种不规范的目录,弄脏你系统的注册表,将计算机系统内部弄得脏乱不堪,这是让人难以忍受的
由于工作、学习环境对 Windows 生态系统的依赖亦或是迁移 Linux、macOS 生态的过程会增加学习和金钱成本,是时候摆脱这个困境了,请允许我介绍 Windows 下最好用的 「包管理器」——Scoop!🤠
Windows 下目前主要有三种包管理器:
本文不做三者的比较,仅讨论 Scoop;严格来说,Scoop 不算是「包管理器」,官方解释为「Scoop 是 Windows 的命令行安装程序」,但它基本实现了 Windows 上管理软件包的流程
包管理器:或叫 包管理系统
是在计算机中自动安装、配置、卸载和升级软件包的工具的集合,在 系统软件
和 应用软件
的软件管理中都有大量应用,常见的一些系统 / 应用软件包管理器:
软件 | 包管理器 | 实例 |
---|---|---|
Debian/Ubuntu | apt | apt install git |
ArchLinux | pacman | pacman -S git |
macOS | Homebrew | brew install git |
openSUSE | zypper | zypper install git |
Python | Pypi | pip install opencv-python |
二. 简介
Scoop 是什么?
Scoop 是 Windows 的命令行安装程序(command-line installer)
Scoop 致力于解决:
权限弹出窗口(Windows UAC)
GUI 引导式安装程序
安装大量程序后造成的文件路径污染
安装和卸载程序的污染和残留
查找和安装依赖程序
需要执行额外的配置以使程序工作
==环境要求==
系统版本:Windows 7 SP1 及 Windows Server 2008 之后的版本
PowerShell (可在微软商店安装,同时安装Windows Terminal)
Net Framework 4.5 及更高版本
由于中国大陆特殊的网络情况,大概率还需要科学上网
建议环境:
三. 安装及配置
==1. 安装scoop
==
- 设置 PowerShell 执行策略
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
- 下载安装脚本
irm get.scoop.sh -outfile 'install.ps1'
- 查看安装程序的所有可配置参数
.\install.ps1 -?
- 执行脚本进行安装,其中
ScoopDir
:当前用户程序安装路径,ScoopGlobalDir
:全局程序安装路径
.\install.ps1 -ScoopDir 'E:\Applications\Scoop' -ScoopGlobalDir 'E:\ProgramData\scoop'
- 设置命令行工具当前会话使用本机代理(重要,你懂的)
$Env:https_proxy="http://127.0.0.1:10809";
==2. scoop
安装 Git
==
对于 Scoop 来说,Git 是必需的组件,现在安装很简单
scoop install git
PS: 安装 Git 会附带安装 7zip,它也是 Scoop 必需的组件
==3.scoop
安装 Aria2
==
Scoop 使用 Aria2 进行多线程下载,之后它会应用于 Scoop 安装软件过程所有的下载
scoop install aria2
配置一下 Aria2 的参数 scoop config [参数]
参数:
aria2-enabled (是否启用 Aria2,默认: true)
aria2-retry-wait (重试等待时间,默认: 2)
aria2-split (单任务最大连接数,默认: 5)
aria2-max-connection-per-server (单服务器最大连接数,默认: 5,最大: 16)
aria2-min-split-size (文件最小切片大小: 5M)
比如:
# 重试等待时间 5s
scoop config aria2-retry-wait 5
# 单任务最大连接数 32
scoop config aria2-split 32
# 单服务器最大连接数 16
scoop config aria2-max-connection-per-server 16
# 文件最小切片 1M
scoop config aria2-min-split-size 1M
==4. 安装 sudo==
当 Scoop 全局安装软件的时候,需要管理员权限,在日常的使用过程中,我们可以在 scoop 命令前加 sudo 来提权以简化步骤,安装 sudo
scoop install sudo
可能需要的步骤: 在使用 scoop checkup
后看到如下提示
WARN Windows Defender may slow down or disrupt installs with realtime scanning.
Consider running:
sudo Add-MpPreference -ExclusionPath 'C:\Scoop'
(Requires 'sudo' command. Run 'scoop install sudo' if you don't have it.)
WARN Windows Defender may slow down or disrupt installs with realtime scanning.
Consider running:
sudo Add-MpPreference -ExclusionPath 'C:\Scoop\Global'
(Requires 'sudo' command. Run 'scoop install sudo' if you don't have it.)
WARN LongPaths support is not enabled.
You can enable it with running:
Set-ItemProperty 'HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem' -Name 'LongPathsEnabled' -Value 1
WARN Found 3 potential problems.
其中有三个「潜在」问题,可以按照自己实际情况选择执行
# Windows Defender可能会因实时扫描而减慢或破坏安装(注意对应实际 Scoop 路径)
sudo Add-MpPreference -ExclusionPath 'C:\Scoop'
sudo Add-MpPreference -ExclusionPath 'C:\Scoop\Global'
# 长路径支持(建议开启)
sudo Set-ItemProperty 'HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem' -Name 'LongPathsEnabled' -Value 1
==5. 添加软件库bucket==
Scoop 的软件存储库使用「Bucket」的概念,它是应用程序的集合,或者更具体地说,Bucket 是一个 Git 存储库,其中包含描述如何安装应用程序的 JSON 应用程序清单 主要的 Bucket 按照 ⭐ Star 数 排序:
Bucket | 描述 |
---|---|
Main | Windows 的命令行安装程序 |
extras | 包含不太符合主存储桶标准的应用 |
main | 下一代的 Scoop 默认 Bucket |
chawyehsu/dorado | 🐟 又是一个可爱的 Scoop 的 Bucket |
Ash258/Scoop-Ash258 | 个人 Bucket,包含各种应用 |
nerd-fonts | 一个用于安装 Nerd Fonts 字体的 Bucket |
java | 用于 Oracle Java, OpenJDK, Zulu, ojdkbuild, AdoptOpenJDK, Amazon Corretto, BellSoft Liberica, SapMachine 和 Microsoft JDK 的 Bucket |
borger/scoop-galaxy-integrations | 提供安装、附加和更新 GOG Galaxy 2 号集成的简单方法 |
TheRandomLabs/Scoop-Spotify | 一个用于 Spotify、Spicetify 和相关软件包的 Bucket |
nonportable | 一个用于非可移植应用程序的 Bucket |
games | 开源 / 免费游戏和游戏相关工具的 Bucket |
TheCjw/scoop-retools | 逆向工程工具的 Bucket |
jetbrains | 包含 Jetbrians IDE 的 Bucket |
integzz/scoopet | 包含学术研究应用的 Bucket |
Versions | 包含一些知名软件包的旧版本的 Bucket |
Ash258/GenericBucket | 通用的 Bucket 模板 |
kidonng/sushi | 一个美味的、包容的 Bucket |
rasa/scoops | 一个美味的的 Bucket |
littleli/scoop-clojure | 安装 Clojure 的 Bucket |
MCOfficer/scoop-nirsoft | 个人收藏的 nirsoft.net-bucket,总共包含了 250 多个程序 |
kkzzhizhou/coop-apps | 合并多个 Scoop 仓库,使用 Github Action 自动更新 |
KNOXDEV/wsl | 一个用于 WSL 的 Bucket,不需要 Windows UWP 应用商店 |
Ash258/Scoop-Sysinternals | 所有分开的 Sysinternals 工具的 Bucket |
TheRandomLabs/Scoop-Bucket | 个人收藏的 Bucket |
cderv/r-bucket | R 语言用户和软件工程师使用的个人 Bucket |
kkzzhizhou/scoop-zapps | 自用 Scoop 仓库,使用 Github Actions 自动更新 |
tetradice/scoop-iyokan-jp | 日本語環境に最適化された scoop bucket |
rkbk60/scoop-for-jp | 适合小日子过得不错的日本人的 Bucket |
ZvonimirSun/scoop-iszy | ZvonimirSun 个人收藏的 Bucket |
php | PHP 的 Bucket |
#查看已知库
scoop bucket known
#查看已经安装的库
scoop bucket list
#添加ScoopInstaller已知软件库
scoop bucket add <bucketname>
#比如: ***
scoop bucket add extras
scoop bucket add java
scoop bucket add nonportable
scoop bucket add PHP
scoop bucket add versions
scoop bucket add excavator
scoop bucket add nirsoft
scoop bucket add tests
#添加第三方库
scoop bucket add <bucketname> <bucket_url>
#比如: ***
scoop bucket add apps https://github.com/kkzzhizhou/scoop-apps
#删除安装的库
scoop bucket rm <bucketname>
==6. 常见命令==
scoop help
可以查看 scoop 命令帮助
Usage: scoop <command> [<args>]
Some useful commands are:
alias 管理 scoop 别名
bucket 管理 Scoop 存储库
cache 显示或清除下载缓存
checkup 检查潜在问题
cleanup 通过删除旧版本清理应用程序
config 获取或设置配置值
create 创建自定义应用程序清单
depends 列出应用程序的依赖关系
export 导出(可导入)已安装应用程序的列表
help 显示命令帮助
hold 保持应用程序禁用更新
home 打开应用程序主页
info 显示应用程序的相关信息
install 安装应用程序
list 列出已安装的应用程序
prefix 返回指定应用程序的路径
reset 重置应用程序以解决冲突
search 搜索可用的应用程序
status 显示状态并检查新的应用程序版本
unhold 解除锁定以启用更新
uninstall 卸载应用程序
update 更新应用程序或 Scoop 本身
virustotal 在 virustotal.com 上查找应用程序的哈希值
which 查找 shim/可执行文件(类似于 Linux 上的 "which")
- 使用
scoop help <command>
,查看具体命令的帮助,比如,使用scoop help config
查看config
命令的帮助
Usage: scoop config [rm] name [value]
The scoop configuration file is saved at ~/.config/scoop/config.json.
To get all configuration settings:
scoop config
To get a configuration setting:
scoop config <name>
To set a configuration setting:
scoop config <name> <value>
To remove a configuration setting:
scoop config rm <name>
- 其他常用命令
# 查看所有软件包缓存
scoop cache show
# 清除所有软件包缓存
scoop cache rm *
# 清除 <AppName> 的缓存
scoop cache rm <AppName>
# 清除所有全局安装软件的缓存和旧版本
sudo scoop cleanup -gk *
# 清除所有非全局安装软件的缓存和旧版本
scoop cleanup -k *
# 删除 <AppName> 的旧版本
scoop cleanup <AppName>
# 删除全局安装的 <AppName> 的旧版本
sudo scoop cleanup <AppName> -g
# 删除所有非全局安装应用的旧版本
scoop cleanup *
# 删除所有全局安装应用的旧版本
sudo scoop cleanup * -g
# 删除下载 <AppName> 的过期缓存
scoop cleanup <AppName> -k
# 上面的太麻烦?👇直接用下面一条命令一把梭🤣
scoop cache rm * && sudo scoop cleanup -gk * && scoop cleanup * && sudo scoop cleanup * -g
# 查看已安装应用
scoop list
# 查看 <AppName> 的信息
scoop info <AppName>
# 打开 <AppName> 的官网
scoop home <AppName>
# 查看官方认证可添加的 Bucket
scoop bucket known
# 检查 scoop 状态
scoop checkup
# 启用调试信息
scoop config debug true
==7. 常用软件清单==
- 自用清单
# 本地音乐播放器
scoop install extras/aimp
# alist
scoop install main/alist
# 百度网盘
scoop install apps/BaiduNetdisk
# clash
scoop install extras/clash-verge-rev
# 钉钉
scoop install lzwme_scoop-proxy-cn/dingtalk
# .net
scoop install versions/dotnet6-sdk
# everything
scoop install extras/everything
# 字体
scoop install nerd-fonts/FiraCode-NF
# 截图工具 (用户名:Triniti school 激活码:AXRQS-RHMSV-FXCHR-PDURO)
scoop install extras/fscapture
# github cli
scoop install main/gh
# git
scoop install main/git
# go
scoop install main/go
# chrome浏览器
scoop install extras/googlechrome
# idm
scoop install okibcn_ScoopMaster/IDM
# 信息条
scoop install apps/infobar
# jetbrains工具箱
scoop install extras/jetbrains-toolbox
# 笔记软件joplin
scoop install extras/joplin
# 字体
scoop install nerd-fonts/LXGWWenKai
# 字体
scoop install nerd-fonts/Meslo-NF
# minio对象存储服务端
scoop install main/minio
# minio对象存储客户端
scoop install main/minio-client
# 播放器
scoop install extras/mpv-easy-player
# 免费做谱软件
scoop install extras/musescore
# 笔记软件
scoop install extras/obsidian
# office365
scoop install nonportable/office-365-apps-minimal-np
# 终端美化工具
scoop install main/oh-my-posh
# typora格式转换所需软件
scoop install main/pandoc
# pdf工具
scoop install nonportable/pdf24-creator-np
# 视频播放工具
scoop install extras/potplayer
# python
scoop install main/python
# u盘系统安装工具
scoop install extras/rufus
# 字体
scoop install nerd-fonts/SarasaGothic-SC
# sudo
scoop install lzwme_scoop-proxy-cn/sudo
# pdf工具
scoop install extras/sumatrapdf
# 电报
scoop install extras/telegram
# Windows平台的监控悬浮窗软件
scoop install extras/trafficmonitor
# markdown编辑工具
scoop install extras/typora
# v2ray
scoop install lzwme_scoop-proxy-cn/v2ray
# v2raya
scoop install apps/v2raya
# v2rayn
scoop install extras/v2rayn
# 播放器
scoop install apps/vlc
# vscode
scoop install extras/vscode
# 微信
scoop install extras/wechat
# .NET
scoop install extras/windowsdesktop-runtime
# 远程工具
scoop install extras/windterm
# warp+
scoop install nonportable/wireguard-np
# 抓包工具
scoop install extras/wireshark
# xray
scoop install lzwme_scoop-proxy-cn/xray
- 其他
# 流量/硬件监控
scoop install trafficmonitor
# Draw.io 绘图工具
scoop install draw.io
# 一个 RSS 阅读器
scoop install fluent-reader
# 轻量的图片查看器
scoop install imageglass
# 强大的串流、录屏工具
scoop install obs-studio
# PowerShell 7
scoop install powershell-preview
# 苏门答腊 PDF
scoop install sumatrapdf
# Telegram
scoop install telegram
# 终端增强
scoop install starship
# ISO 写录工具
scoop install rufus
# Windows Terminal
scoop install windows-terminal
# DeepL 翻译工具
scoop install deepl
# 傲梅分区软件
scoop install AoMeiPartition
# Android Studio
scoop install android-studio
# 百度云盘(快逃!)
scoop install baidunetdisk
# 安装 cpu-z gpu-z aida64
scoop install cpu-z gpu-z Aida64
# Linux 常用工具
scoop install curl wget grep touch vim gcc cmake sed less
# 钉钉
scoop install dingtalk
# DiskGenius 分区精灵
scoop install DiskGenius
# Everything 文件索引软件
scoop install everything
# Geek Unistaller 卸载软件
scoop install geekuninstaller
# Chrome 浏览器
scoop install googlechrome
scoop install gradle
# IDM 下载工具
scoop install IDM
scoop install innounp
scoop install lessmsi
# 管理 WSL 的全功能实用程序
scoop install lxrunoffline
# JAVA maven
scoop install maven
# Motrix 下载工具
scoop install motrix
# Node.js
scoop install nodejs -g
# 安装 yarn
scoop install yarn
# Notepad++ 文本编辑器
scoop install notepadplusplus
# OpenSSL
scoop install openssl
# Pandoc
scoop install pandoc
# Postman
scoop install postman
scoop install privoxy
scoop install process-explorer
# Redis 管理器
scoop install redis-desktop-manager
# ScreenToGif 录制 Gif 工具
scoop install screentogif
# 图形化查看磁盘空间占用
scoop install SpaceSniffer
# 切换 hosts 工具
scoop install switchhosts
# Markdown 码字工具
scoop install typora
# 强大的小工具集合
scoop install utools
# VScode
scoop install vscode-portable
# WireShark 流量分析工具
scoop install wireshark
# Wox 一款 Windows 上快速启动器
scoop install wox
# Windows 上空格键快速预览文件小工具
scoop install quicklook