wstunnel packages
Signed APT and RPM packages built from upstream stable release tags.
Unofficial repositories. Maintained independently by misakazip. These packages are not provided or maintained by upstream wstunnel.
Latest packaged release: v11.0.0 · 10 available versions
Supported platforms
| Operating system | Architectures | Configuration |
|---|---|---|
| Ubuntu 24.04 (noble) | amd64 / arm64 | APT source |
| Ubuntu 26.04 (resolute) | amd64 / arm64 | APT source |
| Enterprise Linux 9 | x86_64 / aarch64 | DNF configuration |
| Enterprise Linux 10 | x86_64 / aarch64 | DNF configuration |
Stable upstream tags are checked daily. The latest 10 versions are retained when available.
Verify the signing key
Full primary key fingerprint:
EACBF90D2BEE170B9F0281E96E977B97763B50B1
The commands below display the downloaded key and compare its full primary fingerprint with this value. Registration stops on a mismatch or if the file contains multiple primary keys. For independent confirmation, obtain the fingerprint from the maintainer through a trusted channel; do not take the expected fingerprint from the downloaded key itself.
Download APT public key · Download RPM public key
Run each complete block in Bash. Keep the parentheses so failures stop the procedure without closing your terminal.
Ubuntu 24.04 / 26.04
(
set -euo pipefail
sudo apt update
sudo apt install -y ca-certificates curl gnupg
repository_tmp=$(mktemp -d)
trap 'rm -rf -- "$repository_tmp"' EXIT
curl -fsSLo "$repository_tmp/wstunnel.gpg" \
https://wstunnel.repository.miru10.net/wstunnel.gpg
gpg --show-keys --with-fingerprint "$repository_tmp/wstunnel.gpg"
expected_fingerprint='EACBF90D2BEE170B9F0281E96E977B97763B50B1'
actual_fingerprint=$(gpg --batch --show-keys --with-colons "$repository_tmp/wstunnel.gpg" |
awk -F: '$1 == "pub" { primary = 1; next }
primary && $1 == "fpr" { print $10; primary = 0 }')
expected_fingerprint=$(printf '%s' "$expected_fingerprint" | tr -d '[:space:]' | tr '[:lower:]' '[:upper:]')
if [[ ! $expected_fingerprint =~ ^([0-9A-F]{40}|[0-9A-F]{64})$ ||
"$actual_fingerprint" != "$expected_fingerprint" ]]; then
printf 'Signing key fingerprint mismatch; repository registration aborted.\n' >&2
exit 1
fi
printf 'Signing key fingerprint verified: %s\n' "$actual_fingerprint"
sudo install -D -m 644 "$repository_tmp/wstunnel.gpg" /usr/share/keyrings/wstunnel.gpg
source /etc/os-release
curl -fsSLo "$repository_tmp/wstunnel.sources" \
"https://wstunnel.repository.miru10.net/ubuntu/$VERSION_CODENAME/wstunnel.sources"
sudo install -D -m 644 "$repository_tmp/wstunnel.sources" /etc/apt/sources.list.d/wstunnel.sources
sudo apt update
sudo apt install wstunnel
)
APT checks signed repository metadata and package checksums using the key specified by Signed-By.
Update with sudo apt update && sudo apt upgrade.
List versions with apt-cache madison wstunnel. To select a version:
sudo apt install --allow-downgrades wstunnel=<version>-1.
Enterprise Linux 9 / 10
For AlmaLinux, Rocky Linux, RHEL, and compatible distributions.
(
set -euo pipefail
sudo dnf install -y ca-certificates curl gnupg2
repository_tmp=$(mktemp -d)
trap 'rm -rf -- "$repository_tmp"' EXIT
curl -fsSLo "$repository_tmp/RPM-GPG-KEY-wstunnel" \
https://wstunnel.repository.miru10.net/RPM-GPG-KEY-wstunnel
gpg --show-keys --with-fingerprint "$repository_tmp/RPM-GPG-KEY-wstunnel"
expected_fingerprint='EACBF90D2BEE170B9F0281E96E977B97763B50B1'
actual_fingerprint=$(gpg --batch --show-keys --with-colons "$repository_tmp/RPM-GPG-KEY-wstunnel" |
awk -F: '$1 == "pub" { primary = 1; next }
primary && $1 == "fpr" { print $10; primary = 0 }')
expected_fingerprint=$(printf '%s' "$expected_fingerprint" | tr -d '[:space:]' | tr '[:lower:]' '[:upper:]')
if [[ ! $expected_fingerprint =~ ^([0-9A-F]{40}|[0-9A-F]{64})$ ||
"$actual_fingerprint" != "$expected_fingerprint" ]]; then
printf 'Signing key fingerprint mismatch; repository registration aborted.\n' >&2
exit 1
fi
printf 'Signing key fingerprint verified: %s\n' "$actual_fingerprint"
sudo install -D -m 644 "$repository_tmp/RPM-GPG-KEY-wstunnel" /etc/pki/rpm-gpg/RPM-GPG-KEY-wstunnel
sudo rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-wstunnel
source /etc/os-release
el=${VERSION_ID%%.*}
curl -fsSLo "$repository_tmp/wstunnel.repo" \
"https://wstunnel.repository.miru10.net/rpm/el$el/wstunnel.repo"
sudo install -D -m 644 "$repository_tmp/wstunnel.repo" /etc/yum.repos.d/wstunnel.repo
sudo dnf --disablerepo='*' --enablerepo=wstunnel makecache --refresh
sudo dnf install wstunnel
)
The configuration enables repo_gpgcheck=1 and gpgcheck=1 for metadata and package signatures.
If DNF asks to import a metadata signing key, check its full fingerprint before accepting.
Update with sudo dnf upgrade wstunnel.
List versions with dnf list --showduplicates wstunnel.