This repo is for tracking my dotfiles. It currently contains the following:
- Ansible Scripts (for quickly installing and configuring software on a new computer)
- Bash/Zsh Config Scripts
- Git Configs
- i3 configs
- Tmux Config
- Vim/Nvim Config
Config files are managed through GNU Stow.
Dockerfile and Makefile are included so I can test this setup easily.
- Machine has
dockerinstalled - Machine has
makeinstalled
- Primary user account is named
benjamin
- Install tmux plugins using
Signal+Shift+I. - Run the following mise commands to install the latest versions of my primary programming languages:
a.
mise install python@latestb.mise install node@latestc.mise install go@latest - Run
sudo npm install -g cspell
- build the docker container by running
docker build . - get the container ID by running
docker images - run the container using
docker run -i -v ${PWD}:/home/ubuntu/dot_files -t <CONTAINER_ID> /bin/bash - navigate to /home/ubuntu/dot_files in the container and execute
ansible-playbook desktop_config.yml
I have made this possible in the following ways:
- for Z-Shell:
- put config in
~/local.zsh
- put config in
- for Git:
- if on a work machine, put config in
~/work/.gitconfig - if on a personal machine, set up name and email in
~/.identityconfig
- if on a work machine, put config in
- for Neovim:
- put local plugin config in
nvim/.config/nvim/lua/plugins/local.lua
- put local plugin config in
- replace pyright with basedpyright
- explore scripting postrequisites
- replace none-ls with
conform.nvim+nvim-lint - make ansible scripts idempotent
- setup debugging
- Automate creation of
~/.identityconfigwith git name + email - Pull dependencies from Snap instead of APT
- Refactor custom nvim commands to use Lua instead of Vimscript
- automate install of docker-compose
- Rename ubuntu script
- Set up ranger config
- look into nvim plugins: