.bashrc.d | ||
.bash_logout | ||
.bash_profile | ||
.bashrc | ||
.profile | ||
README.md |
bashrc
bashrc is a collection of dotfiles dedicated to environment setup for Debian/Ubuntu (server/desktop) systems.
I use these files on my personnal desktops and most semi-professional projects.
The most powerful features are related to my own setup for tmux, ssh, nfty or keepassxc.
It contain also many aliases and functions of interest.
Table of contents
Features
- Include Liquid Prompt (An intelligent and non-intrusive prompt for Bash and zsh)
- FZF bindings ready
- Full TMUX experience
- Use KeePassXC as ssh-agent and keyring
- Execution notifications with NTFY
- And many more aliases and functions to discover ...
Requirements
- debian 9+ based distro
Recommended
- bash 5+
- bash_completion
- systemd, systemd-container
- vim
- ncdu
- fzf
- pipx
- keepassxc
- keyring
- tmux
- fzf-tmux
- exa
- fd
- xclip
- MOTDFetch
- curl
- bat
- dunstify
- wget
- emoji-fzf
- ssh
- ...
Installation
Current user
# backup current files
mkdir -p $HOME/.backups
cp -r --backup=t {"$HOME"/.bashrc,"$HOME"/.bashrc.d,"$HOME"/.bash_logout,"$HOME"/.bash_profile,"$HOME"/.profile} $HOME/.backups/
# download new files from repository
wget -c -nv https://git.tkapias.net/tkapias/bashrc/archive/master.tar.gz -O - \
| tar -xzv --strip-components=1 -C $HOME/ \
bashrc/.bash_logout \
bashrc/.bash_profile \
bashrc/.bashrc \
bashrc/.bashrc.d/ \
bashrc/.profile
chmod 700 ~/.bashrc.d
chmod 600 ~/.bashrc ~/.bashrc.d/* ~/.bash_logout ~/.bash_profile ~/.profile
# check if you need to customize the secrets file
cat ~/.bashrc.d/02-secrets.bashrc
SKEL
If you want to get the same base for every new user on the system.
- Execute as root:
# backup current files
mkdir -p /root/.backups/skel
cp -r --backup=t /etc/skel $HOME/.backups/
# download new files from repository
wget -c -nv https://git.tkapias.net/tkapias/bashrc/archive/master.tar.gz -O - \
| tar -xzv --strip-components=1 -C /etc/skel/ \
bashrc/.bash_logout \
bashrc/.bash_profile \
bashrc/.bashrc \
bashrc/.bashrc.d/ \
bashrc/.profile
chmod 700 /etc/skel/.bashrc.d
chmod 600 /etc/skel/.bashrc /etc/skel/.bashrc.d/* /etc/skel/.bash_logout /etc/skel/.bash_profile /etc/skel/.profile
# check if you need to customize the secrets file
cat /etc/skel/.bashrc.d/02-secrets.bashrc