aboutsummaryrefslogtreecommitdiffstats
path: root/community
diff options
context:
space:
mode:
authortcely <tcely@users.noreply.github.com>2019-04-10 22:52:24 -0400
committerLeonardo Arena <rnalrd@alpinelinux.org>2019-04-11 13:26:13 +0000
commita8a18464a9bc392c03fa9b563cbcb5cdf1105aa0 (patch)
treedd494f935772e56313824d2e3aa9ff5c94cb52ae /community
parente55add6d9e7832ad0f73837d53edb05d87b818d6 (diff)
downloadaports-a8a18464a9bc392c03fa9b563cbcb5cdf1105aa0.tar.bz2
aports-a8a18464a9bc392c03fa9b563cbcb5cdf1105aa0.tar.xz
community/quassel: fix quasselcore deficiencies
- split out monolithic client - quassel-core needs DB plugins - Qt Cryptography Architecture - LDAP support - move -openrc to quassel-core - do not build directly under srcdir - keep metapackage empty - simpler -core.pre-install script
Diffstat (limited to 'community')
-rw-r--r--community/quassel/APKBUILD102
-rw-r--r--community/quassel/quassel-core.pre-install3
2 files changed, 78 insertions, 27 deletions
diff --git a/community/quassel/APKBUILD b/community/quassel/APKBUILD
index 7fde84fdca..66842f1b35 100644
--- a/community/quassel/APKBUILD
+++ b/community/quassel/APKBUILD
@@ -2,42 +2,56 @@
pkgname=quassel
pkgver=0.13.1
-pkgrel=0
+pkgrel=1
url="https://www.quassel-irc.org/"
pkgdesc="Distributed IRC client - metapackage"
arch="all"
license="GPL"
options="!check"
-install="quassel-core.pre-install"
-depends="quassel-common"
-makedepends="qt5-qtbase-dev qt5-qtscript-dev cmake dbus-dev openssl-dev paxmark
- zlib-dev"
-subpackages="$pkgname-common::noarch $pkgname-core $pkgname-openrc $pkgname-client"
-source="https://www.quassel-irc.org/pub/quassel-$pkgver.tar.bz2
- quasselcore.confd
- quasselcore.initd"
+install="$pkgname-core.pre-install"
+pkgusers="quassel"
+pkggroups="quassel"
+depends="$pkgname-mono"
+depends_common=""
+depends_client="$pkgname-common"
+depends_mono="$pkgname-common"
+depends_server="$pkgname-common qt5-qtbase-postgresql qt5-qtbase-sqlite"
+depends_server_openrc=""
+makedepends="cmake paxmark dbus-dev openldap-dev openssl-dev
+ qca-dev qt5-qtbase-dev qt5-qtscript-dev zlib-dev
+ "
+source="https://www.quassel-irc.org/pub/$pkgname-$pkgver.tar.bz2
+ quasselcore.confd
+ quasselcore.initd
+ "
+subpackages="$pkgname-common::noarch
+ $pkgname-core:server $pkgname-core-openrc:server_openrc
+ $pkgname-client $pkgname-mono
+ "
+builddir="$srcdir/$pkgname-$pkgver"
build() {
- cd "$srcdir"
+ cd "$builddir"
mkdir build
cd build
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/ \
- -DWITH_KDE=0 \
-DCMAKE_BUILD_TYPE="Release" \
+ -DUSE_QT4=OFF \
-DWANT_CORE=ON \
-DWANT_MONO=ON \
-DWANT_QTCLIENT=ON \
+ -DWITH_KDE=0 \
-DWITH_WEBKIT=OFF \
- -DUSE_QT4=OFF \
- ../quassel-$pkgver/
+ ../
make
}
package() {
- cd "$srcdir"/build
- make DESTDIR="$pkgdir" install/fast
+ cd "$builddir"
+
+ make -C build DESTDIR="$pkgdir" install/fast
paxmark -m "$pkgdir"/usr/bin/quasselcore
install -Dm0644 "$srcdir"/quasselcore.confd \
@@ -48,29 +62,67 @@ package() {
common() {
pkgdesc="Quassel common/shared files"
- depends=
+ depends="$depends_common"
+
mkdir -p "$subpkgdir"/usr/share
- mv "$pkgdir"/usr/share/icons \
+ mv \
+ "$pkgdir"/usr/share/icons \
+ "$pkgdir"/usr/share/pixmaps \
+ "$pkgdir"/usr/share/$pkgname \
"$subpkgdir"/usr/share
+
+ rmdir 2>/dev/null "$pkgdir"/usr/share/icons || :
+ rmdir 2>/dev/null "$pkgdir"/usr/share/pixmaps || :
+ rmdir 2>/dev/null "$pkgdir"/usr/share/$pkgname || :
+ rmdir 2>/dev/null "$pkgdir"/usr/share || :
+ rmdir 2>/dev/null "$pkgdir"/usr || :
}
-core() {
- pkgdesc="Core component of distributed IRC client"
- depends="$pkgname-common"
+server() {
+ pkgdesc="Quassel core / server"
+ depends="$depends_server"
+
mkdir -p "$subpkgdir"/usr/bin
mv "$pkgdir"/usr/bin/quasselcore "$subpkgdir"/usr/bin/
}
+server_openrc() {
+ pkgdesc="Quassel core / server"
+
+ default_openrc
+ rmdir 2>/dev/null "$pkgdir"/etc || :
+
+ depends="$depends_server_openrc"
+ install_if="openrc $pkgname-core=$pkgver-r$pkgrel"
+}
+
client() {
pkgdesc="Quassel client"
- depends="$pkgname-common"
+ depends="$depends_client"
+
mkdir -p "$subpkgdir"/usr/bin \
- "$subpkgdir"/usr/share/
+ "$subpkgdir"/usr/share/applications
mv "$pkgdir"/usr/bin/quasselclient "$subpkgdir"/usr/bin/
- mv "$pkgdir"/usr/share/pixmaps \
- "$pkgdir"/usr/share/applications \
- "$subpkgdir"/usr/share/
+ mv "$pkgdir"/usr/share/applications/quasselclient.desktop \
+ "$subpkgdir"/usr/share/applications
+}
+
+mono() {
+ pkgdesc="Quassel monolithic IRC client"
+ depends="$depends_mono"
+
+ mkdir -p "$subpkgdir"/usr/bin \
+ "$subpkgdir"/usr/share/applications
+ mv "$pkgdir"/usr/bin/quassel "$subpkgdir"/usr/bin/
+ mv "$pkgdir"/usr/share/applications/quassel.desktop \
+ "$subpkgdir"/usr/share/applications
+
+ rmdir 2>/dev/null "$pkgdir"/usr/share/applications || :
+ rmdir 2>/dev/null "$pkgdir"/usr/share || :
+ rmdir 2>/dev/null "$pkgdir"/usr/bin || :
+ rmdir 2>/dev/null "$pkgdir"/usr || :
}
+
sha512sums="4ed55e81b1638c8851ddae5d9c9d23a1c2cea92f307e19f426873c2600d8e183898d3ed7c290f2ea5d1b8c5e1be7f9ffcc3e8c3c0193d080fc879b10cc3a962c quassel-0.13.1.tar.bz2
e03df342f47945f948106883a7757262ab7a8a7d21f0b4dd01cfcc95e836c2e00f2e0177a353b4f7a4b6f80ffa970be06d49aa9a42cad1f3834382267e5a0d7f quasselcore.confd
a7181ea28d821e39c005aaaaeed821f815371f76c2e98bd5935013bb9a0ba0ab6fce9c202bab6be3eaa7895773150fc5832ea3ce9050dbea73d6db514f51da6a quasselcore.initd"
diff --git a/community/quassel/quassel-core.pre-install b/community/quassel/quassel-core.pre-install
index bbfc977182..8a8491bc28 100644
--- a/community/quassel/quassel-core.pre-install
+++ b/community/quassel/quassel-core.pre-install
@@ -1,7 +1,6 @@
#!/bin/sh
-adduser -S -D -h /var/lib/quassel -s /sbin/nologin -g quassel quassel 2>/dev/null
addgroup -S quassel 2>/dev/null
-addgroup quassel quassel
+adduser -S -D -h /var/lib/quassel -s /sbin/nologin -G quassel -g quassel quassel 2>/dev/null
exit 0