Subject: [PATCH] Allow extra config content in mysql-configuration

From: Alex Sassmannshausen <[email-masked]>
Date: Thu, 16 Jan 2020 17:41:37 +0100

Hello,

Attached is a patch that proposes changing the mysql-service so that the
user can inject additional mysql configuration into the default
configuration file.

I currently use the patch in a private channel and it seems to work
great.

Best wishes,

Alex

>From 3e2139c6e6cecfd34f7e9423c23e57b3d9dbf197 Mon Sep 17 00:00:00 2001
From: Alex Sassmannshausen <[email-masked]>
Date: Thu, 16 Jan 2020 17:17:48 +0100
Subject: [PATCH] gnu: services: Allow extra content in mysql configuration.

* gnu/services/databases.scm (<mysql-configuration>): New field.
  (mysql-configuration-file): Use it.
---
 gnu/services/databases.scm | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/gnu/services/databases.scm b/gnu/services/databases.scm
index a26eeb20cc..473ece4e97 100644
--- a/gnu/services/databases.scm
+++ b/gnu/services/databases.scm
@@ -463,7 +463,8 @@ storage:
   mysql-configuration make-mysql-configuration
   mysql-configuration?
   (mysql mysql-configuration-mysql (default mariadb))
-  (port mysql-configuration-port (default 3306)))
+  (port mysql-configuration-port (default 3306))
+  (extra-content mysql-configuration-extra-content (default "")))
 
 (define %mysql-accounts
   (list (user-group
@@ -478,11 +479,12 @@ storage:
 
 (define mysql-configuration-file
   (match-lambda
-    (($ <mysql-configuration> mysql port)
+    (($ <mysql-configuration> mysql port extra-content)
      (mixed-text-file "my.cnf" "[mysqld]
 datadir=/var/lib/mysql
 socket=/run/mysqld/mysqld.sock
 port=" (number->string port) "
+" extra-content "
 "))))
 
 (define (%mysql-activation config)
-- 
2.23.0