Shell Other
Pull request Compare This branch is 88 commits ahead of oubiwann:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
test Bumped to version 1.4.0 in prep for release. Jan 4, 2015
.travis.yml Changed IRC channel. Apr 30, 2014
bash-complete Added the ability to create Reveal.js presentations. May 6, 2014




An Erlang Lisper's Tool for Admin Tasks, Project Creation, and Infrastructure


Currently, the script supports these basic options:

  • help or -h
  • version or -v
  • extract or -x

And these commands:

  • install
  • update
  • new
  • tests
  • repl
  • info

Usage information for each of these is linked to below in the "Usage" section.



Download the shell script and save it to a directory in your $PATH. For example:

$ curl -L -o ./lfetool
$ bash lfetool install

This will install lfetool to /usr/local/bin. Depending upon how the permissions for your chossen path are setup, you may need to use sudo.

If you installed with sudo but would like to be able to self-update the script in the future, you should also change the ownership:

$ chown $USER /usr/local/bin/lfetool

To run lfetool more quickly, you can pre-extract the executable:

$ lfetool -x

This will be done for you eventually if you execute the lfetool repl command.

Bleeding Edge

If you'd like to be able to update with the latest changes in the master branch, you can do this instead:

$ cd ~/lab/
$ git clone
$ cd lfetool
$ ln -s ./lfetool /usr/local/bin/

Permissions are already set on the script in the repo, so there's no need to do anything further.


lfetool Options

lfetool offer several command-line options/flags. The details are presented on the "options" manual page:

lfetool Commands

Details on each of the commands listed below and the subcommands they offer are linked to individual pages:



The following branches are used by this project:

  • stable - what you should use for all your production needs; currently on v1.x; this is the default branch
  • dev-v1 - on-going improvements to the v1.x series
  • dev-v2 - a conversion of lfetool from a large Bash script to an LFE project; the v2.x series (every release to stable gets merged into dev-v2, to benefit from any bug fixes/hot-fixes/template improvements/additions/etc.)
  • master - this is kept around for legacy purposes (there are some projects still using the old v1.0.x series)

Creating lfetool Plugins

Developing additional lfetool commands

This section has been created for those that would like to submit patches/pull requests to lfetool for bug fixes and/or new features. At the very least, it should provide a means for understanding what is needed in order to add new commands to lfetool.

Adding new commands to lfetool is as simple as creating a new plugin. One can start by either copying an existing plugin that most closely resembles the sort of plugin you want to create, or starting completely from scratch.

For those that wish to start from scratch, the following dev guide is provided: