diff options
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 137 |
1 files changed, 75 insertions, 62 deletions
@@ -1,90 +1,103 @@ # Maintainer: Christian Hesse <mail@eworm.de> pkgname=openvpn-git -pkgver=2.5.git.r287.g5961250e +pkgver=2.4.rc2.r864.g3b1ded39 pkgrel=1 pkgdesc='An easy-to-use, robust and highly configurable VPN (Virtual Private Network) - git checkout' arch=('i686' 'x86_64') -url='http://openvpn.net/index.php/open-source.html' -depends=('openssl' 'lzo' 'iproute2' 'libsystemd' 'pkcs11-helper') +url='https://openvpn.net/index.php/open-source.html' +license=('custom') +depends=('openssl' 'lzo' 'lz4' 'systemd-libs' 'libsystemd.so' 'pkcs11-helper' 'libpkcs11-helper.so') optdepends=('easy-rsa: easy CA and certificate handling' 'pam: authenticate via PAM') -makedepends=('git' 'systemd') +makedepends=('git' 'systemd' 'python-docutils') conflicts=('openvpn' 'openvpn-dev') provides=('openvpn=2.4.0' 'openvpn-dev') -license=('custom') -# for 2.4.x release branch append: #branch=release/2.4 -source=('git://github.com/OpenVPN/openvpn.git') -sha256sums=('SKIP') +install=openvpn.install +# for 2.5.x release branch append: #branch=release/2.5 +source=("git+https://github.com/OpenVPN/openvpn.git" + '0001-unprivileged.patch' + 'sysusers.conf' + 'tmpfiles.conf') +sha256sums=('SKIP' + '8e7d292514f30729bc37d6681789b1bfdf87a992a3aa77e2a28b8da9cd8d4bfe' + '3646b865ac67783fafc6652589cfe2a3105ecef06f3907f33de5135815f6a621' + 'b1436f953a4f1be7083711d11928a9924993f940ff56ff92d288d6100df673fc') pkgver() { - cd openvpn/ - - if GITTAG="$(git describe --abbrev=0 --tags 2>/dev/null)"; then - printf '%s.r%s.g%s' \ - "$(sed -e "s/^${pkgname%%-git}//" -e 's/^[-_/a-zA-Z]\+//' -e 's/[-_+]/./g' <<< ${GITTAG})" \ - "$(git rev-list --count ${GITTAG}..)" \ - "$(git log -1 --format='%h')" - else - printf '0.r%s.g%s' \ - "$(git rev-list --count master)" \ - "$(git log -1 --format='%h')" - fi + cd "${srcdir}"/openvpn + + if GITTAG="$(git describe --abbrev=0 --tags 2>/dev/null)"; then + printf '%s.r%s.g%s' \ + "$(sed -e "s/^${pkgname%%-git}//" -e 's/^[-_/a-zA-Z]\+//' -e 's/[-_+]/./g' <<< ${GITTAG})" \ + "$(git rev-list --count ${GITTAG}..)" \ + "$(git rev-parse --short HEAD)" + else + printf '0.r%s.g%s' \ + "$(git rev-list --count master)" \ + "$(git rev-parse --short HEAD)" + fi } prepare() { - cd openvpn/ + cd "${srcdir}"/openvpn + + # https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg19302.html + sed -i '/^CONFIGURE_DEFINES=/s/set/env/g' configure.ac - # add a 2.5 tag for proper versioning - git tag '2.5_git' 'e1dd49a38875909bda218c0c3f772e791681ac36' + # start with unprivileged user and keep granted privileges + patch -Np1 < ../0001-unprivileged.patch - # regenerate configure script - autoreconf -vi + autoreconf --force --install } build() { - cd openvpn/ - - ./configure \ - --prefix=/usr \ - --sbindir=/usr/bin \ - --enable-iproute2 \ - --enable-pkcs11 \ - --enable-plugins \ - --enable-systemd \ - --enable-x509-alt-username - make + mkdir "${srcdir}"/build + cd "${srcdir}"/build + + "${srcdir}"/openvpn/configure \ + --prefix=/usr \ + --sbindir=/usr/bin \ + --enable-pkcs11 \ + --enable-plugins \ + --enable-systemd \ + --enable-x509-alt-username + make } check() { - cd openvpn/ + cd "${srcdir}"/build - make check + make check } package() { - cd openvpn/ - - # Install openvpn - make DESTDIR="${pkgdir}" install - - # Create empty configuration directories - install -d -m0750 -g 90 "${pkgdir}"/etc/openvpn/{client,server} - - # Install examples - install -d -m0755 "${pkgdir}"/usr/share/openvpn - cp -r sample/sample-config-files "${pkgdir}"/usr/share/openvpn/examples - - # Install license - install -d -m0755 "${pkgdir}"/usr/share/licenses/openvpn/ - ln -sf /usr/share/doc/openvpn/{COPYING,COPYRIGHT.GPL} "${pkgdir}"/usr/share/licenses/openvpn/ - - # Install contrib - for FILE in $(find contrib -type f); do - case "$(file --brief --mime-type "${FILE}")" in - "text/x-shellscript") install -D -m0755 "${FILE}" "${pkgdir}/usr/share/openvpn/${FILE}" ;; - *) install -D -m0644 "${FILE}" "${pkgdir}/usr/share/openvpn/${FILE}" ;; - esac - done + cd "${srcdir}"/build + + # Install openvpn + make DESTDIR="${pkgdir}" install + + # Install sysusers and tmpfiles files + install -D -m0644 ../sysusers.conf "${pkgdir}"/usr/lib/sysusers.d/openvpn.conf + install -D -m0644 ../tmpfiles.conf "${pkgdir}"/usr/lib/tmpfiles.d/openvpn.conf + + # Install license + install -d -m0755 "${pkgdir}"/usr/share/licenses/openvpn/ + ln -sf /usr/share/doc/openvpn/{COPYING,COPYRIGHT.GPL} "${pkgdir}"/usr/share/licenses/openvpn/ + + cd "${srcdir}"/openvpn + + # Install examples + install -d -m0755 "${pkgdir}"/usr/share/openvpn + cp -r sample/sample-config-files "${pkgdir}"/usr/share/openvpn/examples + + # Install contrib + for FILE in $(find contrib -type f); do + case "$(file --brief --mime-type --no-sandbox "${FILE}")" in + "text/x-shellscript") + install -D -m0755 "${FILE}" "${pkgdir}/usr/share/openvpn/${FILE}" ;; + *) + install -D -m0644 "${FILE}" "${pkgdir}/usr/share/openvpn/${FILE}" ;; + esac + done } - |