#!/bin/bash main() { local homedir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)" if [[ -z "${homedir}" ]]; then return 1; fi cd "${homedir}" # The files make_links.sh and README.md are not part of the 'dotfiles', but assistands # TODO(sjaffe): Make it so a list can be embedded in this instead of enumeration local files=( $( find . -maxdepth 1 -type f ! \( -name 'make_links.sh' -o -name 'README.md' -o -name '.*' \) | sed 's/.\///' ) ) for f in ${files[@]}; do if [[ -L ~/.${f} ]]; then continue; fi if [[ -f ~/.${f} ]]; then echo Backup: ~/.${f} "==>" ~/${f}.old mv ~/.${f} ~/${f}.old fi echo ~/.${f} "-->" ${homedir}/${f} ln -s ${homedir}/${f} ~/.${f} done } main