81 lines
2.3 KiB
Bash
81 lines
2.3 KiB
Bash
# Maintainer: aheuwes
|
|
# Previous maintainers: mreschke, Didrole
|
|
|
|
pkgname=cato-client-bin
|
|
pkgver=5.7.0.5525
|
|
pkgrel=1
|
|
pkgdesc='VPN client from Cato Networks to connect to the Cato Cloud.'
|
|
arch=('x86_64')
|
|
url='https://clientdownload.catonetworks.com/'
|
|
license=('custom')
|
|
depends=('glibc' 'gcc-libs' 'zlib' 'ca-certificates-utils')
|
|
makedepends=('libarchive' 'curl')
|
|
conflicts=('cato-linux-client')
|
|
provides=('cato-linux-client')
|
|
install=cato-client-bin.install
|
|
|
|
_deb_url='https://clientdownload.catonetworks.com/public/clients/cato-client-install.deb'
|
|
|
|
source=(
|
|
"cato-client-install.deb::${_deb_url}"
|
|
cato-client-bin.sysusers
|
|
cato-client-bin.tmpfiles
|
|
)
|
|
noextract=('cato-client-install.deb')
|
|
sha256sums=(
|
|
'SKIP'
|
|
'3c51ce0ebde44edf062e2c9db69c95949ee2031f4e85156f2f401d6e8767f704'
|
|
'd381f7126126f45ca36e43bd33772bfa0aa6d9cbc9a720e2485fc6061cdd9435'
|
|
)
|
|
|
|
_fetch_deb() {
|
|
curl -fsSL -o cato-client-install.deb "${_deb_url}"
|
|
}
|
|
|
|
pkgver() {
|
|
cd "$srcdir"
|
|
_fetch_deb
|
|
bsdtar -xf cato-client-install.deb control.tar.xz
|
|
bsdtar -xOf control.tar.xz control \
|
|
| awk -F': ' '/^Version:/ { print $2 }' \
|
|
| sed 's/-release$//'
|
|
}
|
|
|
|
prepare() {
|
|
cd "$srcdir"
|
|
_fetch_deb
|
|
bsdtar -xf cato-client-install.deb
|
|
}
|
|
|
|
package() {
|
|
bsdtar -xf "${srcdir}/data.tar.xz" -C "${pkgdir}/"
|
|
|
|
# Debian layout -> Arch layout
|
|
mv "${pkgdir}/lib/systemd" "${pkgdir}/usr/lib/"
|
|
rmdir "${pkgdir}/lib/"
|
|
|
|
if [[ -f "${pkgdir}/usr/sbin/cato-clientd" ]]; then
|
|
install -Dm755 "${pkgdir}/usr/sbin/cato-clientd" "${pkgdir}/usr/bin/cato-clientd"
|
|
rm -f "${pkgdir}/usr/sbin/cato-clientd"
|
|
fi
|
|
|
|
rmdir "${pkgdir}/usr/sbin" 2>/dev/null || true
|
|
rmdir "${pkgdir}/usr/local/lib" 2>/dev/null || true
|
|
|
|
# usr-merge safe paths in the unit file
|
|
sed -i \
|
|
-e 's|/usr/sbin/cato-clientd|/usr/bin/cato-clientd|g' \
|
|
-e 's|WorkingDirectory=/usr/sbin/|WorkingDirectory=/usr/bin/|g' \
|
|
"${pkgdir}/usr/lib/systemd/system/cato-client.service"
|
|
|
|
# Arch trusts CAs from this path, not update-ca-certificates
|
|
install -Dm644 \
|
|
"${pkgdir}/usr/local/share/ca-certificates/CatoNetworksRootCA.crt" \
|
|
"${pkgdir}/etc/ca-certificates/trust-source/anchors/CatoNetworksRootCA.crt"
|
|
|
|
install -Dm644 "${srcdir}/cato-client-bin.sysusers" \
|
|
"${pkgdir}/usr/lib/sysusers.d/cato-client-bin.conf"
|
|
install -Dm644 "${srcdir}/cato-client-bin.tmpfiles" \
|
|
"${pkgdir}/usr/lib/tmpfiles.d/cato-client-bin.conf"
|
|
}
|