~mapperr/tom

A gritty tool manager

refs

master
browse  log 

clone

read-only
https://git.sr.ht/~mapperr/tom
read/write
git@git.sr.ht:~mapperr/tom

You can also use your local clone with git send-email.

#tom

A tool/sdk manager.

Ok, fine, it's a dumb script to update PATH and maybe other vars.

#Install

Download it and put it in your PATH.

It's a bash script.

#Config

#Assumption 1

You put your tools in a directory (let's call it the_tooldir).

You can set the_tooldir with the TOM_TOOLDIR env var.

If you can leave it unset, the default is $HOME/opt.

#Assumption 2

Your tool dirs are made like this: the_tooldir/toolname/toolversion

eg.: $HOME/opt/java/7-oracle, or $HOME/opt/maven/3.5.

#Usage

tom ls [tool_name]

    Lists your tools (it integrates the awesome `ls` software! wow!).

. tom <tool_name> <tool_version>

    Set the current environment to use that version of that tool.
    Note the initial dot (cannot export vars for the current shell otherwise).

Examples:

. tom java 11
. tom java 7-oracle
. tom ant 1.9
. tom maven 3.5

#How it works

It just prepends the_tooldir/toolname/toolversion/bin to the PATH.

Special cases, like setting JAVA_HOME env var for java are handled ad-hoc (like JAVA_HOME for java, or ANT_HOME for ant, just check the script).

#Contacts

Throw me an email at mapperr at sdf.ee if you need anything.