Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)

kdePackages.akonadi: restore mysql backend

I guess we're stuck with it for the time being.

K900 299251e8 13a94ad1

+23 -2
+11 -2
pkgs/kde/gear/akonadi/default.nix
··· 1 1 { 2 + lib, 2 3 mkKdeDerivation, 3 4 qttools, 4 5 accounts-qt, 5 6 kaccounts-integration, 6 7 shared-mime-info, 7 8 xz, 9 + mariadb, 8 10 }: 9 11 mkKdeDerivation { 10 12 pname = "akonadi"; 11 13 12 - # FIXME(later): investigate nixpkgs patches 14 + patches = [ 15 + # Always regenerate MySQL config, as the store paths don't have accurate timestamps 16 + ./ignore-mysql-config-timestamp.patch 17 + ]; 18 + 19 + extraCmakeFlags = [ 20 + "-DMYSQLD_SCRIPTS_PATH=${lib.getBin mariadb}/bin" 21 + ]; 13 22 14 23 extraNativeBuildInputs = [qttools shared-mime-info]; 15 - extraBuildInputs = [kaccounts-integration accounts-qt xz]; 24 + extraBuildInputs = [kaccounts-integration accounts-qt xz mariadb]; 16 25 }
+12
pkgs/kde/gear/akonadi/ignore-mysql-config-timestamp.patch
··· 1 + --- a/src/server/storage/dbconfigmysql.cpp 2 + +++ b/src/server/storage/dbconfigmysql.cpp 3 + @@ -241,8 +241,7 @@ bool DbConfigMysql::startInternalServer() 4 + bool confUpdate = false; 5 + QFile actualFile(actualConfig); 6 + // update conf only if either global (or local) is newer than actual 7 + - if ((QFileInfo(globalConfig).lastModified() > QFileInfo(actualFile).lastModified()) 8 + - || (QFileInfo(localConfig).lastModified() > QFileInfo(actualFile).lastModified())) { 9 + + if (true) { 10 + QFile globalFile(globalConfig); 11 + QFile localFile(localConfig); 12 + if (globalFile.open(QFile::ReadOnly) && actualFile.open(QFile::WriteOnly)) {