1 unstable release
0.4.0 | Apr 14, 2023 |
---|
#2 in #asdf
11KB
146 lines
asdfler
Manage which asdf
plugins you have as well as default versions!
NOTE: SUPER UNTESTED AND THROWN TOGETHER IN A COUPLE OF HOURS. Use at your own risk
Installation
Homebrew
brew install tedious-tools/formulae/asdfler
Non-Homebrew
- Install Rust 1.68+ compiler
git clone https://github.com/tedious-tools/asdfler.git
cd asdfler
cargo build --release
mv target/release/asdfler <somewhere in your path like ~/bin>/asdfler
- name: rust
default_version: 1.68.1
to your shiny new .asdfler.yml
file and run asdfler install
:D
Usage
Create a .asdfler.yml
wherever, probably your home directory given this is not really per-project (that's what .tool-versions
are for).
touch ~/.asdfler.yml
Open it and edit! Currently supported config:
# top-level key
plugins:
- name: ruby # Name of the plugin
default_version: 2.7.2 # Will install this version and run `asdf global ruby 2.7.2`
- name: golang
versions:
- "1.20" # Note the quotes to ensure YAML sees this as a string
- name: crystal # Just adds the Crystal asdf plugin
- name: erlang
# The list of versions installed is the Union of the default version and any
# versions listed.
default_version: 24.0.3
versions:
- 24.1.4
While in the home directory or wherever you put the .asdfler.yml
file, run:
asdfler install
You can also specify a path with the -f
option. Any valid YAML parseable file of the
provided structure works. Your versions must be strings. JSON, being a superset of YAML,
will work as well:
{
"plugins": [
{"name": "ruby", "default_version": "2.7.2"},
{"name": "golang"}
]
}
asdfler install -f my_versions.json
Development
cargo build
is all that should be necessary to get going.
Contributing
- Fork it (https://github.com/tedious-tools/asdfler/fork)
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new Pull Request
Contributors
- lirossarvet - creator and maintainer
Dependencies
~6–15MB
~208K SLoC