summary refs log tree commit diff
path: root/nixos/modules/services/web-apps/tt-rss.nix
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/tt-rss.nix
parent68855595cec81624bf3264c9adf55c5a5c8a328f (diff)
downloadnixpkgs-c26ff439055faacac38e66b62817c019c0711f0f.tar
nixpkgs-c26ff439055faacac38e66b62817c019c0711f0f.tar.gz
nixpkgs-c26ff439055faacac38e66b62817c019c0711f0f.tar.bz2
nixpkgs-c26ff439055faacac38e66b62817c019c0711f0f.tar.lz
nixpkgs-c26ff439055faacac38e66b62817c019c0711f0f.tar.xz
nixpkgs-c26ff439055faacac38e66b62817c019c0711f0f.tar.zst
nixpkgs-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/tt-rss.nix')
-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 df9ebf769c7..03565085da3 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";