#!/usr/bin/env bash ## The MIT License (MIT) ## ## Copyright © 2026 Scott E. Graves ## ## Permission is hereby granted, free of charge, to any person obtaining a copy of this software ## and associated documentation files (the “Software”), to deal in the Software without restriction, ## including without limitation the rights to use, copy, modify, merge, publish, distribute, ## sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is ## furnished to do so, subject to the following conditions: ## ## The above copyright notice and this permission notice shall be included in all copies or ## substantial portions of the Software. ## ## THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING ## BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ## NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, ## DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, ## OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ## # shellcheck source=../../.desktop/scripts/functions.sh . "${HOME}/.desktop/scripts/functions.sh" CUR_DIR=$(pwd) HOME_FILE="${CUR_DIR}/home.tar.gz" NEOVIM_FILE="${CUR_DIR}/neovim.tar.gz" TAR_EXCLUDES=( --exclude=.android --exclude=.bash* --exclude=.cache --exclude=.config/go --exclude=.config/nvim/dap --exclude=.config/nvim/pkg --exclude=.dart-tool --exclude=.flutter --exclude=.npm --exclude=.profile --exclude=.pub-cache --exclude=flutter --exclude=go/pkg --exclude=go/src ) pushd "${HOME}" 1>/dev/null 2>&1 || error_exit "failed to pushd: ${HOME}" rm -f "${HOME_FILE}" tar czvf "${HOME_FILE}" "${TAR_EXCLUDES[@]}" . popd 1>/dev/null 2>&1 || error_exit "failed to popd: ${HOME}" rm -f "${NEOVIM_FILE}" tar czvf "${NEOVIM_FILE}" \ "$(npm root -g)/neovim/" \ "$(npm prefix -g)/bin/neovim-node-host"