This repository includes the following custom configurations:
- Bash configuration customization (prompt, history, colors)
.bash_completion
,.bashrc
and.bash_tools
- Git aliases
- Kubernetes aliases
- Utility aliases and functions
- Ansible, Glow, htop, Starship, tmux, vim, Visual Studio Code and WSL configuration customization
ansible.cfg
with custom localizations and usersglow.yml
with dark mode and better readability for markdown fileshtoprc
with theme and better visibilitystarship_full.toml
andstarship_simple.toml
for prompttmux.conf
with theme and better visibilityvimrc
with theme, linting, shortcuts and toolswsl.json
with themes and behaviour
Files and Links
Source file | Destination |
---|---|
vimrc |
~/.vimrc |
htoprc |
~/.config/htop/htoprc |
tmux.conf |
~/.config/tmux/tmux.conf |
ansible.cfg |
~/.config/ansible/ansible.cfg |
glow.yml |
~/.config/glow/glow.yml |
starship_full.toml /starship_simple.toml |
~/.config/starship.toml |
The installation script can run interactively and non-interactively
The following are required for this configuration to work:
- Debian-based or RHEL-based Linux system, including WSL
- Sudo access configured for the user
git
installed
To grant sudo access without a password prompt, type visudo
and add the following line at the end of the file:
<user> ALL=(ALL) NOPASSWD: ALL
Replace <user>
with the user you want to configure.
For Debian-based systems:
sudo apt install -y git
For RHEL-based systems:
sudo dnf install -y git
- This script will install prequisites packages and tool packages
- Install man pages for Debian-based or RHEL-based systems
- Install
spotdl
,yt-dlp
andtldr
via Python package manager and add them to$PATH
- Clone this repository to
$HOME/dotfiles
- Clone trueline repository to
$HOME/.config/trueline
- Backup current dotfiles and link from the local repository to the
/tmp/dotfiles_<timestamp>
directory - Configure git name, mail and branch
- Install
vim-plug
and vim plugins - Install
tmux
plugins - Update dotfiles from remote repository
-i
: Install packages, tools, and dotfiles.-u
: Update dotfiles from the remote repository.
-n
: Git username.-m
: Git email.-b
: Git branch (must bemain
ormaster
).
Clone this repository or use the following command:
wget https://raw.githubusercontent.com/gsousa7/dotfiles/main/install.sh -O /tmp/install.sh
Grant the correct permission to the file, example chmod +x /tmp/install.sh
Run the script without arguments to be prompted for actions:
/tmp/install.sh
Run the script with arguments to skip prompts:
- Install packages, tools, and dotfiles with Git configuration provided as parameters:
/tmp/install.sh -i -n <user> -m <[email protected]> -b <branch>
- Update dotfiles from the remote repository (no need to provide parameters):
/tmp/install.sh -u
-
Permission Issues: Grant sudo permissions to the user
-
Font Issues: If fonts are not applied, rebuild the font cache:
sudo fc-cache -fv
- To view available aliases and functions, run:
or
lscom help
lscom
- To see
vim
info, run:vimfo
- To see
tmux
info, run:tmuxfo
- To see Visual Studio Code info, run:
vscfo
- Usage:
glow README.md glow . glow
- Switch to full prompt:
pskinf
- Switch to simple prompt:
pskins
- Edit the prompt config:
vim ~/.config/starship.toml
An empty inventory file is created at ~/.config/ansible/inventory
.
Edit this file to add your hosts.
spotdl
— Download Spotify tracksyt-dlp
— Download YouTube videostldr
— Simplified man pagespastel
— Terminal color tool
These are installed via pipx and available in your $PATH
.
.bashrc
file will only be modified to load.bash_tools
and starship, making it easier to manage.- If no SSH key is found, the script will prompt you to create one and add it to your GitHub account
ssh-keygen
- If running in WSL, you may need to manually install the fonts from
/usr/local/share/fonts
and in Windows. - Inspired by bahamas10's dotfiles and ChrisTitusTech dotfiles.