This project has all my Linux resources (tools, scripts, configuration files…) to personalize my environment, which includes:
bashrc.d
: BASH configuration files.bin
: Binary tools and scripts.rc
: Linux console configuration files.sublime-text
: Sublime Text configuration and customization files.
Project main repository is at: https://github.com/diegolagoglez/linux-resources.git
Make a link into your home directory to the binary tools directory. Example:
user@host:~:$ pwd
/home/user
user@host:~:$ ln -s ~/projects/linux-resources/bin
Insert, if needed, your home bin path into PATH environment variable:
export PATH=$PATH:~/bin
Copy files and symlinks from ~/projects/linux-resources/bashrc.d
to any directory you want (I prefer put them into ~/.bashrc.d/
) or link that directory into home with:
user@host:~:$ ln -s ~/projects/linux-resources/bashrc.d .bashrc.d
Then, add the following lines into ~/.bashrc
(sourcing only sorted symbolic links to ensure precedence):
if [ -d ~/.bashrc.d/ ]; then
for file in $(find ~/.bashrc.d/ -type l | sort); do
source $file
done
fi
There are other files in this repository to configure some commands, like gitconfig
, inputrc
… all of them under rc
directory.
This files should be linked at /home/user
with their corresponding names, e.g.:
user@host:~:$ ln -s projects/linux-resources/rc/gitconfig .gitconfig
user@host:~:$ ln -s projects/linux-resources/rc/inputrc .inputrc
Also, there are more files to configure other appliactions like Sublime Text. This other files should be linked in their corresponding places.
Files in bashrc.d
directory:
alias
: Custom aliases (ll, la, df...).bash-config
: BASH shell configuration (history, history size...).keybindings
: Some BASH keybindings.prompt
: Custom prompt (including jobs, user, host, screen/tmux, git, return status...);utils
: Utility functions (currently trim, trim-left and trim-right).
There are symlinks linking to these files to ensure precedence:
00 -> bash-config
and05 -> keybindings
(0x for BASH configuration).10 -> utils
(1x for BASH utilities).20 -> alias
(2x for user configuration).30 -> prompt
(3x for more user configuration).90 -> local
(9x for some local configuration; not included into this repository).
Files in bin
directory are tools for common use. See the directory.
Files in rc
customize several commands:
gitconfig
: Configures Git.inputrc
: Configures BASH completion.screenrc
: Configures GNU/Screen.vimrc
: Configures Vim editor.
Files in sublime-text
directory are files to configure Sublime Text editor.
You can use and/or contribute to this configuration but keep in mind the KISS principle.