This ansible role installs and configures a lot of useful command line tools. The configurations are highly customized und mainly fit to my purposes. Feel free to adapt it to your needs.
The following software packages are installed and configured:
zsh: The shell for unix-like systems
oh-my-zsh: Collection of useful tools and configurations around
tmux: My favourite terminal multiplexer
git: Configures git and sets some life-changing aliases
fzf: A Fuzzy command line search
jrnl: Command line journaling tool
virtualenvwrapper: Python library to wrap environments
tmux and ssh
This role takes care that
ssh-agent is registered with your private
key in all panes and windows of your tmux session.
tmux and vim
tmux is configured to work together with my VIM setup (see
z-shell is installed and selected to be the default shell. Then,
oh-my-zsh, a collection
zsh tools and sane configurations, is cloned and sourced.
vim bindings are enabled.
The fuzzy command line finder
is installed and some aliases are set. It can be used to search the
shell history, git branches and commits, files, and many more.
Unfortuantely, pre-build binaries for
fzf are not available for many
platforms. Hence, it cloned and installed from
The python packages
virtualenvwrapper are installed
pip) and ensured to be loaded uppon a start of the
The interactive python shell
ipython is installed and some startup
scripts are placed.
Along the provisioning, the following packages are installed using the
package manager of your system (make sure that these are availabe):
golang under debian based systems),
Moreover, pythons package manager
pip is assumed to be available.
CTRL-R: Search command history with
ESC-v: Edit current command with
gitcm: Short for
git commit -m
gitv: Shows commit tree of
fgit: Fuzzy search of branches in
fgita: Fuzzy search of changed files in
fjrln: Fuzzy search of
fkill: Fuzzy search of processes. Selected process gets killed.
p: Short for
wo: Short for VirtualEnv command