This repo holds configuration files for tooling I use regularly while working on MacOS
Neovim and some other parts of the setup are also used on Windows.
git --versiongit clone git@github.com:radlinskii/dotfiles.git./scripts/install.shTo only run parts of install.sh responsible for specific configurations pass flags to it:
- for linking config files run it with flag
-lor--link. - to only configure
MacOSspecific settings run it with flag-mor--mac. - to only install
Homebrewpackages run it with flag-bor--brew.
Example usage: ./scripts/install.sh -l -b
git config --global user.name "Your Name" # your name on commits
git config --global user.email "Your Email" # your email on commitsAdd the following to ~/.gitconfig:
[diff]
tool = nvimdiff
[difftool]
prompt = false
[difftool "nvimdiff"]
cmd = "nvim -d \"$LOCAL\" \"$REMOTE\""
[merge]
tool = nvimdiff
[mergetool]
prompt = true
[mergetool "nvimdiff"]
cmd = "nvim -d \"$LOCAL\" \"$REMOTE\" \"$MERGED\" -c 'wincmd w' -c 'wincmd J'"This file is sourced by .zshrc and should contain secrets (API keys, tokens) and machine-specific configuration that should not be shared publicly.
nvim ~/.local_zshrc.shTo install necessary tooling run ./scripts/install.sh -b to install all of the tools listed in the Brewfile.
Other environments to setup:
node & npm, go, rust, and python.
7. lazygit setup within nvim using lazygit.nvim might require neovim-remote
Setting up nvr might require assigning environment variable NVIM_LISTEN_ADDRESS.
Value could be localhost:6789 as it is the default value that nvr tries to connect to.
The linux-setup.sh script bootstraps a new Debian/Ubuntu machine (LXC container, VM, or bare metal) with the full setup (zsh, ohmyzsh, neovim, fzf, lazygit, tmux, node/nvm, tree-sitter).
From a Proxmox host, push the script into a running container and execute it:
CT_ID=123
pct push $CT_ID ./linux-setup.sh /root/setup.sh
pct exec $CT_ID -- bash /root/setup.sh
pct pushcopies files from the Proxmox host directly into the container's filesystem through the Proxmox API.pct execruns commands inside the container.
MIT - see LICENSE file