Añadido script de actualización de Wireguard
This commit is contained in:
@@ -0,0 +1,53 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
# Updates wireguard-tools from upstream git.zx2c4.com on Ubuntu systems.
|
||||
|
||||
REPO_URL="https://git.zx2c4.com/wireguard-tools"
|
||||
BUILD_DEPS=(git make gcc pkg-config libmnl-dev libelf-dev)
|
||||
|
||||
require_cmd() {
|
||||
if ! command -v "$1" >/dev/null 2>&1; then
|
||||
echo "Error: required command '$1' not found." >&2
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
ensure_deps() {
|
||||
local missing=()
|
||||
for dep in "${BUILD_DEPS[@]}"; do
|
||||
if ! dpkg -l "$dep" >/dev/null 2>&1; then
|
||||
missing+=("$dep")
|
||||
fi
|
||||
done
|
||||
|
||||
if ((${#missing[@]})); then
|
||||
echo "Installing missing build dependencies: ${missing[*]}"
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y "${missing[@]}"
|
||||
fi
|
||||
}
|
||||
|
||||
main() {
|
||||
require_cmd sudo
|
||||
require_cmd git
|
||||
ensure_deps
|
||||
|
||||
workdir=$(mktemp -d /tmp/wireguard-tools-update-XXXXXX)
|
||||
cleanup() {
|
||||
[[ -d "$workdir" ]] && rm -rf "$workdir"
|
||||
}
|
||||
trap cleanup EXIT
|
||||
|
||||
git -C "$workdir" clone --depth 1 "$REPO_URL"
|
||||
repo_dir="$workdir/wireguard-tools"
|
||||
cd "$repo_dir/src"
|
||||
|
||||
make
|
||||
sudo make install
|
||||
|
||||
echo "Installed version:"
|
||||
wg --version
|
||||
}
|
||||
|
||||
main "$@"
|
||||
Reference in New Issue
Block a user