This repository includes the following custom configurations:
- Bash configuration customization (prompt, history, colors)
.bash_completion,.bashrcand.bash_tools
- Git aliases
- Kubernetes aliases
- Utility aliases and functions
- Ansible, Glow, htop, Starship, tmux, vim, Visual Studio Code and WSL configuration customization
ansible.cfgwith custom localizations and usersglow.ymlwith dark mode and better readability for markdown fileshtoprcwith theme and better visibilitystarship_full.tomlandstarship_simple.tomlfor prompttmux.confwith theme and better visibilityvimrcwith theme, linting, shortcuts and toolswsl.jsonwith 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
gitandcurlinstalled
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: ALLReplace <user> with the user you want to configure.
For Debian-based systems:
sudo apt install -y git curlFor RHEL-based systems:
sudo dnf install -y git curl- This script will install prequisites packages and tool packages
- Install man pages for Debian-based or RHEL-based systems
- Install
spotdl,yt-dlpandtldrvia 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-plugand vim plugins - Install
tmuxplugins - 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 bemainormaster).
Clone this repository or use the following command:
wget https://raw.githubusercontent.com/gsousa7/dotfiles/main/install.sh -O /tmp/install.shGrant the correct permission to the file, example chmod +x /tmp/install.sh
Run the script without arguments to be prompted for actions:
/tmp/install.shRun 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 helplscom
- To see
viminfo, run:vimfo
- To see
tmuxinfo, 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.
.bashrcfile will only be modified to load.bash_toolsand 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/fontsand in Windows. - Inspired by bahamas10's dotfiles and ChrisTitusTech dotfiles.