summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO31
-rw-r--r--.gitignore8
-rw-r--r--PKGBUILD71
-rw-r--r--appgate-sdp-appgatedriver.service.patch13
-rw-r--r--appgatedriver.service29
-rw-r--r--nm.py.patch15
6 files changed, 74 insertions, 93 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 171cce8b058a..cfef620571fb 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,27 +1,26 @@
pkgbase = appgate-sdp
- pkgdesc = Software Defined Perimeter - GUI client
- pkgver = 4.3.2
+ pkgdesc = Appgate SDP (Software Defined Perimeter) desktop client
+ pkgver = 5.3.1
pkgrel = 1
- url = https://www.cyxtera.com/essential-defense/appgate-sdp/support
+ url = https://www.appgate.com/support/software-defined-perimeter-support
arch = x86_64
license = custom
- depends = gconf
- depends = libsecret
+ license = custom:commercial
+ depends = dnsmasq
depends = gtk3
- depends = python
- depends = nss
+ depends = libsecret
depends = libxss
depends = nodejs
- depends = dnsmasq
- conflicts = appgate-sdp-headless
- conflicts = appgate-sdp-5
+ depends = nss
+ depends = python-dbus
+ optdepends = gnome-keyring: saves the endpoint certificate between sessions
+ provides = appgate-sdp
+ replaces = appgate-sdp-5
options = staticlibs
- source = https://sdpdownloads.cyxtera.com/AppGate-SDP-4.3/clients/appgate-sdp_4.3.2_amd64.deb
- source = appgatedriver.service
- source = nm.py.patch
- md5sums = 17101aac7623c06d5fbb95f50cf3dbdc
- md5sums = 002644116e20b2d79fdb36b7677ab4cf
- md5sums = c36c11d995cc341f2f1eb4c3b6afa732
+ source = https://bin.appgate-sdp.com/5.3/client/appgate-sdp_5.3.1_amd64.deb
+ source = appgate-sdp-appgatedriver.service.patch
+ sha256sums = 3b52301d8e6c900f82d931f24f6ffdfcd0291662ed4bafe57e1deebdc321df40
+ sha256sums = 0789aa07d6a7af44187e407696d930e78c50370c19b8399722ebecb0655ffcdb
pkgname = appgate-sdp
diff --git a/.gitignore b/.gitignore
index 94bf332abe8d..3470d4714069 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,4 +1,8 @@
-*.pkg.tar.xz
-*.deb
+appgate-sdp-*.pkg.tar.zst
+appgate-sdp-*.pkg.tar.xz
+appgate-sdp*.deb
+appgate-sdp_*/
+appgate-sdp-*.log
+PKGBUILD-namcap.log
pkg/
src/
diff --git a/PKGBUILD b/PKGBUILD
index 656cae1f6ae2..ceb9af4e686a 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,41 +1,50 @@
# Maintainer: Pawel Mosakowski <pawel at mosakowski dot net>
+# Maintainer: Fredy GarcĂ­a <frealgagu at gmail dot com>
+
pkgname=appgate-sdp
-conflicts=('appgate-sdp-headless' 'appgate-sdp-5')
-pkgver=4.3.2
-_download_pkgver=4.3
+pkgver=5.3.1
pkgrel=1
-epoch=
-pkgdesc="Software Defined Perimeter - GUI client"
-arch=('x86_64')
-url="https://www.cyxtera.com/essential-defense/appgate-sdp/support"
-license=('custom')
-
-# dependecies calculated by namcap
-depends=('gconf' 'libsecret' 'gtk3' 'python' 'nss' 'libxss' 'nodejs' 'dnsmasq')
-source=("https://sdpdownloads.cyxtera.com/AppGate-SDP-${_download_pkgver}/clients/${pkgname}_${pkgver}_amd64.deb"
- "appgatedriver.service"
- "nm.py.patch")
-
+pkgdesc="Appgate SDP (Software Defined Perimeter) desktop client"
+arch=("x86_64")
+url="https://www.${pkgname%%-*}.com/support/software-defined-perimeter-support"
+license=("custom" "custom:commercial")
+depends=("dnsmasq" "gtk3" "libsecret" "libxss" "nodejs" "nss" "python-dbus")
+optdepends=("gnome-keyring: saves the endpoint certificate between sessions")
+provides=("${pkgname}")
+conflicts=()
+replaces=("${pkgname}-${pkgver%%.*}")
options=(staticlibs)
+source=(
+ "https://bin.${pkgname}.com/${pkgver%.*}/client/${pkgname}_${pkgver}_amd64.deb"
+ "${pkgname}-${pkgname%%-*}driver.service.patch"
+)
+sha256sums=(
+ "3b52301d8e6c900f82d931f24f6ffdfcd0291662ed4bafe57e1deebdc321df40"
+ "0789aa07d6a7af44187e407696d930e78c50370c19b8399722ebecb0655ffcdb"
+)
prepare() {
- tar -xf data.tar.xz
+ mkdir "${srcdir}/${pkgname}"
+ cd "${srcdir}/${pkgname}"
+
+ bsdtar -xf "${srcdir}/data.tar.xz" -C .
+
+ patch -Np1 -i "${srcdir}/${pkgname}-${pkgname%%-*}driver.service.patch"
+
+ # Remove unnecessary .deb related directory
+ rm -rf "${srcdir}/${pkgname}/etc/init.d"
}
package() {
- cp -dpr "${srcdir}"/{etc,lib,opt,usr} "${pkgdir}"
- mv -v "$pkgdir/lib/systemd/system" "$pkgdir/usr/lib/systemd/"
- rm -vrf "$pkgdir/lib"
-
- cp -v "$srcdir/appgatedriver.service" "$pkgdir/usr/lib/systemd/system/appgatedriver.service"
- patch "$pkgdir/opt/appgate/linux/nm.py" "$srcdir/nm.py.patch"
-
- mkdir -vp "$pkgdir/usr/share/licenses/appgate-sdp"
- cp -v "$pkgdir/usr/share/doc/appgate/copyright" "$pkgdir/usr/share/licenses/appgate-sdp"
- cp -v "$pkgdir/usr/share/doc/appgate/LICENSE.github" "$pkgdir/usr/share/licenses/appgate-sdp"
- cp -v "$pkgdir/usr/share/doc/appgate/LICENSES.chromium.html.bz2" "$pkgdir/usr/share/licenses/appgate-sdp"
-}
+ # Install application files
+ cp -dpr "${srcdir}/${pkgname}/"{opt,usr,etc} "${pkgdir}"
-md5sums=('17101aac7623c06d5fbb95f50cf3dbdc'
- '002644116e20b2d79fdb36b7677ab4cf'
- 'c36c11d995cc341f2f1eb4c3b6afa732')
+ # Install service files
+ install -dm755 "${pkgdir}/usr/lib/systemd/system"
+ install -Dm644 "${srcdir}/${pkgname}/lib/systemd/system/"* "${pkgdir}/usr/lib/systemd/system/"
+
+ # Install license files
+ install -Dm644 "${srcdir}/${pkgname}/usr/share/doc/${pkgname%%-*}/copyright" "${pkgdir}/usr/share/licenses/${pkgname}/copyright"
+ install -Dm644 "${srcdir}/${pkgname}/usr/share/doc/${pkgname%%-*}/LICENSE.github" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.github"
+ install -Dm644 "${srcdir}/${pkgname}/usr/share/doc/${pkgname%%-*}/LICENSES.chromium.html.bz2" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSES.chromium.html.bz2"
+}
diff --git a/appgate-sdp-appgatedriver.service.patch b/appgate-sdp-appgatedriver.service.patch
new file mode 100644
index 000000000000..c2f58bf0bd72
--- /dev/null
+++ b/appgate-sdp-appgatedriver.service.patch
@@ -0,0 +1,13 @@
+diff --git a/lib/systemd/system/appgatedriver.service b/lib/systemd/system/appgatedriver.service
+index 5e98ca8..1f8cb55 100644
+--- a/lib/systemd/system/appgatedriver.service
++++ b/lib/systemd/system/appgatedriver.service
+@@ -21,7 +21,7 @@ CapabilityBoundingSet=~CAP_SYS_PTRACE
+ CapabilityBoundingSet=~CAP_SYS_PACCT
+ CapabilityBoundingSet=~CAP_SYS_CHROOT
+ CapabilityBoundingSet=~CAP_SYS_BOOT
+-InaccessiblePaths=/mnt /srv /boot /media
++InaccessiblePaths=-/mnt -/srv -/boot -/media
+
+ [Install]
+ WantedBy=multi-user.target
diff --git a/appgatedriver.service b/appgatedriver.service
deleted file mode 100644
index 902db9a64f22..000000000000
--- a/appgatedriver.service
+++ /dev/null
@@ -1,29 +0,0 @@
-[Unit]
-Description=AppGate driver service
-
-[Service]
-# Remove traces of appgate-resolver, if it wasn't terminated properly
-ExecStartPre=/bin/sh -c "test -e /etc/resolv.appgate && (chattr -i /etc/resolv.conf || :; mv /etc/resolv.appgate /etc/resolv.conf) ||:"
-ExecStart="/opt/appgate/tun-service"
-Type=forking
-Restart=always
-ProtectHome=true
-ProtectKernelTunables=true
-ProtectKernelModules=true
-ProtectControlGroups=true
-PrivateTmp=true
-CapabilityBoundingSet=~CAP_SYS_ADMIN
-CapabilityBoundingSet=~CAP_WAKE_ALARM
-CapabilityBoundingSet=~CAP_SYSLOG
-CapabilityBoundingSet=~CAP_SYS_TTY_CONFIG
-CapabilityBoundingSet=~CAP_SYS_TIME
-CapabilityBoundingSet=~CAP_SYS_RESOURCE
-CapabilityBoundingSet=~CAP_SYS_PTRACE
-CapabilityBoundingSet=~CAP_SYS_PACCT
-CapabilityBoundingSet=~CAP_SYS_MODULE
-CapabilityBoundingSet=~CAP_SYS_CHROOT
-CapabilityBoundingSet=~CAP_SYS_BOOT
-InaccessiblePaths=-/mnt -/srv -/boot -/media
-
-[Install]
-WantedBy=multi-user.target
diff --git a/nm.py.patch b/nm.py.patch
deleted file mode 100644
index ddb842f3dc8b..000000000000
--- a/nm.py.patch
+++ /dev/null
@@ -1,15 +0,0 @@
---- ./opt/appgate/linux/nm.py.before 2020-03-17 11:43:13.875718603 +0000
-+++ ./opt/appgate/linux/nm.py 2020-03-17 11:44:42.565719740 +0000
-@@ -271,8 +271,10 @@
- if _bus_exists('uk.org.thekelleys.dnsmasq', '/'):
- syslog(LOG_INFO, '[has_system_dnsmasq] dnsmasq bus present')
- return True
--
-- if platform.linux_distribution()[0] != 'Fedora':
-+
-+ # this is PKGBUILD for Arch so this check should always yield True
-+ # if platform.linux_distribution()[0] != 'Fedora':
-+ if True:
- try:
- bus = dbus.SystemBus()
- proxy = bus.get_object(