aboutsummaryrefslogtreecommitdiff
path: root/deploy.sh
diff options
context:
space:
mode:
authorMatt Singleton <matt@xcolour.net>2024-04-11 16:21:15 -0500
committerMatt Singleton <matt@xcolour.net>2024-04-11 16:21:15 -0500
commitf2dfde23f8157da1532a2b2e236af529fed47713 (patch)
treed5eabb0eb33d100304ee16596b2a43dfb4a68d1c /deploy.sh
parent7f67d28e18760154778f20da43772838c36734ed (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-xdeploy.sh117
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