Skip to main content

Toolchain

Mirrors

sudo paru -S chsrc-bin
brew install chsrc
scoop install chsrc
winget install RubyMetric.chsrc

Auto:

chsrc set node
chsrc set python
chsrc set rust
chsrc set docker
chsrc set brew
chsrc set flatpak
chsrc set winget
sudo chsrc set arch
sudo chsrc set archlinuxcn

Manual:

chsrc ls ruby
chsrc set ruby rubychina

scoop

scoop:

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
Invoke-RestMethod -Uri https://get.scoop.sh | Invoke-Expression
scoop search bat
scoop install eza
scoop info fzf
scoop bucket add extras

winget

winget:

winget search steam
winget install Microsoft.VisualStudioCode
winget show vscode
winget list
scoop vs winget

scoop vs winget:

Scoop is command line installer, while WinGet is app installer.

Recommended software for Windows:

winget install Rustlang.Rustup zig.zig BellSoft.LibericaJDK.11 Tencent.WeixinDevTools
winget install Git.Git GitHub.cli Oven-sh.Bun CoreyButler.NVMforWindows astral-sh.uv
winget install Anthropic.ClaudeCode Neovim.Neovim Microsoft.VisualStudioCode ZedIndustries.Zed
winget install kangfenmao.CherryStudio Microsoft.WindowsTerminal ImageMagick.ImageMagick Gyan.FFmpeg
winget install ClashVergeRev.ClashVergeRev Google.Chrome Microsoft.OneDrive
winget install NetEase.CloudMusic ByteDance.Feishu Tencent.QQ.NT Tencent.WeChat Tencent.WeType Valve.Steam

mise

mise:

sudo pacman -S mise
brew install mise
scoop install mise
winget install jdx.mise
mise u -g node@lts
node -v

zoxide

zoxide:

sudo pacman -S zoxide
brew install zoxide
scoop install zoxide
winget install ajeetdsouza.zoxide

Interactive fzf menu:

cdi
cd ambiguous-path <Tab>

eza

eza:

sudo pacman -S eza
brew install eza
scoop install eza
winget install eza-community.eza
eza --icons --grid --group-directories-first

fd

fd:

sudo pacman -S fd
brew install fd
scoop install fd
winget install sharkdp.fd
fd --hidden --follow --exclude .git

ripgrep

rg:

sudo pacman -S ripgrep
brew install ripgrep
winget install BurntSushi.ripgrep.MSVC
scoop install ripgrep

Config with export RIPGREP_CONFIG_PATH="$HOME/.ripgreprc":

vim $(rg text -l)

fzf

fzf:

sudo pacman -S fzf
brew install fzf
winget install fzf
scoop install fzf

Config with FZF_DEFAULT_COMMAND:

  • ctrl-r: find commands.
  • ctrl-t: find files and directories.
  • alt-c: cd into directory.
  • code **<TAB>/code $(fzf -m): fuzzy completion for files and directories.
  • ctrl-k / ctrl-j: move cursor up and down.
  • Multi-select(-m): tab and shift-tab to mark multiple items.

See practical guide for more fzf examples.

Television

Television:

sudo pacman -S television
brew install television
scoop bucket add extras
scoop install television
winget install alexpasmantier.television
tv
tv files
tv text
tv git-repos
tv env
tv list-channels

Fetch community channels like cargo-crates, gh-issues, pacman-packages:

tv update-channels

Custom AUR channel ~/.config/television/cable/aur.toml.

jq

jq:

sudo pacman -S jq
brew install jq
scoop install jq
winget install jqlang.jq
curl -s https://fx.wtf/example.json | jq '.users[] | {name, email}'

# Set up package version for GitHub action workflow
echo "version=$(jq -r '.devDependencies["@playwright/test"]' package.json | sed 's/^[^0-9]*//')"

fx

fx:

sudo pacman -S fx
brew install fx
scoop install fx

Terminal JSON viewer and processor:

# Hello world
echo '{"name": "world"}' | fx 'x => x.name' 'x => `Hello, ${x}!`'

# Bump version
fx package.json 'x.version = x.version.replace(/\d+$/, n => +n + 1), x'

# Interactive JSON viewer
curl -s https://fx.wtf/example.json | fx

doggo

doggo:

sudo pacman -S doggo
brew install doggo
scoop install doggo
winget install doggo
doggo example.com
doggo MX github.com @9.9.9.9
doggo example.com --json | jq '.responses[0].answers[].address'

Developer

  • 行书指南: 高质量免费与开源软件列表.
  • IT: Collection of handy online toolkit for developers.
  • Omni: Collection of powerful web-based toolkit for everyday tasks.
  • Miku: Lightweight toolkit collection.

Dotfiles

References