my dotfiles for linux. does not include my neovim config.
this repository is a version control over my dotfiles like .bashrc. you can also find scripts i use in scripts/ that get linked to .local/bin when you run ./link_scripts.sh.
you can back up and remove any dotfiles in ~ that are also in this repo. then you can create symbolic links in ~ that point to the dotfiles in this repo. this is done using the backup_dotfiles.sh and override_dotfiles.sh scripts (see setup below).
clone this repo in home
cd ~
git clone git@github.com:mrdandelion6/.dotfiles.gitoptional: backup current dot files
chmod u+x dotfiles/backup_dotfiles.sh
.dotfiles/backup_dotfiles.shoverride current dot files with symbolic link
chmod u+x dotfiles/override_dotfiles.sh
.dotfiles/override_dotfiles.shoptional: if you want to restore everything from ~/backup_dotfiles/
mv ~/backup_dotfiles/* ~/.dotfiles/
`./override_dotfiles.sh`and if you want to ignore something from being overriden, create a file ignore.txt in the root of this repo and add paths to ignore. for example:
~/.config/wezterm/wezterm.luano deps are strictly required to use this .bashrc , unless you want to invoke custom commands.
# useful
pacman -S gvim inetutils pv # vim-gtk3 instead of gvim for apt
# cool
yay -S fastfetch
# for python mkenv utilities
pacman -S python python-pip pyenv
pip install --break-system-packages virtualenv
# for remote mounting
pacman -S sshfs fusermount
# if using arch wayland
pacman -S yay wl-clipboard
# if using ubuntu instead
sudo apt install xclipnote that you obviously don't need to get neovim but you'll have to edit ~/.bashrc to remove some echo messages when neovim isn't found.
i use the .localsettings.json found in my neovim repository for keeping track of whether i'm using colemak-dh or qwerty layout. will also change mappings for vim if using .vimrc , and for in terminal motions from set -o vi.
if you want to have local variables to store differing file paths across devices , then create and edit the file ~/.bash_vars.
here is a sample:
fall_courses="/mnt/hdd2/study/bsc/y4/fall_courses"
fall_taships="/mnt/hdd2/study/bsc/other/ta-ship/2025-2026/fall_taships"
envdir="/mnt/hdd1/.envs/arch"to see a list of some tools i use for terminal and dev , see tools.md