Skip to content
/ dotfiles Public

Small Opinionated Collection of Unix Configuration Files for User Shell Environment

Notifications You must be signed in to change notification settings

rse/dotfiles

Repository files navigation

Essential Unix Dot-Files

Abstract

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 GNU Bash shell environment
  • the TMux terminal multiplexer
  • the Less file pager
  • the Vim file editor
  • the Vifm file manager
  • the Git version control system
  • the OpenSSH remote access facility

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.

Overview

The particular Unix "dot-files" are:

Installation

You 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

Local Override Configurations

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)

Hint

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.

License

Copyright © 1995-2020 Dr. Ralf S. Engelschall.
Distributed under MIT license.

About

Small Opinionated Collection of Unix Configuration Files for User Shell Environment

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published