Dotfiles collection related to bash/login. Contain a lot of useful settings, aliases and functions.
Go to file
2023-03-18 22:07:18 +07:00
.bashrc.d backupcp function 2023-03-18 22:07:18 +07:00
.bash_logout first commit 2023-03-18 18:49:08 +07:00
.bash_profile first commit 2023-03-18 18:49:08 +07:00
.bashrc first commit 2023-03-18 18:49:08 +07:00
.profile first commit 2023-03-18 18:49:08 +07:00
README.md backupcp function 2023-03-18 22:07:18 +07:00

bashrc

Bash Debian Ubuntu

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
  • 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