1{ pkgs, ... }: 2{ 3 name = "roundcube"; 4 meta = with pkgs.lib.maintainers; { 5 maintainers = [ globin ]; 6 }; 7 8 nodes = { 9 roundcube = 10 { config, pkgs, ... }: 11 { 12 services.roundcube = { 13 enable = true; 14 hostName = "roundcube"; 15 database.password = "not production"; 16 package = pkgs.roundcube.withPlugins (plugins: [ plugins.persistent_login ]); 17 plugins = [ "persistent_login" ]; 18 dicts = with pkgs.aspellDicts; [ 19 en 20 fr 21 de 22 ]; 23 }; 24 services.nginx.virtualHosts.roundcube = { 25 forceSSL = false; 26 enableACME = false; 27 }; 28 }; 29 }; 30 31 testScript = '' 32 roundcube.start 33 roundcube.wait_for_unit("postgresql.target") 34 roundcube.wait_for_unit("phpfpm-roundcube.service") 35 roundcube.wait_for_unit("nginx.service") 36 roundcube.succeed("curl -sSfL http://roundcube/ | grep 'Keep me logged in'") 37 ''; 38}