38 lines
819 B
Cheetah
Executable File
38 lines
819 B
Cheetah
Executable File
#!/bin/bash
|
|
set -euo pipefail
|
|
|
|
NVIM_DIR="${HOME}/apps/neovim"
|
|
BUILD_TYPE="Debug"
|
|
BRANCH="master"
|
|
|
|
if [[ -x "${NVIM_DIR}/bin/nvim" ]]; then
|
|
echo "Neovim already installed at ${NVIM_DIR}"
|
|
exit 0
|
|
fi
|
|
|
|
echo "Installing neovim from source"
|
|
echo "Target folder: ${NVIM_DIR}"
|
|
echo "Branch: ${BRANCH}"
|
|
echo "Build type: ${BUILD_TYPE}"
|
|
|
|
{{ if eq .chezmoi.osRelease.idLike "arch" }}
|
|
sudo pacman -S --noconfirm --needed base-devel cmake ninja curl git
|
|
{{ end }}
|
|
|
|
mkdir -p "${HOME}/apps"
|
|
|
|
if [[ -d "${NVIM_DIR}/src" ]]; then
|
|
cd "${NVIM_DIR}/src"
|
|
git fetch --all --prune
|
|
git checkout "${BRANCH}"
|
|
git pull
|
|
else
|
|
git clone https://github.com/neovim/neovim.git "${NVIM_DIR}/src"
|
|
cd "${NVIM_DIR}/src"
|
|
git checkout "${BRANCH}"
|
|
fi
|
|
|
|
rm -r build/
|
|
make CMAKE_EXTRA_FLAGS="-DCMAKE_INSTALL_PREFIX=${NVIM_DIR}"
|
|
make install
|