Files
DotFiles/install.sh
T

48 lines
979 B
Bash
Executable File

parameter=$1
keep_backup=1
install() {
if [[ $parameter == "all" ]] || [[ $parameter == $1 ]]; then
echo "Installing $1 config in $2"
if [[ $keep_backup -eq 1 ]]; then
rm -rf $2_backup
mv $2 $2_backup
else
rm -rf $2
fi
cp -rf $1 $2
fi
}
if [[ $parameter == '' ]]; then
echo "No config specified, the following configs are available:"
echo " all - all of the config files"
while read name path; do
echo " $name"
done <configs
exit
fi
read -p "Do you want to back up your old config files? (y/n) " yn
case $yn in
[Nn]*)
keep_backup=0
break
;;
[Yy]*)
keep_backup=1
break
;;
*)
echo "Unknown answer, treating it as yes"
keep_backup=1
break
;;
esac
while read name path; do
eval "name=$name" # re-evaluate the string as a path
eval "path=$path" # re-evaluate the string as a path
install $name $path
done <configs