[arch-commits] Commit in 389-ds-base/repos (5 files)
Evangelos Foutras
foutrelis at archlinux.org
Mon Apr 27 19:28:22 UTC 2020
Date: Monday, April 27, 2020 @ 19:28:22
Author: foutrelis
Revision: 381758
archrelease: copy trunk to staging-x86_64
Added:
389-ds-base/repos/staging-x86_64/
389-ds-base/repos/staging-x86_64/389-ds-base.sysusers
(from rev 381757, 389-ds-base/trunk/389-ds-base.sysusers)
389-ds-base/repos/staging-x86_64/389-ds-base.tmpfiles
(from rev 381757, 389-ds-base/trunk/389-ds-base.tmpfiles)
389-ds-base/repos/staging-x86_64/PKGBUILD
(from rev 381757, 389-ds-base/trunk/PKGBUILD)
389-ds-base/repos/staging-x86_64/bcf5e9f.patch
(from rev 381757, 389-ds-base/trunk/bcf5e9f.patch)
----------------------+
389-ds-base.sysusers | 1
389-ds-base.tmpfiles | 2 +
PKGBUILD | 86 +++++++++++++++++++++++++++++++++++++++++++++++++
bcf5e9f.patch | 41 +++++++++++++++++++++++
4 files changed, 130 insertions(+)
Copied: 389-ds-base/repos/staging-x86_64/389-ds-base.sysusers (from rev 381757, 389-ds-base/trunk/389-ds-base.sysusers)
===================================================================
--- staging-x86_64/389-ds-base.sysusers (rev 0)
+++ staging-x86_64/389-ds-base.sysusers 2020-04-27 19:28:22 UTC (rev 381758)
@@ -0,0 +1 @@
+u dirsrv 440 "389 Directory Server" /var/lib/389-ds-base
Copied: 389-ds-base/repos/staging-x86_64/389-ds-base.tmpfiles (from rev 381757, 389-ds-base/trunk/389-ds-base.tmpfiles)
===================================================================
--- staging-x86_64/389-ds-base.tmpfiles (rev 0)
+++ staging-x86_64/389-ds-base.tmpfiles 2020-04-27 19:28:22 UTC (rev 381758)
@@ -0,0 +1,2 @@
+d /var/log/dirsrv 0700 dirsrv dirsrv -
+d /var/lib/dirsrv 0700 dirsrv dirsrv -
Copied: 389-ds-base/repos/staging-x86_64/PKGBUILD (from rev 381757, 389-ds-base/trunk/PKGBUILD)
===================================================================
--- staging-x86_64/PKGBUILD (rev 0)
+++ staging-x86_64/PKGBUILD 2020-04-27 19:28:22 UTC (rev 381758)
@@ -0,0 +1,86 @@
+# Maintainer: Sven-Hendrik Haase <svenstaro at gmail.com>
+# Contributor: Javier Torres <javitonino [at] gmail [dot] com>
+# Contributor: Jameson Pugh <imntreal at gmail.com>
+# Contributor: Xiao-Long Chen <chenxiaolong at cxl.epac.to>
+
+pkgname=389-ds-base
+pkgver=1.4.3.4
+pkgdesc="389 Directory Server (base)"
+pkgrel=3
+arch=(x86_64)
+url="http://port389.org/"
+license=(GPL)
+provides=(libsvrcore.so)
+replaces=(python-lib389)
+backup=(etc/dirsrv/config/certmap.conf
+ etc/dirsrv/config/ldap-agent.conf
+ etc/dirsrv/config/slapd-collations.conf
+ etc/dirsrv/config/template-initconfig)
+depends=(libevent nspr nss net-snmp pam openldap python-argcomplete python-dateutil python-ldap perl)
+makedepends=(cargo rsync doxygen cmocka python-setuptools python-argparse-manpage)
+source=("https://releases.pagure.org/389-ds-base/${pkgname}-${pkgver}.tar.bz2"
+ 389-ds-base.sysusers
+ 389-ds-base.tmpfiles)
+sha512sums=('013403f49000e80b42565191153fb0e535ff6b2cbd1fc9127fb917e2bd9379e57c5e7562259d47a72126761b642af87eb854058b842fc33077e98d6e123d556f'
+ '8689b60f13517e6541e1faa62e61781654a8e4678990d14a3fe0cfe4673697cdde1c46763fdc7ef6203e4026286fa004c73b2857fd7fecff69483e6d1e8e6d68'
+ '5dff695ae866a591a711f836f2f72f2005b4afdb20760cda8711791910299e2c6ec71dff5eca9a2d9832cad8f9e9904dbbcf2d314cd9b20432bc8fd05c097868')
+
+prepare() {
+ cd "${pkgbase}-${pkgver}"
+
+ cargo vendor --manifest-path=./src/libsds/Cargo.toml
+ cargo fetch --manifest-path=./src/libsds/Cargo.toml
+ cargo vendor --manifest-path=./src/librslapd/Cargo.toml
+ cargo fetch --manifest-path=./src/librslapd/Cargo.toml
+
+ autoreconf -fiv
+}
+
+build() {
+ cd "${pkgbase}-${pkgver}"
+
+ # Build 389-ds-base
+ ./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --sbindir=/usr/bin \
+ --localstatedir=/var \
+ --libexecdir=/usr/lib/${pkgbase} \
+ --with-tmpfiles-d=/usr/lib/tmpfiles.d \
+ --with-systemd \
+ --with-systemdsystemunitdir=/usr/lib/systemd/system \
+ --with-systemdsystemconfdir=/etc/systemd/system \
+ --with-journald \
+ --with-openldap \
+ --enable-autobind \
+ --enable-cmocka \
+ --enable-rust \
+ --enable-perl
+ make
+
+ # Build lib389
+ cd src/lib389
+ python setup.py build
+}
+
+check() {
+ cd "${pkgbase}-${pkgver}"
+ make check
+}
+
+package() {
+ cd "${pkgbase}-${pkgver}"
+ make -j1 DESTDIR="${pkgdir}/" install
+
+ install -Dm644 LICENSE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
+
+ # Upstream expects lib389 and 389-ds-base to be shipped in the same package more or less
+ # so that's why it's not a split package.
+ cd src/lib389
+ python setup.py install --skip-build -O1 --root="${pkgdir}"
+ mv "${pkgdir}"/usr/sbin/* "${pkgdir}"/usr/bin/
+ rmdir "${pkgdir}"/usr/sbin
+
+ install -Dm644 "${srcdir}/${pkgname}.sysusers" "${pkgdir}/usr/lib/sysusers.d/${pkgname}.conf"
+ install -Dm644 "${srcdir}/${pkgname}.tmpfiles" "${pkgdir}/usr/lib/tmpfiles.d/${pkgname}.conf"
+}
Copied: 389-ds-base/repos/staging-x86_64/bcf5e9f.patch (from rev 381757, 389-ds-base/trunk/bcf5e9f.patch)
===================================================================
--- staging-x86_64/bcf5e9f.patch (rev 0)
+++ staging-x86_64/bcf5e9f.patch 2020-04-27 19:28:22 UTC (rev 381758)
@@ -0,0 +1,41 @@
+From bcf5e9f980b3725b82e8f1ae4b4778150f67e225 Mon Sep 17 00:00:00 2001
+From: Viktor Ashirov <vashirov at redhat.com>
+Date: Dec 10 2019 15:40:32 +0000
+Subject: Issue 50771 - 1.4.2.5 doesn't compile due to error ModuleNotFoundError: No module named 'pkg_resources.extern'
+
+
+Bug Description:
+
+Arch Linux ships python-setuptools stripped of vendored packages.
+This makes lib389 fail with ModuleNotFoundError on import.
+
+Fix Description:
+
+Use a fallback to `packaging` module.
+
+Fixes: https://pagure.io/389-ds-base/issue/50771
+Relates: https://pagure.io/389-ds-base/issue/50712
+
+Reviewed by: mhonek (Thanks!)
+
+---
+
+diff --git a/src/lib389/lib389/utils.py b/src/lib389/lib389/utils.py
+index 70a3a10..36422dd 100644
+--- a/src/lib389/lib389/utils.py
++++ b/src/lib389/lib389/utils.py
+@@ -40,7 +40,12 @@ import shlex
+ import operator
+ import subprocess
+ import math
+-from pkg_resources.extern.packaging.version import LegacyVersion
++# Setuptools ships with 'packaging' module, let's use it from there
++try:
++ from pkg_resources.extern.packaging.version import LegacyVersion
++# Fallback to a normal 'packaging' module in case 'setuptools' is stripped
++except:
++ from packaging.version import LegacyVersion
+ from socket import getfqdn
+ from ldapurl import LDAPUrl
+ from contextlib import closing
+
More information about the arch-commits
mailing list