Helicon is a command-line tool to tag and organize your music based on metadata from MusicBrainz, written in Rust.
Note: This crate is still in early stages of development and probably not ready for production use. Don't forget to make backups!
Just clone the repository and install the crate as usual:
$ git clone https://github.com/Holzhaus/helicon.git
$ cd helicon
$ cargo install --path .
Don't forget to make sure that your $PATH
includes $HOME/cargo/bin
.
By default, Helicon will import files into ~/Music
. If you want to use a
different directory, create a config file:
$ mkdir -p ~/.config/helicon
$ printf '[paths]\nlibrary_path = "/path/to/music/library/"\n' > ~/.config/helicon/config.toml
To check if your configuration was recognized correctly, use the config
command:
$ helicon config
If all looks good, you can import your first album by running:
$ helicon import ./path/to/some/music/to/import
Check the output of the --help
flag for details.
Helicon is heavily influenced by beets, but does some things differently. Apart from being written in Rust instead of Python, one major difference is Helicon does not maintain a database of imported releases in order to achieve better performance with large libraries on low-end hardware.
Helicon strives to be performant, efficient to use and should support storing as much information from MusicBrainz as possible.
Helicon should be relatively self-contained (i.e., not rely on external command-line applications to be installed) and there are also no plans for a third-party plugin architecture.
Helicon is named after Mount Helicon (Ἑλικών in Ancient Greek), which is -- according to Greek mythology -- the home of the Muses, the nine goddesses of knowledge and the arts, including music.
This software is licensed under the terms of the Mozilla Public License 2.0. Please also have a look at the license FAQ.