This is based on the respectve patch from NixPkgs, but with the parts pinning mysql and postgresql executables removed. See our package definition on why. diff --git a/src/akonadicontrol/agentmanager.cpp b/src/akonadicontrol/agentmanager.cpp --- a/src/akonadicontrol/agentmanager.cpp +++ b/src/akonadicontrol/agentmanager.cpp @@ -47,7 +47,7 @@ public: connect(this, &Akonadi::ProcessControl::unableToStart, this, []() { QCoreApplication::instance()->exit(255); }); - start(QStringLiteral("akonadiserver"), args, RestartOnCrash); + start(QStringLiteral(NIX_OUT "/bin/akonadiserver"), args, RestartOnCrash); } ~StorageProcessControl() override @@ -69,7 +69,7 @@ public: connect(this, &Akonadi::ProcessControl::unableToStart, this, []() { qCCritical(AKONADICONTROL_LOG) << "Failed to start AgentServer!"; }); - start(QStringLiteral("akonadi_agent_server"), args, RestartOnCrash); + start(QStringLiteral(NIX_OUT "/bin/akonadi_agent_server"), args, RestartOnCrash); } ~AgentServerProcessControl() override diff --git a/src/akonadicontrol/agentprocessinstance.cpp b/src/akonadicontrol/agentprocessinstance.cpp --- a/src/akonadicontrol/agentprocessinstance.cpp +++ b/src/akonadicontrol/agentprocessinstance.cpp @@ -62,7 +62,7 @@ bool AgentProcessInstance::start(const AgentType &agentInfo) } else { Q_ASSERT(agentInfo.launchMethod == AgentType::Launcher); const QStringList arguments = QStringList() << executable << identifier(); - const QString agentLauncherExec = Akonadi::StandardDirs::findExecutable(QStringLiteral("akonadi_agent_launcher")); + const QString agentLauncherExec = QLatin1String(NIX_OUT "/bin/akonadi_agent_launcher"); mController->start(agentLauncherExec, arguments); } return true; diff --git a/src/server/storage/dbconfigmysql.cpp b/src/server/storage/dbconfigmysql.cpp --- a/src/server/storage/dbconfigmysql.cpp +++ b/src/server/storage/dbconfigmysql.cpp @@ -215,7 +215,7 @@ bool DbConfigMysql::startInternalServer() #endif // generate config file - const QString globalConfig = StandardDirs::locateResourceFile("config", QStringLiteral("mysql-global.conf")); + const QString globalConfig = QLatin1String(NIX_OUT "/etc/xdg/akonadi/mysql-global.conf"); const QString localConfig = StandardDirs::locateResourceFile("config", QStringLiteral("mysql-local.conf")); const QString actualConfig = StandardDirs::saveDir("data") + QLatin1String("/mysql.conf"); if (globalConfig.isEmpty()) { commit/gnu/tests.scm?id=d258c791441b46705f4360cf141343363d1751f2'>tests: Warn about test module load failures....Ludovic Courtès 2018-05-28system: Remove uses of the 'title' field of <file-system>....Ludovic Courtès 2018-02-19marionette: Use QEMU's "VM channel" mechanism....Ludovic Courtès 2018-01-09tests: marionette-operating-system: Add initrd parameter and kernel-arguments....Danny Milosavljevic 2017-12-06gnu, doc, tests: Use ‘bootloader-configuration’ everywhere....Tobias Geerinckx-Rice 2017-08-23gnu: bootloader: Deprecate "device" field in favor of "target"....Andy Wingo 2017-05-16bootloader: Add extlinux support....Mathieu Othacehe 2017-05-04tests: Use 'fold-module-public-variables' for discovery....Ludovic Courtès 2017-05-03Add (guix discovery)....Ludovic Courtès 2017-04-01tests: Introduce 'simple-operating-system' and use it....Ludovic Courtès 2016-07-12services: <shepherd-service> no longer has an 'imported-modules' field....Ludovic Courtès 2016-06-27tests: 'marionette-service-type' nows takes a <marionette-configuration>....Ludovic Courtès 2016-06-20tests: Add a mechanism to describe and discover system tests....Ludovic Courtès 2016-06-20tests: Add system installation test....Ludovic Courtès 2016-06-20tests: Fix list of exports in (gnu tests)....Ludovic Courtès 2016-05-04Add (gnu tests) and (gnu build marionette)....Ludovic Courtès