chsrc 全平台通用换源工具与框架. Change Source everywhere for every software
Go to file
2023-09-01 17:38:59 +08:00
.gitignore Add .gitignore 2023-08-28 22:22:20 +08:00
chsrc.c Update help info 2023-09-01 17:38:59 +08:00
chsrc.h Update help info 2023-09-01 17:38:59 +08:00
helper.h Fix the bug of wrong length in xy_log() 2023-08-31 21:58:05 +08:00
Makefile Add test and clean target 2023-08-30 09:55:30 +08:00
README.md Update help info 2023-09-01 17:38:59 +08:00
test_helper.c Add test for new xy_strjoin() 2023-08-30 19:44:29 +08:00

chsrc

全平台命令行换源工具,支持 Linux, Windows, macOS, BSD 等所有操作系统飞腾龙芯等所有CPU

若有不支持的情况请提交issue


为什么不使用Python/JS/Go/Rust?

  1. Python/JS:

    我们只想换源。一个简单的换源工具不需要也不应该强行塞给用户一个庞大的解释器和数十、数百MB其他文件。

  2. Go: Go 不足以编译到任何平台

  3. Rust: 我不会 Rust


安装使用

使用chsrc <command> [target]
help                  # 打印此帮助,或 h, -h, --help
list (或 ls, 或 l)    # 查看可用镜像源,和可换源软件
list mirror(s)        # 查看可用镜像源
list target(s)        # 查看可换源软件
list <target>         # 查看该软件可以使用哪些源
cesu <target>         # 对该软件所有源测速
get  <target>         # 查看当前软件的源使用情况
set  <target>         # 换源,自动测速后挑选最快源
set  <target> -1      # 1,2,3的1。换源不测速挑选经维护者测速排序的第一源
set  <target> -v      # 换源,并打印换源所执行的具体操作

换源:

# 编程语言开发
chsrc gem   # 或 chsrc ruby
chsrc pip   # 或 chsrc python
chsrc npm   # 或 chsrc nodejs
chsrc cpan  # 或 chsrc perl

chsrc go
chsrc cargo # 或 chsrc rust 或 chsrc crate
chsrc maven # 或 chsrc java 或 chsrc gradle
chsrc dotnet
chsrc composer # 或 chsrc php

chsrc cran  # 或 chsrc r
chsrc julia

# 操作系统
chsrc ubuntu
chsrc debian
chsrc fedora
chsrc arch
chsrc gentoo
chsrc kali
chsrc manjaro

chsrc deepin
chsrc openkylin
chsrc openeuler

chsrc openbsd
chsrc netbsd

# Windows
chsrc msys2 # 或 chsrc msys

# macOS
chsrc brew  # 或 chsrc homebrew

# 其他软件
chsrc emacs
chsrc anaconda
chsrc ctan     # Tex

开发

请确保拥有一个支持C99的C编译器如 gccmake

make
make test
make clean