工作环境系统实用配置记录

Scoop 包管理器

Scoop 是我在 Windows 平台上最顺手的软件(包)管理器,可以很方便的在命令行中安装我的熟悉的软件。它有以下特点:

  • 消除权限弹出窗口
  • 防止安装大量程序导致的 PATH 污染
  • 避免安装和卸载程序时出现意外的副作用
  • 自动查找并安装依赖项
  • 自动执行所有额外的设置步骤以获得一个可运行的程序

我可以用它简单且直接的安装 oh-my-posh、nodejs、pipx、ffmpeg、7zip、aria2、fastfetch 等一系列小程序,仅需要以下命令:

scoop install nodejs-lts

甚至可以用它安装 VS Code(需要添加 extras buckets):

scoop bucket add extras
scoop install vscode

安装 nerd fonts 系列的字体(需要添加 nerd-fonts buckets):

scoop bucket add nerd-fonts
scoop install Cascadia-Code

需要注意,使用 Scoop 管理工具时,Scoop 会将已安装的多个版本的应用保存在各自的文件夹中,以便随时切换和回退到以前的版本。

例如,可以通过文件管理器直接查看C:\Users\Xu\scoop\apps\oh-my-posh文件夹,里面应该有多个以版本号命名的子文件夹。当前激活的版本会显示在current目录中。可以通过文件管理器查看C:\Users\Xu\scoop\apps\oh-my-posh\current是指向哪个版本的符号链接。

手动删除不需要的旧版本子文件夹。例如,如果看到有 7.68.0 和 7.69.1 两个文件夹,而只想保留最新的 7.69,可以进入C:\Users\Xu\scoop\apps\oh-my-posh目录 删除旧版本文件夹(如 7.68.0)。或者直接使用命令自动清理未使用的旧版本文件:

scoop cleanup oh-my-posh
scoop cleanup --all

这样,每次更新后 Scoop 会自动删除旧版本。

附上我使用 scoop 安装的软件:

Name                   Version            Source Updated             Info
----                   -------            ------ -------             ----
7zip                   24.09              main   2024-12-02 16:34:26
aria2                  1.37.0-1           main   2024-11-11 21:58:04
btop                   1.0.4              main   2024-07-17 21:29:16
btop-lhm               1.0.4              main   2024-07-17 21:29:25
draw.io                25.0.2             extras 2024-12-05 15:24:34
everything             1.4.1.1026         extras 2024-12-04 14:25:38
fastfetch              2.33.0             main   2024-12-28 23:17:29
fd                     10.2.0             main   2024-12-22 12:47:35
ffmpeg                 7.1                main   2024-10-20 18:21:52
fzf                    0.57.0             main   2024-12-22 12:47:39
geekuninstaller        1.5.2.165          extras 2024-12-03 16:21:50
gh                     2.64.0             main   2024-12-22 12:57:21
ghostscript            10.04.0            main   2024-12-22 12:49:34
git                    2.47.1             main   2024-12-02 16:46:01
imagemagick            7.1.1-43           main   2024-12-25 22:26:47
innounp                1.76               main   2024-11-14 10:58:02
jid                    0.7.6              main   2024-12-22 12:49:50
jq                     1.7.1              main   2024-12-22 12:47:28
mingw                  14.2.0-rt_v12-rev0 main   2024-12-05 15:37:08
mongodb                8.0.4              main   2024-12-08 12:22:01
mongodb-compass        1.45.0             extras 2024-12-05 15:24:52
mongodb-database-tools 100.10.0           main   2024-12-02 17:10:50
mongosh                2.3.7              extras 2024-12-22 12:57:28
motrix                 1.8.19             extras 2024-12-02 17:45:13
nodejs-lts             22.12.0            main   2024-12-05 15:25:03
notepad3               6.24.1221.1        extras 2024-12-22 12:59:44
office-tool-plus       10.19.8.0          extras 2024-12-22 12:59:49
oh-my-posh             24.17.1            main   2024-12-25 22:26:58
openjdk21              21.0.2-13          java   2024-12-05 15:46:33
pandoc                 3.6.1              main   2024-12-25 22:27:12
picgo                  2.3.1              extras 2024-12-02 17:32:48
pipx                   1.7.1              main   2024-12-13 20:38:34
pnpm                   9.15.2             main   2024-12-28 23:17:37
poppler                24.08.0-0          main   2024-12-22 12:47:32
r                      4.4.2              main   2024-12-02 16:39:04
registry-finder        2.59.0.0           extras 2024-12-04 14:15:35
ripgrep                14.1.1             main   2024-12-22 12:47:37
rstudio                2024.12.0-467      extras 2024-12-22 13:00:34
rtools                 4.4.6335.6327      main   2024-12-02 14:16:57
sudo                   0.2020.01.26       main   2024-09-30 13:16:29
switchhosts            4.2.0.6119         extras 2024-12-02 17:38:16
texstudio              4.8.5              extras 2024-12-14 16:06:48
thorium                128.0.6613.189     extras 2024-12-02 17:36:29
typst                  0.12.0             main   2024-12-05 15:34:13
vcredist2022           14.42.34433.0      extras 2024-12-02 16:56:57
wixtoolset             5.0.2              main   2024-11-14 10:57:52
zoxide                 0.9.6              main   2024-12-22 12:47:42

Fonts

  • Powershell: ‘CaskaydiaMonoNerdFontMono’
  • VS Code: ‘CaskaydiaMonoNerdFontMono’(英文), ‘LXGW WenKai Mono’(中文)
  • Office Word: ‘latinmodern-math’ (数学公式)。

Node.js

镜像源管理工具 nrm

  • nrm 是一个 npm registry manager,可以帮助用户更方便地管理不同的镜像源。以下是 nrm 的基本使用方式:
# 安装nrm
npm install nrm -g
# 列出所有配置的镜像源
nrm ls
# 添加新的镜像源
nrm add <registry-name> <registry-url>
# 删除镜像源
nrm del <registry-name>
# 切换当前使用的镜像源
nrm use <registry-name>
# 测试所有镜像源的速度
nrm test

MongoDB

安装

利用 scoop 自动安装 mongodb 及其一系列工具:

scoop bucket add main
scoop install main/mongodb
scoop install main/mongodb-database-tools

scoop bucket add extras
scoop install extras/mongosh
scoop install extras/mongodb-compass

配置

通过 Scoop 安装的 MongoDB 默认不会配置为 Windows 服务,但可以手动设置 MongoDB 作为 Windows 服务来实现开机自启。

使用 Scoop 检查 MongoDB 安装位置:

scoop prefix mongodb

mongod shim 使用$dir\bin\mongod.cfg作为默认配置文件。要使用其他配置文件,请运行$dir\bin\mongod.exe --config NEW_CONFIG_FILENEW_CONFIG_FILE可以基于mongod.cfg进行修改,并存放在其他位置。

手动启动 MongoDB,如果未创建data\dbdata\log文件夹(路径可以在mongod.cfg中固定设置),请先手动创建::

<路径>\bin\mongod.exe --dbpath "<路径>\data\db" --logpath "<路径>\data\log\mongo.log" --logappend

打开一个新终端,验证 MongoDB 是否正常启动:

mongosh

注册 MongoDB 为 Windows 服务:

sc.exe create MongoDB binPath= "<路径>\bin\mongod.exe --service --config <路径>\mongod.cfg" DisplayName= "MongoDB" start= "auto"
  • <路径>:Scoop 安装的 MongoDB 路径。
  • --service:指定以服务模式运行。
  • --config:指定 MongoDB 的配置文件路径(可选)。

启动 MongoDB 服务,如果服务启动成功,MongoDB 将在每次系统启动时自动运行:

net start MongoDB

工具列表




    Enjoy Reading This Article?

    Here are some more articles you might like to read next:

  • 部署用于学术研究的 Linux 服务器
  • Conda-Pyenv-Poetry 多轨管理 Python 环境
  • Linux 实用配置记录
  • Windows 实用配置记录
  • Python 项目中高效管理路径的范式