| .bashrc.d | ||
| .bash_logout | ||
| .bash_profile | ||
| .bashrc | ||
| .profile | ||
| README.md | ||
bashrc
bashrc is a collection of dotfiles dedicated to environment setup for Debian based 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 alse contains many aliases and functions of interest.
 
Features
- Include Liquid Prompt. (An intelligent and non-intrusive prompt for Bash and zsh)
 - Ready for FZF bindings.
 - Full TMUX experience, even surviving desktop user reconnexions.
 - Ready to use KeePassXC as ssh-agent and keyring.
 - Command notifications with NTFY.
 - And many more aliases and functions to discover ...
 
Issues
- function 
lf(ls alternative with filters and sorting throught fzf): some outputs are broken, I will fix it soon. 
Requirements
- debian 9+ based distro
 
Recommended
- bash 5+
 - bash_completion
 - systemd, systemd-container
 - vim
 - ncdu
 - fzf (get the latest release)
 - pipx
 - keepassxc
 - keyring (python)
 - tmux (get the latest release)
 - fzf-tmux
 - exa (get the latest release)
 - fd
 - xclip
 - MOTDfetch
 - curl
 - bat (get the latest release)
 - dunstify
 - wget2
 - emoji-fzf (python)
 - 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