From f3c2f298c4d40012ed457cfe21ece28f72c0f8e9 Mon Sep 17 00:00:00 2001 From: Marco Rebhan Date: Wed, 20 Jul 2022 12:38:39 +0200 Subject: akonadi: Add package argument for PostgreSQL support --- pkgs/applications/kde/akonadi/default.nix | 26 +++++++++++++++++--------- 1 file changed, 17 insertions(+), 9 deletions(-) (limited to 'pkgs/applications/kde') diff --git a/pkgs/applications/kde/akonadi/default.nix b/pkgs/applications/kde/akonadi/default.nix index e656d36a1c9..d86882c7798 100644 --- a/pkgs/applications/kde/akonadi/default.nix +++ b/pkgs/applications/kde/akonadi/default.nix @@ -2,10 +2,16 @@ mkDerivation, lib, kdepimTeam, substituteAll, extra-cmake-modules, shared-mime-info, qtbase, accounts-qt, boost, kaccounts-integration, kcompletion, kconfigwidgets, kcrash, kdbusaddons, - kdesignerplugin, ki18n, kiconthemes, kio, kitemmodels, kwindowsystem, mariadb, qttools, - signond, xz, + kdesignerplugin, ki18n, kiconthemes, kio, kitemmodels, kwindowsystem, mariadb, + postgresql, qttools, signond, xz, + + mysqlSupport ? true, + postgresSupport ? false, + defaultDriver ? if mysqlSupport then "MYSQL" else "POSTGRES", }: +assert mysqlSupport || postgresSupport; + mkDerivation { pname = "akonadi"; meta = { @@ -26,17 +32,19 @@ mkDerivation { propagatedBuildInputs = [ boost kitemmodels ]; outputs = [ "out" "dev" ]; CXXFLAGS = [ - ''-DNIXPKGS_MYSQL_MYSQLD=\"${lib.getBin mariadb}/bin/mysqld\"'' - ''-DNIXPKGS_MYSQL_MYSQLADMIN=\"${lib.getBin mariadb}/bin/mysqladmin\"'' - ''-DNIXPKGS_MYSQL_MYSQL_INSTALL_DB=\"${lib.getBin mariadb}/bin/mysql_install_db\"'' - ''-DNIXPKGS_MYSQL_MYSQLCHECK=\"${lib.getBin mariadb}/bin/mysqlcheck\"'' - ''-DNIXPKGS_POSTGRES_PG_CTL=\"\"'' - ''-DNIXPKGS_POSTGRES_PG_UPGRADE=\"\"'' - ''-DNIXPKGS_POSTGRES_INITDB=\"\"'' + ''-DNIXPKGS_MYSQL_MYSQLD=\"${lib.optionalString mysqlSupport "${lib.getBin mariadb}/bin/mysqld"}\"'' + ''-DNIXPKGS_MYSQL_MYSQLADMIN=\"${lib.optionalString mysqlSupport "${lib.getBin mariadb}/bin/mysqladmin"}\"'' + ''-DNIXPKGS_MYSQL_MYSQL_INSTALL_DB=\"${lib.optionalString mysqlSupport "${lib.getBin mariadb}/bin/mysql_install_db"}\"'' + ''-DNIXPKGS_MYSQL_MYSQLCHECK=\"${lib.optionalString mysqlSupport "${lib.getBin mariadb}/bin/mysqlcheck"}\"'' + ''-DNIXPKGS_POSTGRES_PG_CTL=\"${lib.optionalString postgresSupport "${lib.getBin postgresql}/bin/pg_ctl"}\"'' + ''-DNIXPKGS_POSTGRES_PG_UPGRADE=\"${lib.optionalString postgresSupport "${lib.getBin postgresql}/bin/pg_upgrade"}\"'' + ''-DNIXPKGS_POSTGRES_INITDB=\"${lib.optionalString postgresSupport "${lib.getBin postgresql}/bin/initdb"}\"'' ''-DNIX_OUT=\"${placeholder "out"}\"'' ''-I${lib.getDev kio}/include/KF5'' # Fixes: kio_version.h: No such file or directory ]; + cmakeFlags = lib.optional (defaultDriver != "MYSQL") "-DDATABASE_BACKEND=${defaultDriver}"; + # compatibility symlinks for kmymoney, can probably be removed in next kde bump postInstall = '' ln -s $dev/include/KF5/AkonadiCore/Akonadi/Collection $dev/include/KF5/AkonadiCore/Collection -- cgit 1.4.1