1 |
commit: 6b90510ab328d1bdbba167d9ccd4c6ba0cb4bfed |
2 |
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> |
3 |
AuthorDate: Fri Dec 25 21:36:01 2020 +0000 |
4 |
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> |
5 |
CommitDate: Fri Dec 25 21:41:15 2020 +0000 |
6 |
URL: https://gitweb.gentoo.org/proj/kde.git/commit/?id=6b90510a |
7 |
|
8 |
kde-apps/akonadi: Switch QMYSQL from virtual/mysql -> dev-db/mariadb |
9 |
|
10 |
Bug: https://bugs.gentoo.org/709812 |
11 |
Package-Manager: Portage-3.0.12, Repoman-3.0.2 |
12 |
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org> |
13 |
|
14 |
kde-apps/akonadi/akonadi-20.12.49.9999.ebuild | 30 +++++++++++++++++---------- |
15 |
kde-apps/akonadi/akonadi-9999.ebuild | 30 +++++++++++++++++---------- |
16 |
kde-apps/akonadi/metadata.xml | 1 + |
17 |
3 files changed, 39 insertions(+), 22 deletions(-) |
18 |
|
19 |
diff --git a/kde-apps/akonadi/akonadi-20.12.49.9999.ebuild b/kde-apps/akonadi/akonadi-20.12.49.9999.ebuild |
20 |
index f452132cba..71e0c4e882 100644 |
21 |
--- a/kde-apps/akonadi/akonadi-20.12.49.9999.ebuild |
22 |
+++ b/kde-apps/akonadi/akonadi-20.12.49.9999.ebuild |
23 |
@@ -18,16 +18,16 @@ HOMEPAGE="https://community.kde.org/KDE_PIM/akonadi" |
24 |
LICENSE="LGPL-2.1+" |
25 |
SLOT="5" |
26 |
KEYWORDS="" |
27 |
-IUSE="+kaccounts +mysql postgres sqlite tools xml" |
28 |
+IUSE="+kaccounts +mariadb postgres sqlite tools xml" |
29 |
|
30 |
-REQUIRED_USE="|| ( mysql postgres sqlite ) test? ( tools )" |
31 |
+REQUIRED_USE="|| ( mariadb postgres sqlite ) test? ( tools )" |
32 |
|
33 |
COMMON_DEPEND=" |
34 |
app-arch/xz-utils |
35 |
>=dev-qt/qtdbus-${QTMIN}:5 |
36 |
>=dev-qt/qtgui-${QTMIN}:5 |
37 |
>=dev-qt/qtnetwork-${QTMIN}:5 |
38 |
- >=dev-qt/qtsql-${QTMIN}:5[mysql?,postgres?] |
39 |
+ >=dev-qt/qtsql-${QTMIN}:5[postgres?] |
40 |
>=dev-qt/qtwidgets-${QTMIN}:5 |
41 |
>=dev-qt/qtxml-${QTMIN}:5 |
42 |
>=kde-frameworks/kconfig-${KFMIN}:5 |
43 |
@@ -46,6 +46,7 @@ COMMON_DEPEND=" |
44 |
>=kde-apps/kaccounts-integration-${PVCUT}:5 |
45 |
net-libs/accounts-qt |
46 |
) |
47 |
+ mariadb? ( >=dev-qt/qtsql-${QTMIN}:5[mysql] ) |
48 |
sqlite? ( |
49 |
dev-db/sqlite:3 |
50 |
>=dev-qt/qtsql-${QTMIN}:5=[sqlite] |
51 |
@@ -58,7 +59,7 @@ DEPEND="${COMMON_DEPEND} |
52 |
test? ( sys-apps/dbus ) |
53 |
" |
54 |
RDEPEND="${COMMON_DEPEND} |
55 |
- mysql? ( virtual/mysql ) |
56 |
+ mariadb? ( >=dev-db/mariadb-10.4:* ) |
57 |
postgres? ( dev-db/postgresql ) |
58 |
" |
59 |
|
60 |
@@ -68,14 +69,14 @@ RESTRICT+=" test" |
61 |
PATCHES=( "${FILESDIR}/${PN}-18.12.2-mysql56-crash.patch" ) |
62 |
|
63 |
pkg_setup() { |
64 |
- # Set default storage backend in order: MySQL, PostgreSQL, SQLite |
65 |
+ # Set default storage backend in order: MariaDB, PostgreSQL, SQLite |
66 |
# reverse driver check to keep the order |
67 |
use sqlite && DRIVER="QSQLITE3" |
68 |
use postgres && DRIVER="QPSQL" |
69 |
- use mysql && DRIVER="QMYSQL" |
70 |
+ use mariadb && DRIVER="QMYSQL" |
71 |
|
72 |
- if use mysql && has_version ">=dev-db/mariadb-10.4"; then |
73 |
- ewarn "If an existing Akonadi QMYSQL database is being upgraded using" |
74 |
+ if use mariadb && has_version ">=dev-db/mariadb-10.4"; then |
75 |
+ ewarn "If an existing Akonadi MariaDB database is being upgraded using" |
76 |
ewarn ">=dev-db/mariadb-10.4 and KMail stops fetching and sending mail," |
77 |
ewarn "check ~/.local/share/akonadi/akonadiserver.error for errors like:" |
78 |
ewarn " \"Cannot add or update a child row: a foreign key constraint fails\"" |
79 |
@@ -87,11 +88,18 @@ pkg_setup() { |
80 |
fi |
81 |
|
82 |
if use sqlite || has_version "<${CATEGORY}/${P}[sqlite]"; then |
83 |
- ewarn "We strongly recommend you change your Akonadi database backend to either MySQL" |
84 |
- ewarn "or PostgreSQL in your user configuration." |
85 |
+ ewarn "We strongly recommend you change your Akonadi database backend to" |
86 |
+ ewarn "either MariaDB or PostgreSQL in your user configuration." |
87 |
ewarn "In particular, kde-apps/kmail does not work properly with the sqlite backend." |
88 |
fi |
89 |
|
90 |
+ if has_version "kde-apps/akonadi[mysql]" && has_version "dev-db/mysql"; then |
91 |
+ ewarn "Due to configuration incompatibilities we are unable to provide" |
92 |
+ ewarn "the option to use dev-db/mysql. You must switch to dev-db/mariadb." |
93 |
+ ewarn " https://bugs.gentoo.org/709812" |
94 |
+ ewarn " https://bugs.kde.org/show_bug.cgi?id=421922" |
95 |
+ fi |
96 |
+ |
97 |
ecm_pkg_setup |
98 |
} |
99 |
|
100 |
@@ -123,7 +131,7 @@ pkg_postinst() { |
101 |
ecm_pkg_postinst |
102 |
elog "You can select the storage backend in ~/.config/akonadi/akonadiserverrc." |
103 |
elog "Available drivers are:" |
104 |
- use mysql && elog " QMYSQL" |
105 |
+ use mariadb && elog " QMYSQL" |
106 |
use postgres && elog " QPSQL" |
107 |
use sqlite && elog " QSQLITE3" |
108 |
elog "${DRIVER} has been set as your default akonadi storage backend." |
109 |
|
110 |
diff --git a/kde-apps/akonadi/akonadi-9999.ebuild b/kde-apps/akonadi/akonadi-9999.ebuild |
111 |
index f452132cba..71e0c4e882 100644 |
112 |
--- a/kde-apps/akonadi/akonadi-9999.ebuild |
113 |
+++ b/kde-apps/akonadi/akonadi-9999.ebuild |
114 |
@@ -18,16 +18,16 @@ HOMEPAGE="https://community.kde.org/KDE_PIM/akonadi" |
115 |
LICENSE="LGPL-2.1+" |
116 |
SLOT="5" |
117 |
KEYWORDS="" |
118 |
-IUSE="+kaccounts +mysql postgres sqlite tools xml" |
119 |
+IUSE="+kaccounts +mariadb postgres sqlite tools xml" |
120 |
|
121 |
-REQUIRED_USE="|| ( mysql postgres sqlite ) test? ( tools )" |
122 |
+REQUIRED_USE="|| ( mariadb postgres sqlite ) test? ( tools )" |
123 |
|
124 |
COMMON_DEPEND=" |
125 |
app-arch/xz-utils |
126 |
>=dev-qt/qtdbus-${QTMIN}:5 |
127 |
>=dev-qt/qtgui-${QTMIN}:5 |
128 |
>=dev-qt/qtnetwork-${QTMIN}:5 |
129 |
- >=dev-qt/qtsql-${QTMIN}:5[mysql?,postgres?] |
130 |
+ >=dev-qt/qtsql-${QTMIN}:5[postgres?] |
131 |
>=dev-qt/qtwidgets-${QTMIN}:5 |
132 |
>=dev-qt/qtxml-${QTMIN}:5 |
133 |
>=kde-frameworks/kconfig-${KFMIN}:5 |
134 |
@@ -46,6 +46,7 @@ COMMON_DEPEND=" |
135 |
>=kde-apps/kaccounts-integration-${PVCUT}:5 |
136 |
net-libs/accounts-qt |
137 |
) |
138 |
+ mariadb? ( >=dev-qt/qtsql-${QTMIN}:5[mysql] ) |
139 |
sqlite? ( |
140 |
dev-db/sqlite:3 |
141 |
>=dev-qt/qtsql-${QTMIN}:5=[sqlite] |
142 |
@@ -58,7 +59,7 @@ DEPEND="${COMMON_DEPEND} |
143 |
test? ( sys-apps/dbus ) |
144 |
" |
145 |
RDEPEND="${COMMON_DEPEND} |
146 |
- mysql? ( virtual/mysql ) |
147 |
+ mariadb? ( >=dev-db/mariadb-10.4:* ) |
148 |
postgres? ( dev-db/postgresql ) |
149 |
" |
150 |
|
151 |
@@ -68,14 +69,14 @@ RESTRICT+=" test" |
152 |
PATCHES=( "${FILESDIR}/${PN}-18.12.2-mysql56-crash.patch" ) |
153 |
|
154 |
pkg_setup() { |
155 |
- # Set default storage backend in order: MySQL, PostgreSQL, SQLite |
156 |
+ # Set default storage backend in order: MariaDB, PostgreSQL, SQLite |
157 |
# reverse driver check to keep the order |
158 |
use sqlite && DRIVER="QSQLITE3" |
159 |
use postgres && DRIVER="QPSQL" |
160 |
- use mysql && DRIVER="QMYSQL" |
161 |
+ use mariadb && DRIVER="QMYSQL" |
162 |
|
163 |
- if use mysql && has_version ">=dev-db/mariadb-10.4"; then |
164 |
- ewarn "If an existing Akonadi QMYSQL database is being upgraded using" |
165 |
+ if use mariadb && has_version ">=dev-db/mariadb-10.4"; then |
166 |
+ ewarn "If an existing Akonadi MariaDB database is being upgraded using" |
167 |
ewarn ">=dev-db/mariadb-10.4 and KMail stops fetching and sending mail," |
168 |
ewarn "check ~/.local/share/akonadi/akonadiserver.error for errors like:" |
169 |
ewarn " \"Cannot add or update a child row: a foreign key constraint fails\"" |
170 |
@@ -87,11 +88,18 @@ pkg_setup() { |
171 |
fi |
172 |
|
173 |
if use sqlite || has_version "<${CATEGORY}/${P}[sqlite]"; then |
174 |
- ewarn "We strongly recommend you change your Akonadi database backend to either MySQL" |
175 |
- ewarn "or PostgreSQL in your user configuration." |
176 |
+ ewarn "We strongly recommend you change your Akonadi database backend to" |
177 |
+ ewarn "either MariaDB or PostgreSQL in your user configuration." |
178 |
ewarn "In particular, kde-apps/kmail does not work properly with the sqlite backend." |
179 |
fi |
180 |
|
181 |
+ if has_version "kde-apps/akonadi[mysql]" && has_version "dev-db/mysql"; then |
182 |
+ ewarn "Due to configuration incompatibilities we are unable to provide" |
183 |
+ ewarn "the option to use dev-db/mysql. You must switch to dev-db/mariadb." |
184 |
+ ewarn " https://bugs.gentoo.org/709812" |
185 |
+ ewarn " https://bugs.kde.org/show_bug.cgi?id=421922" |
186 |
+ fi |
187 |
+ |
188 |
ecm_pkg_setup |
189 |
} |
190 |
|
191 |
@@ -123,7 +131,7 @@ pkg_postinst() { |
192 |
ecm_pkg_postinst |
193 |
elog "You can select the storage backend in ~/.config/akonadi/akonadiserverrc." |
194 |
elog "Available drivers are:" |
195 |
- use mysql && elog " QMYSQL" |
196 |
+ use mariadb && elog " QMYSQL" |
197 |
use postgres && elog " QPSQL" |
198 |
use sqlite && elog " QSQLITE3" |
199 |
elog "${DRIVER} has been set as your default akonadi storage backend." |
200 |
|
201 |
diff --git a/kde-apps/akonadi/metadata.xml b/kde-apps/akonadi/metadata.xml |
202 |
index 8acbee94c7..c6b73ba5cf 100644 |
203 |
--- a/kde-apps/akonadi/metadata.xml |
204 |
+++ b/kde-apps/akonadi/metadata.xml |
205 |
@@ -8,6 +8,7 @@ |
206 |
<use> |
207 |
<flag name="designer">Install plugin for <pkg>dev-qt/designer</pkg></flag> |
208 |
<flag name="kaccounts">Enable support for system-wide defined KAccounts</flag> |
209 |
+ <flag name="mariadb">Enable support for using <pkg>dev-db/mariadb</pkg> storage backend</flag> |
210 |
<flag name="tools">Install tools for developers and testing</flag> |
211 |
</use> |
212 |
</pkgmetadata> |