From 64ed28b53ab26ac718e57ebc20b193ec38e5df01 Mon Sep 17 00:00:00 2001 From: blueValkyrie Date: Sat, 8 Nov 2025 20:11:07 +0200 Subject: [PATCH] Initial commit --- updateAll.sh | 71 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100755 updateAll.sh diff --git a/updateAll.sh b/updateAll.sh new file mode 100755 index 0000000..28e60f8 --- /dev/null +++ b/updateAll.sh @@ -0,0 +1,71 @@ +#!/bin/bash +set -e + +# update APT apps +sudo apt update && sudo apt upgrade -y + +# udpate flatpak apps +flatpak update -y + +#!/bin/bash +set -e + +# Update Neovim +echo "Updating Neovim..." +cd /tmp +curl -sLO https://github.com/neovim/neovim/releases/latest/download/nvim-linux-x86_64.tar.gz +sudo rm -rf /opt/nvim-linux-x86_64 +sudo tar -C /opt -xzf nvim-linux-x86_64.tar.gz + +# Update fzf +echo "Updating fzf..." +if [ -d "$HOME/.fzf" ]; then + cd ~/.fzf + git pull --quiet + ./install --bin --no-update-rc +else + git clone --depth 1 https://github.com/junegunn/fzf.git ~/.fzf + ~/.fzf/install --bin --no-update-rc +fi + +# Update Rust via rustup +if command -v rustup >/dev/null 2>&1; then + echo "Updating Rust (rustup)..." + rustup self update + rustup update +else + echo "Rustup not found, skipping Rust update." +fi + +# Update Go +if command -v go >/dev/null 2>&1 && [ -d "/usr/local/go" ]; then + echo "Updating Go..." + GO_OS=linux + GO_ARCH=amd64 + + # Fetch latest version + LATEST=$(curl -fsS https://go.dev/VERSION?m=text | head -n1 || true) + + if [[ "$LATEST" =~ ^go[0-9] ]]; then + TMP_TAR=/tmp/go.tar.gz + if curl -fsSL "https://go.dev/dl/${LATEST}.${GO_OS}-${GO_ARCH}.tar.gz" -o "$TMP_TAR"; then + sudo rm -rf /usr/local/go + sudo tar -C /usr/local -xzf "$TMP_TAR" + echo "Go updated to: $(/usr/local/go/bin/go version)" + else + echo " Failed to download ${LATEST}, skipping." + fi + else + echo "Could not determine latest Go version, skipping." + fi +else + echo "Go not managed via /usr/local/go, skipping Go update." +fi + +# Display versions +echo +echo "All updates complete!" +echo -n "Neovim: "; nvim --version | head -1 +echo -n "fzf: "; fzf --version +echo -n "rust: "; rustc --version || true +echo -n "golang: "; go version || true