Regnis VPN – WireGuard client, fork of Mullvad VPN app (GPL-3.0) https://regnis.app
  • Rust 42.7%
  • Kotlin 30.3%
  • TypeScript 20%
  • Shell 3.2%
  • C++ 1.5%
  • Other 2.1%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-11-11 10:52:30 +01:00
.cargo Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
android Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
audits Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
building Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
ci Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
desktop Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
dist-assets Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
docs Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
installer-downloader Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
mullvad-api Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
mullvad-cli Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
mullvad-daemon Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
mullvad-daemon-relay-selector Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
mullvad-encrypted-dns-proxy Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
mullvad-exclude Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
mullvad-fs Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
mullvad-ios Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
mullvad-jni Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
mullvad-leak-checker Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
mullvad-logging Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
mullvad-management-interface Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
mullvad-masque-proxy Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
mullvad-nsis Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
mullvad-paths Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
mullvad-problem-report Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
mullvad-relay-selector Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
mullvad-release-android Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
mullvad-setup Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
mullvad-tls-client Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
mullvad-types Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
mullvad-update Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
mullvad-version Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
nix Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
regnis Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
scripts Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
server Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
talpid-cgroup Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
talpid-core Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
talpid-dbus Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
talpid-dns Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
talpid-error Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
talpid-future Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
talpid-logging Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
talpid-macos Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
talpid-net Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
talpid-netstack Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
talpid-platform-metadata Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
talpid-routing Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
talpid-time Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
talpid-tunnel Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
talpid-tunnel-config-client Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
talpid-types Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
talpid-windows Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
talpid-wireguard Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
test Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
tunnel-obfuscation Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
windows Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
windows-installer Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
.clang-format Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
.dockerignore Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
.editorconfig Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
.envrc Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
.gitattributes Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
.gitignore Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
.gitleaks.toml Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
.gitmodules Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
.yamllint Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
build-windows-modules.sh Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
build.sh Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
BuildInstructions.md Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
Cargo.lock Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
Cargo.toml Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
CHANGELOG.md Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
clippy.toml Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
code-owners.json Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
CONTRIBUTING.md Contact: abuse@regnis.app for security reports 2026-11-11 10:52:30 +01:00
deny.toml Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
flake.lock Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
flake.nix Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
LICENSE Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
LICENSE.md Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
NOTICE Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
osv-scanner.toml Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
README.md Contact: abuse@regnis.app for security reports 2026-11-11 10:52:30 +01:00
Release.md Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
rust-toolchain.toml Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
rustfmt.toml Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
SECURITY.md Contact: abuse@regnis.app for security reports 2026-11-11 10:52:30 +01:00
security.txt Contact: abuse@regnis.app for security reports 2026-11-11 10:52:30 +01:00
tombi.toml Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00
typos.toml Regnis VPN source release (based on Mullvad VPN app, wave2 b272068) 2026-11-11 00:18:57 +01:00

Regnis VPN

Deutsch weiter unten · English below

Deutsch

Regnis VPN ist der WireGuard-VPN-Client von Regnis für Android und Linux (Desktop folgt). Er ist ein Fork der quelloffenen Mullvad VPN App und steht wie das Original unter der GNU General Public License v3.0 (siehe LICENSE). Regnis ist kein Produkt von Mullvad VPN AB und wird von Mullvad weder unterstützt noch geprüft; der Name „Mullvad“ steht hier nur zur Herkunftsangabe (siehe NOTICE).

Was steckt drin

Pfad Inhalt
android/ Android-App (Kotlin/Compose)
desktop/ Desktop-Oberfläche (Electron)
mullvad-daemon/, talpid-*, mullvad-* Rust-Daemon, Tunnel, Firewall/Kill-Switch, API-Client (inkl. Regnis-Login per OIDC + PKCE)
regnis/ Regnis-Build-, Branding- und Testskripte
server/exit-node/ Einrichtung, Härtung und tägliche No-Logs-Prüfung der Exit-Server (verify-exit-node.sh), DNS-Filter
server/vpn-api/ Geräte-/Schlüsselverwaltung zwischen App und Exits (nur Node-Standardmodule)
server/leak-test/ Leak-Test-Dienst hinter leak.regnis.app

Die Git-Submodule (dist-assets/binaries, windows/*) zeigen weiterhin auf die öffentlichen Mullvad-Repositories. Nicht enthalten: iOS-App, macOS/Windows-Paketierung mit Mullvad-Logos, Upstream-CI.

Wie dieser Code entstanden ist

Die Änderungen gegenüber der Mullvad VPN App (Regnis-Branding, Login, Server-Teile unter server/, Build-Skripte unter regnis/) sind überwiegend KI-gestützt entstanden. Jede Änderung wird von uns getestet und geprüft, bevor sie in einen Release geht. Sicherheitsrelevante Stellen bekommen zusätzlich eine eigene Prüfung. Der übernommene Mullvad-Code bleibt, wie er ist, und die Lizenz bleibt die GNU GPL v3.0. Fehler oder Sicherheitsprobleme bitte an abuse@regnis.app oder über https://support.regnis.app/ melden.

Bauen

Android (ohne Docker; JDK 17, Android SDK, NDK 27.3.13750724, Rust laut rust-toolchain.toml):

git submodule update --init dist-assets/binaries
export REGNIS_KEY_DIR=/pfad/zu/deinem/signing   # eigener Schlüssel, siehe regnis/build-android.sh
regnis/build-android.sh arm64 ./out

Linux (.deb; cargo, node/npm mit desktop/node_modules, protoc, statische libmnl/libnftnl, libdbus-Header):

cd desktop && npm ci && cd ..
regnis/build-linux.sh

Allgemeine Build-Hinweise des Upstream: BuildInstructions.md.

Releases prüfen

  • Jede Veröffentlichung hat eine SHA256SUMS-Datei: sha256sum -c SHA256SUMS-*.txt.
  • Android-APKs sind mit dem Regnis-Schlüssel signiert (APK Signature Scheme v2/v3):
    apksigner verify --print-certs regnis-vpn-android-*.apk
    # certificate DN: CN=Regnis VPN, O=Regnis, C=DE
    # certificate SHA-256 digest: eef3d722458a2b37a7d709764b3fdb0255d7470ba945cd728171edb8cf8a5d3c
    
    Weicht der Fingerprint ab, die APK nicht installieren und an abuse@regnis.app melden.
  • Selbst gebaute APKs tragen deine eigene Signatur und lassen sich nicht als Update über die offizielle App installieren.

No-Logs

Die Exit-Server prüfen sich täglich mit server/exit-node/verify-exit-node.sh und veröffentlichen einen signierten Bericht: https://docs.regnis.app/no-logs/. Das ist eine Selbstprüfung, keine unabhängige Prüfung.

Sicherheit und Kontakt

Sicherheitslücken: abuse@regnis.app (siehe SECURITY.md, security.txt). Missbrauch (z. B. Spam über unsere Exits): abuse@regnis.app.


English

Regnis VPN is the WireGuard VPN client of Regnis for Android and Linux (desktop to follow). It is a fork of the open-source Mullvad VPN app and, like the original, is licensed under the GNU General Public License v3.0 (see LICENSE). Regnis is not a product of Mullvad VPN AB and is not endorsed or reviewed by Mullvad; the name "Mullvad" is used for attribution only (see NOTICE).

Layout

  • android/ – Android app · desktop/ – Electron UI · mullvad-daemon/, talpid-*, mullvad-* – Rust daemon, tunnel, firewall/kill switch, API client (incl. Regnis OIDC + PKCE login) · regnis/ – build, branding and test scripts
  • server/exit-node/ – exit server setup, hardening, daily no-logs self-check, DNS filters
  • server/vpn-api/ – device/key management between app and exits · server/leak-test/ – leak test service

Git submodules (dist-assets/binaries, windows/*) still point to Mullvad's public repositories. Not included: iOS app, macOS/Windows packaging carrying Mullvad logos, upstream CI.

How this code was made

The changes relative to the Mullvad VPN app (Regnis branding, login, the server parts under server/, build scripts under regnis/) were written largely with AI assistance. We test and review every change before it ships in a release, and security-relevant parts get a separate review. The inherited Mullvad code stays as it is, and the license remains GNU GPL v3.0. Please report bugs or security issues to abuse@regnis.app or via https://support.regnis.app/.

Build

  • Android: git submodule update --init dist-assets/binaries, set REGNIS_KEY_DIR to your own signing key, run regnis/build-android.sh arm64 ./out (JDK 17, Android SDK, NDK 27.3.13750724, Rust per rust-toolchain.toml).
  • Linux (.deb): cd desktop && npm ci && cd .. && regnis/build-linux.sh. See also BuildInstructions.md (upstream).

Verifying releases

  • sha256sum -c SHA256SUMS-*.txt
  • apksigner verify --print-certs <apk> must show CN=Regnis VPN, O=Regnis, C=DE and SHA-256 eef3d722458a2b37a7d709764b3fdb0255d7470ba945cd728171edb8cf8a5d3c. If it differs, do not install; report to abuse@regnis.app.

No-logs

Exit servers run server/exit-node/verify-exit-node.sh daily and publish a signed report: https://docs.regnis.app/no-logs/. This is a self-assessment, not an independent audit.

Security and contact

Vulnerabilities: abuse@regnis.app (see SECURITY.md, security.txt). Abuse: abuse@regnis.app.