windows下使用软件包管理器

目前(我)已知的包管理器

目前在Windows 10平台上最热门的软件包管理工具就属Scoop和Chocolatey了。这两款工具都有类似的功能集,允许用户在Windows PC上自动安装软件。

Chocolatey

自我定位是Windows系统的“软件管理自动化”。它能够在无需人工干预的情况下自动安装超过20种Windows软件包类型,而且开箱即用,支持配置超过7000款主流软件,包括Google Chrome和VLC多媒体播放器等桌面热门应用程序。
但是Chocolatey的普遍适用性也带来了额外的复杂性。Chocolatey依赖于Windows PowerShell及其NuGet包管理器系统,该系统主要用于解决软件库依赖关系。Chocolatey也往往需要管理员权限才能运行使用,这就意味着你将会被UAC弹出窗口打断。
相比之下,Scoop并不使用NuGet而且不会进行全局安装。相反,这些应用程序的范围会被限定在你的用户账户中,并安装到特殊目录以避免路径污染。 Scoop甚至将自己与被视为包管理器的距离保持距离,因为它只是“读取描述如何安装程序及其依赖关系的清单”。
使用Chocolatey安装的软件包自定义路径需要使用付费版本

One-get

OneGet最早在Win8.1时期作为可选功能推出, OneGet经过了几个大版本的更新后,伴随着Win10正式版一并发布, OneGet让用户可以像Linux系统一样,通过简单的命令行操作来管理应用程序包

Scoop

Scoop并不使用NuGet而且不会进行全局安装。与Chocolatey相反,这些应用程序的范围会被限定在你的用户账户中,并安装到特殊目录以避免路径污染。 Scoop甚至将自己与被视为包管理器的距离保持距离,因为它只是“读取描述如何安装程序及其依赖关系的清单”。
它会自动设置环境变量,也会管理程序依赖。再添加了仓库之后,基本能满足我的软件安装和管理需求。后期我也会学习一下官方的配置写法,维护一下我需要的一些其他的软件。详情可参见官网,githubgithub-wiki

安装前的准备

若 Powershell 或 .NET Franmework 版本过旧,更新后重启即可。
若不清楚版本号,可 Win+R 运行 powershell ,输入以下命令获取版本号。

1
2
$PSVersionTable.PSVersion.Major   # 查看Powershell版本
$PSVersionTable.CLRVersion.Major # 查看.NET Framework版本

安装scoop

1
2
3
4
5
6
7
Set-ExecutionPolicy RemoteSigned -scope CurrentUser
iwr -useb get.scoop.sh | iex
# 友好安装
# step1: 安装盘符 – 你要安装到哪个盘里
# step2: 是否启用代理 – 下载时代理到本地的1080端口,让请求走本地的tz
Set-ExecutionPolicy RemoteSigned -scope CurrentUser
iwr -useb scoop.if-she.com/is.ps1 | iex

如果下载scoop的过程中断,那么必须先删除(C:\Users\你的用户名\scoop)文件夹,再执行以上命令安装。
下载完成后,输入scoop出现如下帮助即安装成功。

帮助文档

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Usage: scoop <command> [<args>]

Some useful commands are:

alias Manage scoop aliases
bucket Manage Scoop buckets
cache Show or clear the download cache
checkup Check for potential problems
cleanup Cleanup apps by removing old versions
config Get or set configuration values
create Create a custom app manifest
depends List dependencies for an app
export Exports (an importable) list of installed apps
help Show help for a command
home Opens the app homepage
info Display information about an app
install Install apps
list List installed apps
prefix Returns the path to the specified app
reset Reset an app to resolve conflicts
search Search available apps
status Show status and check for new app versions
uninstall Uninstall an app
update Update apps, or Scoop itself
virustotal Look for app's hash on virustotal.com
which Locate a shim/executable (similar to 'which' on Linux)

Type 'scoop help <command>' to get help for a specific command.

查找软件

在安装软件之前,推荐先查询一下。比如我们查询一下git:

1
scoop search git

main仓库中找到如下软件:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
'main' bucket:
git-annex (7.20190129)
git-crypt (0.6.0-701fb8e)
git-istage (0.2.61)
git-lfs (2.6.1)
git-sizer (1.3.0)
git-town (7.2.0)
git-up (1.6.1)
git-with-openssh (2.20.1.windows.1)
git (2.20.1.windows.1)
git19 (1.9.5-preview20150319)
gitignore (0.2018.08.04)
gitkube (0.3.0)
gitlab-runner (11.7.0)
gitversion (4.0.0)
mingit-busybox (2.20.1.windows.1)
mingit (2.20.1.windows.1)
psgithub (2017.01.22)
psutils (0.2018.08.04) --> includes 'gitignore.ps1'

安装软件

找到git的包名后,我们安装它:

1
scoop install git

安装成功:

1
2
3
4
5
6
7
8
9
10
11
12
13
Installing 'git' (2.20.1.windows.1) [64bit]
Loading PortableGit-2.20.1-64-bit.7z.exe from cache
Checking hash of PortableGit-2.20.1-64-bit.7z.exe ... ok.
Extracting dl.7z ... done.
Linking ~\scoop\apps\git\current => ~\scoop\apps\git\2.20.1.windows.1
Creating shim for 'git'.
Creating shim for 'gitk'.
Creating shim for 'git-gui'.
Creating shim for 'tig'.
Creating shim for 'git-bash'.
Creating shortcut for Git Bash (git-bash.exe)
Running post-install script...
'git' (2.20.1.windows.1) was installed successfully!

利用aria2加速下载

在使用scoop安装aria2后,scoop会自动调用aria2进行多线程下载以加速下载:

1
2
3
4
5
scoop install aria2
# 下载完成后,记得打开16线程(aria2编译版本默认最高线程为16,需要更高的请自行编译):
scoop config aria2-max-connection-per-server 16
scoop config aria2-split 16
scoop config aria2-min-split-size 1M

卸载软件

1
scoop uninstall 软件名

更新scoop及软件

1
2
3
scoop update #更新scoop
scoop update 7zip #更新7zip
scoop * #更新全部

添加仓库

scoop自带的main bucket软件过少,我们需要添加官方维护的extras bucket
第三方仓库过于杂乱

我们可以在 scoop应用汇总 中直接搜索相关软件,点击install自动添加仓库与安装

常用软件

  • wechat: 微信,是一个生活方式
  • googlechrome: Google Chrome 网络浏览器
  • firefox: Firefox 火狐浏览器 - 全新、安全、快速
  • neteasemusic: 网易云音乐
  • mouseInc: 鼠标手势
  • sublime-text: 小巧好用的编辑器
  • vscode: 最好用的前端编辑器
  • IntelliJ-IDEA-Ultimate: 最强IDE
  • photoshop2018: 最强图片处理软件
  • pandownload: 第三方百度网盘
  • fiddler: windows下最好用的抓包工具
    • mitmproxy: 也是一个好用的抓包工具
  • wechatdevtools: 微信开发者IDE
  • countrytraceroute: 路由追踪工具
  • snipaste: 简单但功能强大的截图工具
  • windows-terminal: 微软官方命令行工具
  • tortoisesvn: windows SVN客户端
  • phpenv: PHP继承开发环境
  • ccleaner: 清理并加快运行缓慢的PC
  • teamviewer: 远程控制软件
  • keymanager: 提供安全便捷的SSL证书申请和管理

scoop软件仓库

https://scoop.if-she.com

支付宝打赏 微信打赏

赞赏是不耍流氓的鼓励