1
1
Fork
You've already forked eduvpn-flatpak
0
Unofficial Flatpak for EduVPN Linux client https://eduvpn.org
2026年05月22日 12:37:11 +02:00
.forgejo/workflows ci: add scheduled Renovate workflow [skip ci] ( #19 ) 2026年05月22日 12:37:11 +02:00
ci/flathub-linter chore: rename id to page.codeberg.WebSpider.EduVPN 2026年05月13日 13:59:44 +02:00
patches chore: bump client to v4.7.2 2026年05月11日 12:37:40 +02:00
.gitignore hello world 2026年05月08日 22:56:23 +02:00
LICENSE chore: rename id to page.codeberg.WebSpider.EduVPN 2026年05月13日 13:59:44 +02:00
page.codeberg.WebSpider.EduVPN.flatpakrepo chore: rename id to page.codeberg.WebSpider.EduVPN 2026年05月13日 13:59:44 +02:00
page.codeberg.WebSpider.EduVPN.metainfo.xml chore: rename id to page.codeberg.WebSpider.EduVPN 2026年05月13日 13:59:44 +02:00
page.codeberg.WebSpider.EduVPN.yaml chore: add renovate.json for automated dependency tracking 2026年05月22日 12:12:28 +02:00
README.md docs: recommend user install, add system-wide install guidance 2026年05月22日 11:13:20 +02:00
renovate.json chore: add renovate.json for automated dependency tracking 2026年05月22日 12:12:28 +02:00

EduVPN Flatpak

Unofficial distribution. This Flatpak is not produced or endorsed by the eduVPN project or GÉANT. For the official Linux client, see codeberg.org/eduVPN/linux-app.

Flatpak packaging for the eduVPN Linux client — a VPN service for students and staff at research and education institutions worldwide.

This repository contains the Flatpak manifest and supporting files needed to build and distribute page.codeberg.WebSpider.EduVPN, bundling a compatible NetworkManager stack inside the sandbox.

Features

  • Automatic discovery of institutional eduVPN servers
  • OpenVPN and WireGuard protocol support
  • Secure credential storage via the system keyring
  • Desktop notifications for connection state changes
  • Automatic reconnection on network changes

Installation

Note: x86_64 and aarch64 are supported. Other architectures (armv7, riscv64, ppc64le, s390x) can be added upon request.

User install vs system install

Flatpak can install applications per-user (--user, into ~/.local/share/flatpak/) or system-wide (into /var/lib/flatpak/, available to all users). For most people, a user install is the right choice:

  • No root or sudo required.
  • The remote and app are only visible to your own account.
  • VPN profiles and credentials are inherently per-user anyway.

Use a system-wide install only if you are on a shared or multi-user machine and want eduVPN available to every account on it.

Add the remote for your user and install:

flatpak remote-add --user --no-gpg-verify eduvpn https://webspider.codeberg.page/eduvpn-flatpak
flatpak install --user eduvpn page.codeberg.WebSpider.EduVPN//stable

Note: --no-gpg-verify is required for now - GPG signing of the repository will be added soon.

Or add via the .flatpakrepo file (e.g. by opening it in GNOME Software or Discover):

flatpak remote-add --user --from eduvpn https://webspider.codeberg.page/eduvpn-flatpak/page.codeberg.WebSpider.EduVPN.flatpakrepo
flatpak install --user eduvpn page.codeberg.WebSpider.EduVPN//stable

System-wide install (multi-user machines)

If you need the application available to all users on the machine, omit --user (root or sudo may be required depending on your system):

flatpak remote-add --no-gpg-verify eduvpn https://webspider.codeberg.page/eduvpn-flatpak
flatpak install eduvpn page.codeberg.WebSpider.EduVPN//stable

Available branches

The repository publishes the following branches for both x86_64 and aarch64:

Branch Description
stable Latest tagged release (recommended)
main Latest CI build from the main branch
{version} Pinned version, e.g. flatpak install eduvpn page.codeberg.WebSpider.EduVPN//4.7.2

Building Locally

Install the required GNOME runtime and SDK (version 50):

flatpak install flathub org.gnome.Platform//50 org.gnome.Sdk//50

Build and install for the current user:

flatpak-builder --user --install --force-clean build-dir page.codeberg.WebSpider.EduVPN.yaml

The build-dir/ and repo/ directories are generated by the build and should not be committed.

Patches

Two patches are applied to make the application work inside the Flatpak sandbox:

patches/client/001-utils-add-flatpak-prefix.patch Adds /app to the search path used by eduvpn/utils.py when locating mainwindow.ui. Without this, the GTK builder cannot find the UI file because Flatpak installs to /app rather than the standard system prefixes.

patches/nm/0001-disable-ownership-check-for-plugins.patch Disables NetworkManager's file ownership verification for VPN plugins (nm-utils.c). Inside the Flatpak sandbox, plugin file ownership does not match what NM expects on a normal host system, causing the ownership check to fail and preventing the OpenVPN plugin from loading.

Bundled Dependencies

The Flatpak manifest bundles the following libraries to provide VPN connectivity without depending on the host's NetworkManager installation:

Package Version Notes
NetworkManager 1.40.18 Pinned < 1.42.0 — breaking DNS API changes in 1.42.x
NetworkManager-openvpn 1.10.2 Pinned < 1.10.4 — later versions cause connection failures in Flatpak
libnma 1.10.6 NetworkManager GTK UI library
libndp 1.9 Network Discovery Protocol library, required by NM

Sandbox Permissions

Permission Purpose
--share=network VPN connectivity
--share=ipc GTK shared memory (X11)
--socket=wayland, --socket=fallback-x11 GUI display
--device=dri GTK3 GPU rendering
--system-talk-name=org.freedesktop.NetworkManager Create and manage VPN connections
--talk-name=org.freedesktop.secrets Store credentials in the system keyring
--talk-name=org.freedesktop.Notifications Connection state notifications
--system-talk-name=org.freedesktop.login1 D-Bus daemon reconnector
--filesystem=~/.cert/nm-openvpn:create OpenVPN certificate storage

License

The original packaging files in this repository (Flatpak manifests and supporting files) are licensed under EUPL-1.2 — see LICENSE for details.

The patches are derived from upstream GPL-3.0-or-later code and remain licensed under GPL-3.0-or-later.

The AppStream metadata (page.codeberg.WebSpider.EduVPN.metainfo.xml) is licensed under CC0-1.0, as required for distribution in Flatpak repositories and app catalogs.

The eduVPN application itself is licensed under GPL-3.0-or-later.