summary refs log tree commit diff
path: root/nixos/modules/services/web-apps
diff options
context:
space:
mode:
authorJaakko Luttinen <jaakko.luttinen@iki.fi>2018-01-02 21:48:40 +0200
committerRobin Gloster <mail@glob.in>2018-01-05 14:47:54 +0100
commitc26ff439055faacac38e66b62817c019c0711f0f (patch)
tree594b1a672a5db55e40354b8377bfe82fe26a9dc6 /nixos/modules/services/web-apps
parent68855595cec81624bf3264c9adf55c5a5c8a328f (diff)
downloadnixlib-c26ff439055faacac38e66b62817c019c0711f0f.tar
nixlib-c26ff439055faacac38e66b62817c019c0711f0f.tar.gz
nixlib-c26ff439055faacac38e66b62817c019c0711f0f.tar.bz2
nixlib-c26ff439055faacac38e66b62817c019c0711f0f.tar.lz
nixlib-c26ff439055faacac38e66b62817c019c0711f0f.tar.xz
nixlib-c26ff439055faacac38e66b62817c019c0711f0f.tar.zst
nixlib-c26ff439055faacac38e66b62817c019c0711f0f.zip
nixos/service.tt-rss: improve mysql automatic setup
If the user chooses MySQL, it is enabled by default. Also, the used database is
created automatically along with the user and permissions.
Diffstat (limited to 'nixos/modules/services/web-apps')
-rw-r--r--nixos/modules/services/web-apps/tt-rss.nix14
1 files changed, 14 insertions, 0 deletions
diff --git a/nixos/modules/services/web-apps/tt-rss.nix b/nixos/modules/services/web-apps/tt-rss.nix
index df9ebf769c7c..03565085da37 100644
--- a/nixos/modules/services/web-apps/tt-rss.nix
+++ b/nixos/modules/services/web-apps/tt-rss.nix
@@ -557,6 +557,20 @@ let
         after = ["network.target" "${dbService}"];
     };
 
+    services.mysql = optionalAttrs (cfg.database.type == "mysql") {
+      enable = true;
+      package = mkDefault pkgs.mariadb;
+      ensureDatabases = [ cfg.database.name ];
+      ensureUsers = [
+        {
+          name = cfg.user;
+          ensurePermissions = {
+            "${cfg.database.name}.*" = "ALL PRIVILEGES";
+          };
+        }
+      ];
+    };
+
     users = optionalAttrs (cfg.user == "tt_rss") {
       extraUsers = singleton {
         name = "tt_rss";