Dotfiles for my tiling window manager + terminal workflow.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

70 lines
1.8 KiB

#!/bin/bash
# setup_marble=true
# vars {{{ #
linux_config_dir=/home/kevin/linux-config
dot_dir=$linux_config_dir/dotfiles
config_dir=$linux_config_dir/configs
sys_config_dir=~/.config
# }}} vars #
# dotfiles {{{ #
# link files {{{ #
# Get directory variables from script.
# List of dotfiles I want to link to system.
dotfiles=(bashrc gitconfig inputrc imwheelrc vimrc xinitrc Xmodmap Xresources zshrc)
cd $dot_dir || exit
for dotfile in "${dotfiles[@]}"; do
# Remove system dotfile.
rm ~/."$dotfile"
# Link dotfile in repository to system dotfile.
ln -s "$dot_dir"/"$dotfile" ~/."$dotfile" && echo "Linked .$dotfile."
done
# }}} link files #
# setup nvim config {{{ #
orig_file="$sys_config_dir"/nvim/init.vim
# Remove system dotfile.
rm "$orig_file"
# Link dotfile in repository to system dotfile.
ln -s "$dot_dir"/nvim "$orig_file" && echo "Setup Neovim config."
# }}} setup nvim config #
# }}} dotfiles #
# configs {{{ #
cd $linux_config_dir || exit
# List of config dirs in system config dir that I want to link to.
config_dirs=(neofetch i3 i3blocks sam-i3blocks ranger)
for cur_dir in "${config_dirs[@]}"; do
# Remove system file.
rm -rf ${sys_config_dir:?}/"$cur_dir"
# Link config file in repository to system config location.
ln -s "$config_dir"/"$cur_dir" "$sys_config_dir"/"$cur_dir" && echo "Linked $cur_dir config."
done
# }}} configs #
# # marble mouse {{{ #
# if [[ "$setup_marble" = true ]]; then
# config_file_name="10-evdev.conf"
# sys_layout_file="/etc/X11/xorg.conf.d/$config_file_name"
# config_dir="$linux_config_dir/x/marble-mouse"
# # Remove system file.
# sudo rm -rf "$sys_layout_file"
# # Link config file in repository to system config location.
# sudo ln -s "$config_dir"/"$config_file_name" "$sys_layout_file" && echo "Setup Marble mouse config."
# fi
# # }}} marble mouse #