summaryrefslogtreecommitdiff
path: root/kde-apps/akonadi-config
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-12-13 02:01:50 +0000
committerV3n3RiX <venerix@koprulu.sector>2024-12-13 02:01:50 +0000
commit2a3e0d61b3d88306b6fae46756f9ba7d230222ae (patch)
treea0d3259dd259861a49a2d3e6e9220beaa8ec39c2 /kde-apps/akonadi-config
parent39c32f4d5dca9f6293fccb69e9d50baf494c8de4 (diff)
gentoo auto-resync : 13:12:2024 - 02:01:50
Diffstat (limited to 'kde-apps/akonadi-config')
-rw-r--r--kde-apps/akonadi-config/Manifest2
-rw-r--r--kde-apps/akonadi-config/akonadi-config-0.ebuild78
-rw-r--r--kde-apps/akonadi-config/metadata.xml8
3 files changed, 88 insertions, 0 deletions
diff --git a/kde-apps/akonadi-config/Manifest b/kde-apps/akonadi-config/Manifest
new file mode 100644
index 000000000000..23929c268c16
--- /dev/null
+++ b/kde-apps/akonadi-config/Manifest
@@ -0,0 +1,2 @@
+EBUILD akonadi-config-0.ebuild 2527 BLAKE2B 62c607b19e56ce7a3917c95a3c7ca7be1b02d194174a60ba04d754302840b4ed5f47c7382b792c3150cf3ea41a124f8e5e3e248c8079cee5aa49da5b6dca9e54 SHA512 0459453cbbf1c978342466f6d9f9e93435bf06ab03ca610cc72597e90960f5ebd5ff13d1ef06041d4360ad192b17cadb8050dfe872da2d8f92e26d7960761cdc
+MISC metadata.xml 250 BLAKE2B f3e9395137ebb9adf46cd35c1b6156f82c04cfa94f964f6da24fe71eb560cf51b4f70ebfa10daaa4884400ec22782d819ab794dfd29e7a47559f07208397195d SHA512 78c4ff15eed76ba883b457be95dabd41e928a0e64a42b758b5eab4d8a95afca27d5ea6a7cfe0948de578b169153a05f08aadfce1ddd41a88732212a1e76e565f
diff --git a/kde-apps/akonadi-config/akonadi-config-0.ebuild b/kde-apps/akonadi-config/akonadi-config-0.ebuild
new file mode 100644
index 000000000000..2a1bd50b1df6
--- /dev/null
+++ b/kde-apps/akonadi-config/akonadi-config-0.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit optfeature
+
+DESCRIPTION="Default Akonadi storage backend configuration"
+HOMEPAGE="https://userbase.kde.org/Tutorials/Shared_Database#Akonadi"
+S=${WORKDIR}
+
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="+mysql postgres sqlite"
+
+REQUIRED_USE="|| ( mysql postgres sqlite )"
+
+RDEPEND="
+ !<kde-apps/akonadi-24.11.80
+ dev-qt/qtbase:6[mysql?,postgres?,sqlite?]
+ mysql? ( virtual/mysql )
+ postgres? ( dev-db/postgresql )
+"
+
+pkg_pretend() {
+ if [[ -n "${REPLACING_VERSIONS}" ]] || ! has_version "kde-apps/akonadi"; then
+ return
+ fi
+ for backend in sqlite postgres mysql; do
+ if ! use ${backend} && has_version "kde-apps/akonadi[${backend}]"; then
+ ewarn "Potential upgrade issue detected!"
+ ewarn "Previously: kde-apps/akonadi[${backend}] *** enabled ***"
+ ewarn "Now: kde-apps/akonadi-config[${backend}] *** disabled ***"
+ ewarn "Make sure any Akonadi user storage backends in ~/.config/akonadi/akonadiserverrc"
+ ewarn "have been migrated accordingly. To migrate an existing backend to a different"
+ ewarn "driver, run \`akonadi-db-migrator --newengine sqlite|mysql|postgres\`"
+ ewarn "To succeed, both drivers need to be enabled in dev-qt/qtbase USE - it is *not*"
+ ewarn "necessary to downgrade kde-apps/akonadi if you learn about this after upgrading."
+ fi
+ done
+}
+
+pkg_setup() {
+ # Set default storage backend in order: MySQL, SQLite, PostgreSQL
+ # reverse driver check to keep the order
+ use postgres && DRIVER="QPSQL"
+ use sqlite && DRIVER="QSQLITE"
+ use mysql && DRIVER="QMYSQL"
+}
+
+src_unpack() { :; }
+src_configure() { :; }
+src_compile() { :; }
+
+src_install() {
+ # Who knows, maybe it accidentally fixes our permission issues
+ cat <<-EOF > "${T}"/akonadiserverrc || die
+ [%General]
+ Driver=${DRIVER}
+ EOF
+ insinto /usr/share/config/akonadi
+ doins "${T}"/akonadiserverrc
+}
+
+pkg_postinst() {
+ elog "You can select the storage backend in ~/.config/akonadi/akonadiserverrc."
+ elog "Available drivers (by enabled USE flags) are:"
+ use mysql && elog " QMYSQL"
+ use sqlite && elog " QSQLITE"
+ use postgres && elog " QPSQL"
+ elog "${DRIVER} has been set as your default akonadi storage backend."
+ elog
+ optfeature_header "The following optional database backends exist:"
+ optfeature "SQLite backend support" "${CATEGORY}/${PN}[sqlite]"
+ optfeature "MySQL backend support" "${CATEGORY}/${PN}[mysql]"
+ optfeature "PostgreSQL backend support" "${CATEGORY}/${PN}[postgres]"
+}
diff --git a/kde-apps/akonadi-config/metadata.xml b/kde-apps/akonadi-config/metadata.xml
new file mode 100644
index 000000000000..8641e5bdd399
--- /dev/null
+++ b/kde-apps/akonadi-config/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>kde@gentoo.org</email>
+ <name>Gentoo KDE Project</name>
+ </maintainer>
+</pkgmetadata>