Hello,
It has been brought to my attention that Parabola is shipping a very old
inspircd package.
I've updated the PKGBUILD and tested it on x86_64.

-- 
Kind Regards,
Wael Karram.


From 86eb014ba7ef91148ff19f1c1c5074599a4bb51f Mon Sep 17 00:00:00 2001
From: wael <[email protected]>
Date: Tue, 3 Jan 2023 23:43:01 +0200
Subject: [PATCH] Updated insprircd PKGBUILD

---
 pcr/inspircd/PKGBUILD          | 112 ++++++++++++++++++++-------------
 pcr/inspircd/inspircd.install  |  10 +--
 pcr/inspircd/inspircd.sysusers |   2 +
 3 files changed, 71 insertions(+), 53 deletions(-)
 create mode 100644 pcr/inspircd/inspircd.sysusers

diff --git a/pcr/inspircd/PKGBUILD b/pcr/inspircd/PKGBUILD
index d8fd245208..a1e74a3e09 100644
--- a/pcr/inspircd/PKGBUILD
+++ b/pcr/inspircd/PKGBUILD
@@ -1,73 +1,97 @@
-# Maintainer (aur): Maxime Poulin <[email protected]>
-# Contributor: Damian Nowak <[email protected]>
-# Contributor: Kyle Fuller <[email protected]>
-# Contributor: jibi <[email protected]>
+# Maintainer (AUR): Maxime Poulin <[email protected]>
+# Co-Maintainer (AUR): Felix Golatofski <[email protected]>
+# Contributor (AUR): Christian Pfeiffer
+# Contributor (AUR): Damian Nowak <[email protected]>
+# Contributor (AUR): Kyle Fuller <[email protected]>
+# Contributor (AUR): jibi <[email protected]>
+# Maintainer (Parabola): Wael Karram <[email protected]>
 
-# parabola changes and rationale:
-#  - fixed arch array
-#  - removed redundant conflicts and provides
+# Parabola changes and rationale:
+# Drop aarch64 target and add i686 and armv7h targets instead.
 
 pkgname='inspircd'
-pkgver='2.0.24'
+pkgver='3.15.0'
 pkgrel='1'
-pkgdesc='A stable, modern and lightweight IRC daemon'
-arch=('x86_64' 'i686' 'armv7h')
-url='http://www.inspircd.org/'
+pkgdesc='InspIRCd is a modular Internet Relay Chat (IRC) server written in C++ for Linux, BSD, Windows and macOS systems.'
+arch=('x86_64')
+arch+=('i686' 'armv7h')
+url='https://www.inspircd.org/'
 license=('GPL2')
+conflicts=('inspircd')
+provides=('inspircd')
 depends=('perl')
-makedepends=('pkg-config' 'libmariadbclient' 'sqlite3' 'libldap' 'geoip'
-             'gnutls' 'openssl' 'libgcrypt')
+makedepends=('libmariadbclient' 'sqlite3' 'libldap' 'geoip' 'libmaxminddb'
+    'gnutls' 'openssl' 'libgcrypt' 'postgresql-client'
+    're2' 'tre' 'mbedtls' 'pkg-config')
 optdepends=('gnutls: m_ssl_gnutls'
-            'libgcrypt: m_ssl_gnutls'
-            'openssl: m_ssl_openssl'
-            'libmariadbclient: m_mysql'
-            'pcre: m_regex_pcre'
-            'sqlite3: m_sqlite3'
-            'libldap: m_ldapoper and m_ldapauth'
-            'geoip: m_geoip')
+    'libgcrypt: m_ssl_gnutls'
+    'openssl: m_ssl_openssl'
+    'libmariadbclient: m_mysql'
+    'postgresql-client: m_pgsql'
+    'libmaxminddb: m_geo_maxmind'
+    'pcre: m_regex_pcre'
+    'sqlite3: m_sqlite3'
+    'libldap: m_ldap'
+    'geoip: m_geoip'
+    're2: m_regex_re2'
+    'tre: m_regex_tre'
+    'mbedtls: m_ssl_mbedtls')
 install='inspircd.install'
 source=("https://github.com/inspircd/inspircd/archive/v$pkgver.tar.gz";
-        'inspircd.service')
-sha512sums=('766ed9b2786a36c6f3765405b5e02d831ea5ae1089c1b646ed0340b08147f9bb8d477ff94e16b0d9ed02dc109c6273f3772e1bed10bc45d1e9e9b409a37d2b6a'
-            '5a16a7c237693ffc6a108358f339b6aa2451fb16430561848ae869f890199b38fab6a13640bcc35cf1d07e32d7e5fff405d88668ee05ddaffc2ef61cb42ee832')
+    "$pkgname.service"
+    "$pkgname.sysusers"
+    )
+sha512sums=('32d10cd7f6a06c79720c138fc4aff3c8db667754c7a2fe3ad7c07a1e56604bedcf17e3dd5d5f54a6fd49b37414acd57b97afc1d4accbf3e5fbd92b483fe6c394'
+            '5a16a7c237693ffc6a108358f339b6aa2451fb16430561848ae869f890199b38fab6a13640bcc35cf1d07e32d7e5fff405d88668ee05ddaffc2ef61cb42ee832'
+            '90e7ae20a0d13cef2ff00c56382ea5cf1ed8843228937c49cab7fe0e2a34d02b9fac20dd55c6cd5e79533b5764a9d10d19e26b043a2d9c98a4384a7e1c2859c4')
+
+prepare() {
+    cd "${srcdir}/inspircd-${pkgver}"
+    sed -i -e s/-lldap_r/-lldap/g src/modules/extra/m_ldap.cpp
+}
 
 build() {
-  cd "${srcdir}/inspircd-${pkgver}"
+    cd "${srcdir}/inspircd-${pkgver}"
 
-  ./configure \
-    --enable-extras=m_geoip.cpp \
-    --enable-extras=m_ldapauth.cpp \
-    --enable-extras=m_ldapoper.cpp \
+    ./configure \
+    --enable-extras=m_geo_maxmind.cpp \
+    --enable-extras=m_ldap.cpp \
     --enable-extras=m_mysql.cpp \
-    --enable-extras=m_regex_pcre.cpp \
+    --enable-extras=m_pgsql.cpp \
     --enable-extras=m_regex_posix.cpp \
-    --enable-extras=m_sqlite3.cpp
+    --enable-extras=m_regex_stdlib.cpp \
+    --enable-extras=m_regex_re2.cpp \
+    --enable-extras=m_regex_tre.cpp \
+    --enable-extras=m_sqlite3.cpp \
+    --enable-extras=m_ssl_gnutls.cpp \
+    --enable-extras=m_ssl_openssl.cpp \
+    --enable-extras=m_ssl_mbedtls.cpp \
+    --enable-extras=m_sslrehashsignal.cpp
 
-  ./configure \
+    ./configure \
     --uid=0 \
+    --gid=0 \
     --prefix=/usr/lib/inspircd \
     --binary-dir=/usr/bin \
     --module-dir=/usr/lib/inspircd/modules \
     --config-dir=/etc/inspircd \
     --data-dir=/var/lib/inspircd \
     --log-dir=/var/log/inspircd \
-    --enable-gnutls \
-    --enable-openssl \
-    --enable-epoll
-
-  make
+    --distribution-label=archlinux
+    make
 }
 
 package() {
-  install -Dm644 "${srcdir}"/inspircd.service "${pkgdir}"/usr/lib/systemd/system/inspircd.service
-  install -o141 -g141 -dm750 "${pkgdir}/var/log/inspircd" "${pkgdir}/var/lib/inspircd"
+    install -Dm644 "${srcdir}/$pkgname.service" "${pkgdir}"/usr/lib/systemd/system/inspircd.service
+    install -Dm644 "${srcdir}/$pkgname.sysusers" "$pkgdir/usr/lib/sysusers.d/$pkgname.conf"
+    install -dm750 "${pkgdir}/var/log/inspircd" "${pkgdir}/var/lib/inspircd"
 
-  cd "${srcdir}/inspircd-${pkgver}"
-  make DESTDIR="$pkgdir" install
+    cd "${srcdir}/inspircd-${pkgver}"
+    make DESTDIR="$pkgdir" install
 
-  mkdir -p "${pkgdir}"/usr/share/inspircd
-  mv "${pkgdir}"/etc/inspircd/examples "${pkgdir}"/usr/share/inspircd/examples
+    mkdir -p "${pkgdir}"/usr/share/inspircd
+    mv "${pkgdir}"/etc/inspircd/examples "${pkgdir}"/usr/share/inspircd/examples
 
-  rm -rf "${pkgdir}"/usr/lib/inspircd/logs
-  rm -rf "${pkgdir}"/usr/lib/inspircd/data
+    rm -rf "${pkgdir}"/usr/lib/inspircd/logs
+    rm -rf "${pkgdir}"/usr/lib/inspircd/data
 }
diff --git a/pcr/inspircd/inspircd.install b/pcr/inspircd/inspircd.install
index 997f72dcd0..4cd15f22d9 100644
--- a/pcr/inspircd/inspircd.install
+++ b/pcr/inspircd/inspircd.install
@@ -1,10 +1,6 @@
-create_user() {
-  getent group inspircd &>/dev/null || groupadd -r -g 141 inspircd >/dev/null
-  getent passwd inspircd &>/dev/null || useradd -r -u 141 -g inspircd -d /var/lib/inspircd -s /bin/false inspircd >/dev/null
-}
 
 post_install() {
-  create_user
+  getent passwd inspircd &>/dev/null && userdel inspircd
   echo '==> You will need to create a config file for inspircd'
   echo '==>   cp /usr/share/inspircd/examples/inspircd.conf.example /etc/inspircd/inspircd.conf'
   echo '==> You will need to change the pidfile. To do this you can insert the following into your config.'
@@ -12,10 +8,6 @@ post_install() {
   echo '==> Remember to use absolute paths in your config directory and not relative paths like you would do with a user-based inspircd install.'
 }
 
-post_upgrade() {
-  create_user
-}
-
 post_remove() {
   getent passwd inspircd &>/dev/null && userdel inspircd
 }
diff --git a/pcr/inspircd/inspircd.sysusers b/pcr/inspircd/inspircd.sysusers
new file mode 100644
index 0000000000..bd1d664843
--- /dev/null
+++ b/pcr/inspircd/inspircd.sysusers
@@ -0,0 +1,2 @@
+g inspircd /var/lib/inspircd
+u inspircd - "inspircd user" /var/lib/inspircd /bin/false
-- 
2.39.0

Attachment: signature.asc
Description: This is a digitally signed message part

_______________________________________________
Dev mailing list
[email protected]
https://lists.parabola.nu/mailman/listinfo/dev

Reply via email to