GSM is a simple sources manager for RubyGems. GSM means GSM Sources Manager as a recursive acronym or simply Gem Sources Manager.
In Ruby development, we always need alternative RubyGems source in special networks. e.g. In China Mainland, you know. GSM helps get your gem sources managed.
$ gem install gsm-sources-manager
$ gsm --version
$ git clone https://github.com/crispgm/gsm.git
$ bundle install
$ bundle exec exe/gsm --version
Once you have installed and bootstrapped gsm
with commands other than --help
or --version
, gsm
will load sources from local gem sources -l
.
HINT: The sources will be named after gemstones, e.g. Amethyst.
List sources within gsm
.
$ gsm list
Amethyst: https://gems.ruby-china.org/
Use a source with source_name
.
$ gsm use Amethyst
GSM: Source `Amethyst` has been applied.
$ gsm list
Amethyst: https://rubygems.org/ (*)
Use a source with source_name
and source_url
.
--use
: Use the input source as well. Equivalent to gsm add
and then gsm use
.
$ gsm add Amethyst https://rubygems.org/
Delete a source with source_name
.
$ gsm del Amethyst
Reset all sources.
$ gsm reset
Mirror the source with bundle
.
--reset
: Reset mirror of bundle configuration.
$ gsm mirror Amethyst
Show help info.
$ gsm help
TODO: API Reference of libgsm
.
- GSM Sources Manager is licensed under MIT License.
- If there is a bug, you may file an issue or pull request directly.
- Pull requests for contribution is welcomed.