name: globalprotect-openconnect base: core18 version: 'test' summary: A GlobalProtect VPN client powered by OpenConnect description: | A GlobalProtect VPN client (GUI) for Linux based on OpenConnect and built with Qt5, supports SAML auth mode. grade: devel confinement: devmode # use 'strict' once you have the right plugs and slots layout: /usr/share/qt5: bind: $SNAP/usr/share/qt5 slots: gpservice-slot: interface: dbus bus: system name: com.yuezk.qt.GPService plugs: gpservice-plug: interface: dbus bus: system name: com.yuezk.qt.GPService apps: gpservice: daemon: simple command: usr/bin/gpservice environment: LANG: en_US.utf8 VPNC_SCRIPT: $SNAP/usr/share/vpnc-scripts/vpnc-script plugs: - network slots: - gpservice-slot gpclient: common-id: com.yuezk.qt.gpclient command: usr/bin/gpclient extensions: - kde-neon desktop: usr/share/applications/com.yuezk.qt.gpclient.desktop environment: # QT_PLUGIN_PATH: $SNAP/opt/qt512/plugins QT_PLUGIN_PATH: $SNAP/usr/lib/x86_64-linux-gnu/qt5/plugins plugs: - desktop - desktop-legacy - wayland - unity7 - x11 - network - gpservice-plug parts: gmplib: plugin: autotools source: https://gmplib.org/download/gmp/gmp-6.2.1.tar.xz nettle: plugin: autotools source: https://ftp.gnu.org/gnu/nettle/nettle-3.7.3.tar.gz configflags: - --disable-openssl - --disable-documentation after: - gmplib tpm2-tss: plugin: autotools source: https://github.com/tpm2-software/tpm2-tss.git source-depth: 1 source-tag: 3.1.0 build-packages: - autoconf-archive - libcmocka-dev - build-essential - pkg-config - libtool - automake - libssl-dev - autoconf - libjson-c-dev - libini-config-dev - libcurl4-openssl-dev - acl stage-packages: - libasn1-8-heimdal - libcurl4 - libgssapi3-heimdal - libhcrypto4-heimdal - libheimbase1-heimdal - libheimntlm0-heimdal - libhx509-5-heimdal - libkrb5-26-heimdal - libldap-2.4-2 - libnghttp2-14 - libpsl5 - libroken18-heimdal - librtmp1 - libsasl2-2 - libwind0-heimdal configflags: - --disable-doxygen-doc gnutls: plugin: autotools source: http://mirrors.dotsrc.org/gcrypt/gnutls/v3.7/gnutls-3.7.2.tar.xz build-packages: - wget - build-essential - autoconf - libtool - gettext - autopoint - automake - autogen - libp11-kit-dev - libtspi-dev - libunistring-dev - guile-2.2-dev - libtasn1-6-dev - libidn2-0-dev - gperf - libunbound-dev - bison stage-packages: - guile-2.2-libs - libgc1c2 - libltdl7 - libopts25 - libunbound2 configflags: - --disable-doc - --disable-full-test-suite after: - gmplib - nettle libpskc: plugin: autotools source: https://download.savannah.nongnu.org/releases/oath-toolkit/oath-toolkit-2.6.7.tar.gz source-subdir: libpskc build-packages: - build-essential - autoconf - automake - libtool - bison - gengetopt - libxmlsec1-dev - libxml2-utils openconnect: plugin: autotools source: https://github.com/openconnect/openconnect.git source-depth: 1 source-tag: v8.10 build-packages: - build-essential - gettext - autoconf - automake - libtool - libxml2-dev - zlib1g-dev - pkg-config - libp11-kit-dev - libproxy-dev - trousers - libtasn1-6-dev - libstoken-dev - libpcsclite-dev - vpnc-scripts stage-packages: - vpnc-scripts - libp11-kit0 - libproxy1v5 - libstoken1 - libpcsclite1 - libxml2 - zlib1g after: - gnutls - tpm2-tss - libpskc application: plugin: qmake build-attributes: - keep-execstack source: . build-packages: - qt5-default - qtwebengine5-dev - libqt5websockets5-dev stage-packages: - libqt5printsupport5 - libqt5gui5 - libqt5network5 - libqt5svg5 - libqt5webengine5 - libqt5websockets5 - libqt5quickwidgets5 - libqt5webenginewidgets5 - libqt5dbus5 - libatm1 - libtspi1 - libxmlsec1 - libxmlsec1-openssl options: - CONFIG+=release