This is a small collection of really essential Unix "dot-files"
(~/.xxx
), i.e., opinionated configuration files for the Unix shell
environments of Ralf S. Engelschall under FreeBSD, Linux and macOS. This
Unix environment is based on the following absolutely essential tools:
The intention of these "dot-files" is not to be an extensive tool feature configuration, but to be the bare minimum of an opinionated tool standard configuration.
The particular Unix "dot-files" are:
~/.bash_login
): bash(1) login run-command script~/.bash_logout
): bash(1) logout run-command script~/.bashrc
): bash(1) run-command script~/.inputrc
): bash(1) readline configuration~/.tmux.conf
): tmux(1) configuration~/.vimrc
): vim(1) configuration~/.vifm/vifmrc
): vifm(1) configuration~/.gitconfig
): git(1) configuration~/.ssh/config
): ssh(1) configurationYou can install the package into your system with:
$ make install [DESTDIR=<dir>] [prefix=<dir>] [bindir=<dir>] [datadir=<dir>]
You can install the "dot-files" into the home-directory <dir>
of an
account (either locally or remotely via SSH) with:
$ dotfiles [-q|--quiet] [-f|--force] [-p|--preserve] [-r|--remote <user>@<host>] <dir>
Additionally, ensure that the essential Unix commands bash(1), tmux(1),
less(1), vim(1), vifm(1) and git(1) are available in $PATH
of the
using account. If not, install them into your system with your preferred
Unix software packaging mechanism:
Debian/Ubuntu [Apt]:
$ apt-get install bash tmux less vim vifm git openssh-client
FreeBSD [pkg]:
$ pkg install bash tmux less vim vifm git openssh-portable
macOS [MacPorts]:
$ port install bash tmux less vim vifm git openssh
Unix [OpenPKG]:
$ openpkg build bash tmux less vim vifm git openssh | sh
You can easily override the configuration with the following optional files (which are automatically included and pre-generated):
~/.dotfiles/bashrc
(for overriding ~/.bashrc
)~/.dotfiles/inputrc
(for overriding ~/.inputrc
)~/.dotfiles/tmux.conf
(for overriding ~/.tmux.conf
)~/.dotfiles/vimrc
(for overriding ~/.vimrc
)~/.dotfiles/vifmrc
(for overriding ~/.vifm/vifmrc
)~/.dotfiles/gitconfig
(for overriding ~/.gitconfig
)~/.dotfiles/sshconfig
(for overriding ~/.ssh/config
)In practice, this optimally should be combined with my bash-fzf
script which further enhances the GNU Bash shell environment with the excellent FZF searching functionality.
For this, just copy the bash-fzf.rc script
to ~/.bash-fzf.rc
and ensure that the FZF utility is in your $PATH
, too.
Similarly, this optimally can also be combined with my bash-envrc
script which further enhances the GNU Bash shell environment with the possibility to automatically
activate environment variables through the execution of (explicitly to be whitelisted) .envrc
run-command scripts.
For this, just copy the bash-envrc.rc script
to ~/.bash-envrc.rc
.
Copyright © 1995-2020 Dr. Ralf S. Engelschall. Distributed under MIT license.