/configs

My main dot files (vim, bash, etc.)

Primary LanguageShell

These are basic configuration files to set up on new machines.

Installation

git clone git@github.com:arturasl/configs.git ~/configs

Post installation

Scripts

sudo ln -s ~/configs/scripts/atmux /usr/bin
sudo ln -s ~/configs/scripts/dmenu_show.sh /usr/bin

vim

# basic:
mkdir -p ~/.config/nvim
ln -s ~/configs/nvim/init.lua ~/.config/nvim/init.lua
ln -s ~/configs/nvim/lua ~/.config/nvim/lua
ln -s ~/configs/nvim/localvimrc.lua ~/.config/nvim/localvimrc.lua
ln -s ~/configs/nvim/.stylua.toml ~/.config/nvim/.stylua.toml

ln -s ~/configs/vimrc ~/.vimrc
ln -s ~/configs/vim ~/.vim

bash

ln -s ~/configs/shells/bashrc ~/.bashrc

tmux

ln -s  ~/configs/tmux.conf ~/.tmux.conf
# for gnome to auto start
# bash -c ". ~/configs/shells/bashrc && st -- 'atmux'"

newsboat

bash -c 'xterm -e newsboat & pid="$!" && sleep 5 && kill "$pid"' # lazy load settings
ln -s  ~/configs/newsboat.conf ~/.newsboat/config
mkdir -p ~/.newsboat/podc/
# might need export LC_ALL='en_US.UTF-8' on mac

mutt

ln -s ~/configs/mutt/muttrc ~/.muttrc
touch ~/configs/mutt/tmp/headers
touch ~/configs/mutt/tmp/certificates

git

# diffing and merging
git config --global merge.tool vimdiff
git config --global merge.conflictstyle diff3
git config --global mergetool.prompt false
git config --global mergetool.vimdiff.trustExitCode false # ask me if I finished merging explicitly
git config --global mergetool.vimdiff.keepBackup false # remove .orig files

git config --global diff.external ~/configs/scripts/git-vim-diff.bash
git config --global pager.diff '' # do not pipe diff output to page as we are using "graphical" diff tool

# nice aliases
git config --global alias.lg "log --graph --pretty=format:'%C(cyan)%h%C(bold magenta)%d%Creset %s %C(green)(%cr) %C(bold blue) %an%Creset'"

# ignores
git config --global core.excludesfile ~/.gitignore
ln -s ~/configs/ignores ~/.gitignore

svn

# set up global ignores
tmp="$(mktemp -t tmp.XXXXXXXXX)"
awk -- "/^global-ignores/{print \"global-ignores = $(sed -e 's/\/$//g' ~/configs/ignores | sed -E -e '/^#|^$/d' | tr '\n' ' '' ')\"; next} {print}" ~/.subversion/config > "$tmp"
mv "$tmp" ~/.subversion/config

fish

bash -c '( test -d ~/.config/fish/ && ln -s ~/configs/shells/config.fish ~/.config/fish/config.fish ) || echo "could not find fish"'
chsh -s "$(which fish)"
fish -c fish_update_completions

vifm

ln -s ~/configs/filemanagers/vifm/vifmrc ~/.config/vifm/vifmrc
rm -rf ~/.config/vifm/colors
git clone https://github.com/vifm/vifm-colors ~/.config/vifm/colors

sqlite

ln -s ~/configs/sqliterc ~/.sqliterc

dwm

sudo ln -s ~/configs/dwm/startdwm.bash /usr/bin/
sudo cp ~/configs/dwm/dwm.desktop /usr/share/xsessions/
sudo chown root:root /usr/share/xsessions/dwm.desktop