public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Andreas Sturmlechner" <asturm@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: kde-apps/akonadi/files/, kde-apps/akonadi/
Date: Tue, 16 Feb 2021 22:35:55 +0000 (UTC)	[thread overview]
Message-ID: <1613514925.8b744749e2562e7593b07b93c018d4e6cbd51986.asturm@gentoo> (raw)

commit:     8b744749e2562e7593b07b93c018d4e6cbd51986
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Tue Feb 16 22:25:09 2021 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Tue Feb 16 22:35:25 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8b744749

kde-apps/akonadi: Switch back mariadb -> mysql, use 'loose_' options

This is reverting commit 6b90510a (kde overlay), instead trying to fix
MySQL server settings while keeping MariaDB settings intact.

KDE-Bug: https://bugs.kde.org/show_bug.cgi?id=421922

Reported-by: Stephan Karacson <stkaopen <AT> gmx.at>
Thanks-to: Victor Mataré <vmatare+gbug <AT> posteo.de>
Thanks-to: Thomas Deutschmann <whissi <AT> gentoo.org>
Bug: https://bugs.gentoo.org/709812
Package-Manager: Portage-3.0.14, Repoman-3.0.2
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 kde-apps/akonadi/akonadi-20.12.2-r1.ebuild         | 39 +++++------
 .../files/akonadi-20.12.2-mysql8-conf.patch        | 75 ++++++++++++++++++++++
 2 files changed, 92 insertions(+), 22 deletions(-)

diff --git a/kde-apps/akonadi/akonadi-20.12.2-r1.ebuild b/kde-apps/akonadi/akonadi-20.12.2-r1.ebuild
index d01ba34d4e7..3c234d906ee 100644
--- a/kde-apps/akonadi/akonadi-20.12.2-r1.ebuild
+++ b/kde-apps/akonadi/akonadi-20.12.2-r1.ebuild
@@ -17,16 +17,19 @@ HOMEPAGE="https://community.kde.org/KDE_PIM/akonadi"
 LICENSE="LGPL-2.1+"
 SLOT="5"
 KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
-IUSE="+kaccounts +mariadb postgres sqlite tools xml"
+IUSE="+kaccounts +mysql postgres sqlite tools xml"
 
-REQUIRED_USE="|| ( mariadb postgres sqlite ) test? ( tools )"
+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[postgres?]
+	>=dev-qt/qtsql-${QTMIN}:5[mysql?,postgres?]
 	>=dev-qt/qtwidgets-${QTMIN}:5
 	>=dev-qt/qtxml-${QTMIN}:5
 	>=kde-frameworks/kconfig-${KFMIN}:5
@@ -45,7 +48,6 @@ COMMON_DEPEND="
 		>=kde-apps/kaccounts-integration-20.08.3:5
 		net-libs/accounts-qt
 	)
-	mariadb? ( >=dev-qt/qtsql-${QTMIN}:5[mysql] )
 	sqlite? (
 		dev-db/sqlite:3
 		>=dev-qt/qtsql-${QTMIN}:5=[sqlite]
@@ -58,24 +60,24 @@ DEPEND="${COMMON_DEPEND}
 	test? ( sys-apps/dbus )
 "
 RDEPEND="${COMMON_DEPEND}
-	mariadb? ( >=dev-db/mariadb-10.4:* )
+	mysql? ( virtual/mysql )
 	postgres? ( dev-db/postgresql )
 "
 
-# some akonadi tests time out, that probably needs more work as it's ~700 tests
-RESTRICT+=" test"
-
-PATCHES=( "${FILESDIR}/${PN}-18.12.2-mysql56-crash.patch" )
+PATCHES=(
+	"${FILESDIR}/${PN}-18.12.2-mysql56-crash.patch"
+	"${FILESDIR}/${P}-mysql8-conf.patch" # bug 709812
+)
 
 pkg_setup() {
-	# Set default storage backend in order: MariaDB, PostgreSQL, SQLite
+	# Set default storage backend in order: MySQL, PostgreSQL, SQLite
 	# reverse driver check to keep the order
 	use sqlite && DRIVER="QSQLITE3"
 	use postgres && DRIVER="QPSQL"
-	use mariadb && DRIVER="QMYSQL"
+	use mysql && DRIVER="QMYSQL"
 
-	if use mariadb && has_version ">=dev-db/mariadb-10.4"; then
-		ewarn "If an existing Akonadi MariaDB database is being upgraded using"
+	if use mysql && has_version ">=dev-db/mariadb-10.4"; then
+		ewarn "If an existing Akonadi QMYSQL database is being upgraded using"
 		ewarn ">=dev-db/mariadb-10.4 and KMail stops fetching and sending mail,"
 		ewarn "check ~/.local/share/akonadi/akonadiserver.error for errors like:"
 		ewarn "  \"Cannot add or update a child row: a foreign key constraint fails\""
@@ -88,17 +90,10 @@ pkg_setup() {
 
 	if use sqlite || has_version "<${CATEGORY}/${P}[sqlite]"; then
 		ewarn "We strongly recommend you change your Akonadi database backend to"
-		ewarn "either MariaDB or PostgreSQL in your user configuration."
+		ewarn "either MariaDB/MySQL or PostgreSQL in your user configuration."
 		ewarn "In particular, kde-apps/kmail does not work properly with the sqlite backend."
 	fi
 
-	if has_version "kde-apps/akonadi[mysql]"; then
-		ewarn "Due to configuration incompatibilities we are unable to provide"
-		ewarn "the option to use dev-db/mysql. You must switch to dev-db/mariadb."
-		ewarn "  https://bugs.gentoo.org/709812"
-		ewarn "  https://bugs.kde.org/show_bug.cgi?id=421922"
-	fi
-
 	ecm_pkg_setup
 }
 
@@ -130,7 +125,7 @@ pkg_postinst() {
 	ecm_pkg_postinst
 	elog "You can select the storage backend in ~/.config/akonadi/akonadiserverrc."
 	elog "Available drivers are:"
-	use mariadb && elog "  QMYSQL"
+	use mysql && elog "  QMYSQL"
 	use postgres && elog "  QPSQL"
 	use sqlite && elog "  QSQLITE3"
 	elog "${DRIVER} has been set as your default akonadi storage backend."

diff --git a/kde-apps/akonadi/files/akonadi-20.12.2-mysql8-conf.patch b/kde-apps/akonadi/files/akonadi-20.12.2-mysql8-conf.patch
new file mode 100644
index 00000000000..8edf9d605dd
--- /dev/null
+++ b/kde-apps/akonadi/files/akonadi-20.12.2-mysql8-conf.patch
@@ -0,0 +1,75 @@
+From 9c666d0d6039a87f6286014c7d9c7281a5bd9dd1 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Tue, 16 Feb 2021 21:38:14 +0100
+Subject: [PATCH] MySQL server settings: Make use of 'loose_' option prefix
+
+Idea by one of the Gentoo MySQL maintainers. This makes MySQL skip over
+unsupported options rather than fail, which is important with >=MySQL-8.
+
+See also:
+https://dev.mysql.com/doc/refman/8.0/en/option-files.html#option-file-syntax
+https://mariadb.com/kb/en/configuring-mariadb-with-option-files/#option-prefixes
+
+BUG: 421922
+
+Thanks-to: Thomas Deutschmann <whissi@gentoo.org>
+---
+ src/server/storage/mysql-global-mobile.conf | 6 +++---
+ src/server/storage/mysql-global.conf        | 6 +++---
+ 2 files changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/src/server/storage/mysql-global-mobile.conf b/src/server/storage/mysql-global-mobile.conf
+index 19649d347..48e150af7 100644
+--- a/src/server/storage/mysql-global-mobile.conf
++++ b/src/server/storage/mysql-global-mobile.conf
+@@ -65,7 +65,7 @@ innodb_large_prefix=1
+ log_error=mysql.err
+ 
+ # print warnings and connection errors (default:1)
+-log_warnings=2
++loose_log_warnings=2
+ 
+ # Convert table named to lowercase
+ lower_case_table_names=1
+@@ -80,10 +80,10 @@ max_connections=256
+ # (make sense when having the same query multiple times)
+ 
+ # Memory allocated for caching query results (default:0 (disabled))
+-query_cache_size=0
++loose_query_cache_size=0
+ 
+ # Do not cache results (default:1)
+-query_cache_type=0
++loose_query_cache_type=0
+ 
+ # Do not use the privileges mechanisms
+ skip_grant_tables
+diff --git a/src/server/storage/mysql-global.conf b/src/server/storage/mysql-global.conf
+index ab4a4a1e3..b67a4ec1e 100644
+--- a/src/server/storage/mysql-global.conf
++++ b/src/server/storage/mysql-global.conf
+@@ -62,7 +62,7 @@ innodb_log_file_size=64M
+ log_error=mysql.err
+ 
+ # print warnings and connection errors (default:1)
+-log_warnings=2
++loose_log_warnings=2
+ 
+ # Convert table named to lowercase
+ lower_case_table_names=1
+@@ -77,10 +77,10 @@ max_connections=256
+ # (make sense when having the same query multiple times)
+ 
+ # Memory allocated for caching query results (default:0 (disabled))
+-query_cache_size=0
++loose_query_cache_size=0
+ 
+ # Do not cache results (default:1)
+-query_cache_type=0
++loose_query_cache_type=0
+ 
+ # Do not use the privileges mechanisms
+ skip_grant_tables
+-- 
+2.30.1
+


             reply	other threads:[~2021-02-16 22:35 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-02-16 22:35 Andreas Sturmlechner [this message]
  -- strict thread matches above, loose matches on Subject: below --
2021-04-04 19:53 [gentoo-commits] repo/gentoo:master commit in: kde-apps/akonadi/files/, kde-apps/akonadi/ Andreas Sturmlechner
2019-07-26 16:43 Andreas Sturmlechner
2019-04-03 12:02 Andreas Sturmlechner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1613514925.8b744749e2562e7593b07b93c018d4e6cbd51986.asturm@gentoo \
    --to=asturm@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox