rubymetric/chsrc

chsrc 全平台通用换源工具与框架. Change Source everywhere for every software

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 31 minutes ago
Added to GitGenius on September 9th, 2026
Created on September 3rd, 2023
Open Issues & Pull Requests: 23 (+0)
GitHub issues: Enabled
Number of forks: 285
Total Stargazers: 6,883 (+0)
Total Subscribers: 24 (+0)

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Issue API getrepoissuespagesummary failed: 429 Rate limit exceeded. Please try again later.

Detailed Description

chsrc is a cross-platform source-switching tool and framework written in C11 that aims to support Linux, Windows, macOS, BSD, Android, and various CPU architectures including RISC-V.

The tool solves the problem of changing software package sources across different operating systems and package managers. Users often need to switch to faster or more reliable mirrors for package repositories, but doing so typically requires different commands and configuration methods for each system and package manager. chsrc provides a unified command-line interface that abstracts away these differences, allowing users to change sources for package managers like npm, pip, cargo, brew, apt, and many others through a consistent set of commands.

The project positions itself as both a practical command-line utility and an MVC framework for source-switching. Developers considering adoption should know that chsrc is designed for maximum portability through C11 implementation, targeting not just common platforms but also less common architectures and operating systems. The tool is particularly suited for users who work across multiple systems or need to manage package sources programmatically. The framework aspect means that adding support for new package managers or sources does not require C language expertise; contributors can write new switching methods using recipes, which the documentation describes as simpler than shell scripting.

The project maintains active engagement with its community, evidenced by ongoing issue tracking and collaborative development discussions. Contributors regularly submit improvements and new features, and the maintainers actively respond to user feedback and bug reports. The codebase undergoes periodic refactoring efforts to improve code quality and maintainability, indicating a commitment to long-term sustainability beyond initial implementation.