Files
dotfiles/install.sh

89 lines
2.3 KiB
Bash
Executable File

#!/bin/sh
#
# Usage:
#
# sh install.sh
#
# Environment variables: VERBOSE, CP, LN, MKDIR, RM, DIRNAME.
#
# env VERBOSE=1 sh install.sh
#
# DO NOT EDIT THIS FILE
#
# This file is generated by rcm(7) as:
#
# rcup -B 0 -g
#
# To update it, re-run the above command.
#
: ${VERBOSE:=0}
: ${CP:=/bin/cp}
: ${LN:=/bin/ln}
: ${MKDIR:=/bin/mkdir}
: ${RM:=/bin/rm}
: ${DIRNAME:=/usr/bin/dirname}
verbose()
{
if [ "$VERBOSE" -gt 0 ]; then
echo "$@"
fi
}
handle_file_cp()
{
if [ -e "$2" ]; then
printf "%s " "overwrite $2? [yN]"
read overwrite
case "$overwrite" in
y)
$RM -rf "$2"
;;
*)
echo "skipping $2"
return
;;
esac
fi
verbose "'$1' -> '$2'"
$MKDIR -p "$($DIRNAME "$2")"
$CP -R "$1" "$2"
}
handle_file_ln()
{
if [ -e "$2" ]; then
printf "%s " "overwrite $2? [yN]"
read overwrite
case "$overwrite" in
y)
$RM -rf "$2"
;;
*)
echo "skipping $2"
return
;;
esac
fi
verbose "'$1' -> '$2'"
$MKDIR -p "$($DIRNAME "$2")"
$LN -sf "$1" "$2"
}
handle_file_ln "~/.dotfiles/bash_profile" "~/.bash_profile"
handle_file_ln "~/.dotfiles/bashrc" "~/.bashrc"
handle_file_ln "~/.dotfiles/config/alias" "~/.config/alias"
handle_file_ln "~/.dotfiles/config/antigen.zsh" "~/.config/antigen.zsh"
handle_file_ln "~/.dotfiles/config/exports" "~/.config/exports"
handle_file_ln "~/.dotfiles/config/functions" "~/.config/functions"
handle_file_ln "~/.dotfiles/config/gh/config.yml" "~/.config/gh/config.yml"
handle_file_ln "~/.dotfiles/config/git/config" "~/.config/git/config"
handle_file_ln "~/.dotfiles/config/git/gitignore" "~/.config/git/gitignore"
handle_file_ln "~/.dotfiles/config/wtf/config.yml" "~/.config/wtf/config.yml"
handle_file_ln "~/.dotfiles/git_profiles" "~/.git_profiles"
handle_file_ln "~/.dotfiles/huskyrc" "~/.huskyrc"
handle_file_ln "~/.dotfiles/local/bin/dotfiles" "~/.local/bin/dotfiles"
handle_file_ln "~/.dotfiles/local/bin/x-check-git-attributes" "~/.local/bin/x-check-git-attributes"
handle_file_ln "~/.dotfiles/local/bin/x-open-ports" "~/.local/bin/x-open-ports"
handle_file_ln "~/.dotfiles/rcrc" "~/.rcrc"
handle_file_ln "~/.dotfiles/ssh/allowed_signers" "~/.ssh/allowed_signers"
handle_file_ln "~/.dotfiles/ssh/config" "~/.ssh/config"
handle_file_ln "~/.dotfiles/vuerc" "~/.vuerc"
handle_file_ln "~/.dotfiles/zshrc" "~/.zshrc"