summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--kde-apps/akonadi/Manifest1
-rw-r--r--kde-apps/akonadi/akonadi-23.08.5.ebuild115
2 files changed, 116 insertions, 0 deletions
diff --git a/kde-apps/akonadi/Manifest b/kde-apps/akonadi/Manifest
index f33adb0dcdad..622be3514e74 100644
--- a/kde-apps/akonadi/Manifest
+++ b/kde-apps/akonadi/Manifest
@@ -1 +1,2 @@
DIST akonadi-23.08.4.tar.xz 1662596 BLAKE2B 194ece7916ff6349f69c50263a02a09bd3c209eb38956d9be385e883fe38f93399d265a1d5f3004f14cd45eb503892320f9ddfc7d0f1e7df9ee8eda54e683df7 SHA512 14094d320df5c0c512ce0da4ed94a3e1332c87e9abf7cc059b7cfcc2ee55efaea91e5c26817e1f1b3c0b2de79701a56ae81ac84ec54f0fd32a9099e2b09e94fe
+DIST akonadi-23.08.5.tar.xz 1662512 BLAKE2B 4e52e2b09e7f0376f7d63fdb590ba0372eb515b7f033d97d8fb76e1e85f9b598775936828d8c9b524807824d88cc9de93ea0efc445009e96f361f754ccd96d44 SHA512 3c1e851b519d8808b7be95b980d362eb525ec61ed06122be3795ba6b6a831aa80c77d799608686a49716a98a8bb9300e70f1c82cfe1de061cdc0af5ad9f30247
diff --git a/kde-apps/akonadi/akonadi-23.08.5.ebuild b/kde-apps/akonadi/akonadi-23.08.5.ebuild
new file mode 100644
index 000000000000..21d32d46c849
--- /dev/null
+++ b/kde-apps/akonadi/akonadi-23.08.5.ebuild
@@ -0,0 +1,115 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+ECM_DESIGNERPLUGIN="true"
+ECM_QTHELP="true"
+ECM_TEST="forceoptional"
+KFMIN=5.106.0
+QTMIN=5.15.9
+VIRTUALDBUS_TEST="true"
+inherit ecm gear.kde.org readme.gentoo-r1
+
+DESCRIPTION="Storage service for PIM data and libraries for PIM apps"
+HOMEPAGE="https://community.kde.org/KDE_PIM/akonadi"
+
+LICENSE="LGPL-2.1+"
+SLOT="5"
+KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv ~x86"
+IUSE="+kaccounts +mysql postgres sqlite tools xml"
+
+REQUIRED_USE="|| ( mysql postgres sqlite ) test? ( tools )"
+
+# some akonadi tests time out, that probably needs more work as it's ~700 tests
+RESTRICT="test"
+
+COMMON_DEPEND="
+ app-arch/xz-utils
+ >=dev-qt/qtdbus-${QTMIN}:5
+ >=dev-qt/qtgui-${QTMIN}:5
+ >=dev-qt/qtnetwork-${QTMIN}:5
+ >=dev-qt/qtsql-${QTMIN}:5[mysql?,postgres?,sqlite?]
+ >=dev-qt/qtwidgets-${QTMIN}:5
+ >=dev-qt/qtxml-${QTMIN}:5
+ >=kde-frameworks/kconfig-${KFMIN}:5
+ >=kde-frameworks/kconfigwidgets-${KFMIN}:5
+ >=kde-frameworks/kcoreaddons-${KFMIN}:5
+ >=kde-frameworks/kcrash-${KFMIN}:5
+ >=kde-frameworks/ki18n-${KFMIN}:5
+ >=kde-frameworks/kiconthemes-${KFMIN}:5
+ >=kde-frameworks/kio-${KFMIN}:5
+ >=kde-frameworks/kitemmodels-${KFMIN}:5
+ >=kde-frameworks/kwidgetsaddons-${KFMIN}:5
+ >=kde-frameworks/kxmlgui-${KFMIN}:5
+ kaccounts? (
+ || (
+ kde-apps/kaccounts-integration:6[qt5]
+ kde-apps/kaccounts-integration:5
+ )
+ >=net-libs/accounts-qt-1.16[qt5(+)]
+ )
+ xml? ( dev-libs/libxml2 )
+"
+DEPEND="${COMMON_DEPEND}
+ dev-libs/libxslt
+ test? ( sys-apps/dbus )
+"
+RDEPEND="${COMMON_DEPEND}
+ mysql? ( virtual/mysql )
+ postgres? ( dev-db/postgresql )
+"
+
+PATCHES=( "${FILESDIR}/${PN}-21.03.80-mysql56-crash.patch" )
+
+pkg_setup() {
+ # Set default storage backend in order: MySQL, PostgreSQL, SQLite
+ # reverse driver check to keep the order
+ use sqlite && DRIVER="QSQLITE"
+ use postgres && DRIVER="QPSQL"
+ use mysql && DRIVER="QMYSQL"
+
+ if use mysql && has_version "${CATEGORY}/${PN}[mysql]" && has_version "dev-db/mariadb"; then
+ ewarn
+ ewarn "Attention: Make sure to read README.gentoo after install."
+ ewarn
+ fi
+
+ ecm_pkg_setup
+}
+
+src_configure() {
+ local mycmakeargs=(
+ $(cmake_use_find_package kaccounts AccountsQt5)
+ $(cmake_use_find_package kaccounts KAccounts)
+ -DBUILD_TOOLS=$(usex tools)
+ $(cmake_use_find_package xml LibXml2)
+ )
+
+ ecm_src_configure
+}
+
+src_install() {
+ # Who knows, maybe it accidentally fixes our permission issues
+ cat <<-EOF > "${T}"/akonadiserverrc
+[%General]
+Driver=${DRIVER}
+EOF
+ insinto /usr/share/config/akonadi
+ doins "${T}"/akonadiserverrc
+
+ ecm_src_install
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ ecm_pkg_postinst
+ elog "You can select the storage backend in ~/.config/akonadi/akonadiserverrc."
+ elog "Available drivers are:"
+ use mysql && elog " QMYSQL"
+ use postgres && elog " QPSQL"
+ use sqlite && elog " QSQLITE"
+ elog "${DRIVER} has been set as your default akonadi storage backend."
+ use mysql && elog
+ use mysql && FORCE_PRINT_ELOG=1 readme.gentoo_print_elog
+}