diff options
author | Matt Singleton <matt@xcolour.net> | 2024-04-11 16:21:15 -0500 |
---|---|---|
committer | Matt Singleton <matt@xcolour.net> | 2024-04-11 16:21:15 -0500 |
commit | f2dfde23f8157da1532a2b2e236af529fed47713 (patch) | |
tree | d5eabb0eb33d100304ee16596b2a43dfb4a68d1c /deploy.sh | |
parent | 7f67d28e18760154778f20da43772838c36734ed (diff) |
replace janky deploy script with stow and make
re-orgs all the console oriented dotfiles to be stowable
makefile to deploy everything
move from vimplug to native vim packages
cleanup script for blowing away old symlinks
Diffstat (limited to 'deploy.sh')
-rwxr-xr-x | deploy.sh | 117 |
1 files changed, 0 insertions, 117 deletions
diff --git a/deploy.sh b/deploy.sh deleted file mode 100755 index f4fe57a..0000000 --- a/deploy.sh +++ /dev/null @@ -1,117 +0,0 @@ -#!/bin/bash - -set -eo pipefail - -if command -v unzip > /dev/null; then - UNZIPCMD="unzip" -fi -if command -v vim > /dev/null; then - VIMCMD="vim" -fi -if command -v git > /dev/null; then - GITCMD="git" -fi -if command -v wget > /dev/null; then - DLCMD="wget -O" -elif command -v curl > /dev/null; then - DLCMD="curl -Lo" -fi -if [ -z "$UNZIPCMD" ] || [ -z "$VIMCMD" ] || [ -z "$DLCMD" ] || [ -z "$GITCMD" ]; then - echo "requires 'unzip', 'vim', 'git', and either 'wget' or 'curl'" - exit 1 -fi - -set -u - -if [ ! "$(pwd)" = "$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )" ]; then - echo "expects to be run from the root of the dotfiles directory" - exit 1 -fi - -uname=$(uname | tr '[:upper:]' '[:lower:]') - -# XDG layout -xcache="${XDG_CACHE_HOME:-${HOME}/.cache}" -xdata="${XDG_DATA_HOME:-${HOME}/.local/share}" -xconfig="${XDG_CONFIG_HOME:-${HOME}/.config}" - -userbin="$HOME/.local/bin" -systemd="$xdata/systemd/user" - -mkdir -p "$xcache" "$xdata" "$xconfig" "$userbin" -mkdir -p "${xcache}/zsh" -mkdir -p "${xdata}/zsh" -if [ "linux" = "$uname" ]; then - mkdir -p "$systemd" -fi - -function link { - local src="$1" - local dest="$2" - if [ -e "$dest" ] && [ ! -L "$dest" ]; then - mkdir -p dotfiles-backup - mv "$dest" dotfiles-backup/. - fi - ln -snf "$src" "$dest" -} - -function link_contents { - local src="$1" - local dest="$2" - local prefix="${3:-}" - if [ -e "$src" ]; then - for f in "$src"/* - do - link "$(pwd)/$f" "$dest/$prefix$(basename "$f")" - done - fi -} - -function deploy { - local src="$1" - local dest="$2" - link_contents "$src/all" "$dest" - link_contents "$src/$uname" "$dest" -} - -# deploy to home -link_contents home "$HOME" '.' - -# deploy to XDG dirs -deploy config "$xconfig" - -# deploy user executables -deploy bin "$userbin" - -# deploy systemd user units -deploy systemd "$systemd" - -autoload="$HOME/.vim/autoload" -mkdir -p "$autoload" -# install vim-plug -if [ ! -e "$HOME/.vim/autoload/plug.vim" ]; then - $DLCMD "$HOME/.vim/autoload/plug.vim" \ - https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim - $VIMCMD +PlugInstall +qall -fi - -# deploy custom scripts to vim autoload -link_contents vim "$autoload" - -# create local files -if [ ! -e "$HOME/.config/zsh/00-local.zsh" ]; then - cp local/local.zsh "$HOME/.config/zsh/00-local.zsh" -fi -if [ ! -e "$HOME/.config/git/config-local" ]; then - cp local/gitconfig-local "$HOME/.config/git/config-local" -fi -if [ "$uname" = "linux" ]; then - dconfig="$xconfig/duplicity" - mkdir -p "$dconfig" - if [ ! -e "$dconfig/config" ]; then - cp local/duplicity-config "$dconfig/config" - fi - if [ ! -e "$dconfig/excludes" ]; then - cp local/duplicity-excludes "$dconfig/excludes" - fi -fi |