Fix neovim symlink target: was basename(tarball), now explicit NVIM_EXTRACT_DIR
The tarball filename is nvim-linux-arm64.tar.gz but the extracted directory inside it is also named nvim-linux-arm64. However, my original code did $(basename nvim.tar.gz .tar.gz) which returns 'nvim' (strips both the directory and the suffix), creating a symlink to /opt/nvim/bin/nvim that pointed to a non-existent path. Discovered on rye after the bootstrap appeared to succeed but nvim wasn't findable. Fixed by hardcoding the extracted directory name based on the arch case: x86_64: nvim-linux64.tar.gz -> nvim-linux64 aarch64: nvim-linux-arm64.tar.gz -> nvim-linux-arm64 Same fix applied to: - run_once_20-install-user-packages.sh.tmpl (initial install) - dot_local/bin/update-neovim.sh (topgrade-time updates) Verified on rye: /usr/local/bin/nvim -> /opt/nvim-linux-arm64/bin/nvim, 'nvim --version' returns 'NVIM v0.11.4'.
This commit is contained in:
parent
a07596ebf7
commit
5ce06f98de
2 changed files with 18 additions and 6 deletions
|
|
@ -14,8 +14,14 @@ NVIM_TARGET_VERSION="v0.11.4"
|
|||
|
||||
ARCH="$(uname -m)"
|
||||
case "$ARCH" in
|
||||
x86_64) NVIM_TARBALL="nvim-linux64.tar.gz" ;;
|
||||
aarch64|arm64) NVIM_TARBALL="nvim-linux-arm64.tar.gz" ;;
|
||||
x86_64)
|
||||
NVIM_TARBALL="nvim-linux64.tar.gz"
|
||||
NVIM_EXTRACT_DIR="nvim-linux64"
|
||||
;;
|
||||
aarch64|arm64)
|
||||
NVIM_TARBALL="nvim-linux-arm64.tar.gz"
|
||||
NVIM_EXTRACT_DIR="nvim-linux-arm64"
|
||||
;;
|
||||
*)
|
||||
echo "unsupported arch: $ARCH" >&2
|
||||
exit 1
|
||||
|
|
@ -46,7 +52,7 @@ fi
|
|||
|
||||
sudo rm -rf /opt/nvim-linux* /usr/local/bin/nvim
|
||||
sudo tar -xzf "$TMP_TARBALL" -C /opt/
|
||||
sudo ln -sf "/opt/$(basename "$TMP_TARBALL" .tar.gz)/bin/nvim" /usr/local/bin/nvim
|
||||
sudo ln -sf "/opt/${NVIM_EXTRACT_DIR}/bin/nvim" /usr/local/bin/nvim
|
||||
|
||||
echo "neovim $NVIM_TARGET_VERSION installed"
|
||||
nvim --version | head -1
|
||||
|
|
@ -68,8 +68,14 @@ fi
|
|||
NVIM_TARGET_VERSION="v0.11.4"
|
||||
ARCH="$(uname -m)"
|
||||
case "$ARCH" in
|
||||
x86_64) NVIM_TARBALL="nvim-linux64.tar.gz" ;;
|
||||
aarch64|arm64) NVIM_TARBALL="nvim-linux-arm64.tar.gz" ;;
|
||||
x86_64)
|
||||
NVIM_TARBALL="nvim-linux64.tar.gz"
|
||||
NVIM_EXTRACT_DIR="nvim-linux64"
|
||||
;;
|
||||
aarch64|arm64)
|
||||
NVIM_TARBALL="nvim-linux-arm64.tar.gz"
|
||||
NVIM_EXTRACT_DIR="nvim-linux-arm64"
|
||||
;;
|
||||
*)
|
||||
die "unsupported arch for neovim tarball: $ARCH"
|
||||
;;
|
||||
|
|
@ -95,7 +101,7 @@ if [[ -n "$NVIM_TARBALL" ]]; then
|
|||
fi
|
||||
sudo rm -rf /opt/nvim-linux* /usr/local/bin/nvim
|
||||
sudo tar -xzf nvim.tar.gz -C /opt/
|
||||
sudo ln -sf "/opt/$(basename nvim.tar.gz .tar.gz)/bin/nvim" /usr/local/bin/nvim
|
||||
sudo ln -sf "/opt/${NVIM_EXTRACT_DIR}/bin/nvim" /usr/local/bin/nvim
|
||||
rm -f nvim.tar.gz
|
||||
fi
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue