My dotfiles are just my windows minimal configuration for some tools I use to make my terminal experience awesome. It contains my ideavimrc as well as I am mainly a Java developer. If you want to use them or just pick few things in it, feal free to do so, but at your own risk 😏. This run on native windows CMD btw.
If you use a linux distro I use ubuntu as well with fish instead of clink : dotfiles-ubuntu
- clink
- wezterm
- neovim
- starship
- gitui
- ideavimrc
What works best for me is ususally installing with winget when i can then cargo with the "cargo install". However, you can use any package manager you like.
Note I personally use environment variables to setup my stuff on different systems and i often keep the same ordering of folders. You can follow along if you like or do something completly different but you will have to search for every path in every lua file to be sure everything is at the right place on disk
set DEV=C:\dev
set HOME=C:\Users\<username>
set DOTFILES=C:\dev\.dotfiles
- clone it under %DOTFILES%
git clone --recurse-submodules <url> %DOTFILES%
- MSYS2 : msys2 website
- Install msys2 package by opening msys2 console :
pacman -S mingw-w64-x86_64-{gcc,cmake,make,ninja,diffutils}
- Add both to Path environment variable during installation (I personally always let them to have access to native unix like command and a c compiler).
set PATH=c:\msys64\mingw64\bin;c:\msys64\usr\bin;%PATH%
- Install strawberry pearl : install pearl
- Rust : install rust
- Wezterm : download and build
- Wezterm : download and install
- Clink portable : download
- Put it under %DEV%/terminal/clink the exe should be accessible like so %DEV%/terminal/clink/clink_x64.exe
- Remove the prefix on default_settings and default_inputrc as written here
- Zoxide : install via winget
- Add zoxide.exe to Path
- Starship : download via winget
- Add starship.exe to Path
- Ripgrep : install or build from source
- Add rg.exe to Path
- Fzf : install
- Add fzf.exe to Path
- Bat : install
- Add bat.exe to Path
- Eza : install
- Add eza.exe to Path
- Neovim : download and build it from source
- Add nvim.exe to Path
- LSP in neovim will require you to have each langage toolchain to be setup but you might not require them all. The list can be found in .config/nvim/after/plugin/mason_lsp.lua comment some all or none of them at your convinience.
- Gitui : download or build from source
- Add gitui.exe to Path
Note I wanted to use stow to try it but this require Admin rights and you might not always be able to have those rights on every machine you work with. So you could, maybe, use instead, a copy script that require a command to commit your config files or you could use a watcher to auto update when you modify those file
- Install stow on MSYS2
pacman -S stow
- Modify your environment to have MSYS=winsymlinks:nativestrict
- Open MSYS prompt as administrator, go to this project directory ($DEV/.dotfiles) and run
Note If you can't have administrator rights you could use the developer settings for windows instead that will allow you to make windows symlink (shortcut) without admin rights.
stow . -t $HOME
./install-scripts/deploy-starship.sh
./install-scripts/deploy-nvim.sh
./install-scripts/deploy-gitui.sh
./install-scripts/deploy-bat.sh
- If you use IntelliJ you can additionaly use my ideavimrc
./install-scripts/deploy-ideavimrc.sh
Get a nice and cold bear. Sit, relax, open wezterm and enjoy !
A really nice and minimalist version cross-platform version manager.
- Topgrade : install
./install-scripts/deploy-topgrade.sh
Note I use custom scripts to build projects i got from github and build manually from source. Check them out before using topgrade.
Alternative to find and works on every system.
- Fd : install
Note no config installation for fd