A gritty tool/SDK manager


A tool/sdk manager.

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


Download it and put it in your PATH.

It's a bash script.


#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.


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).


. 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).


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