X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=modules%2Fprivate%2Fwebsites%2Ftools%2Fdav%2Fdefault.nix;h=289a56979304a520554be31bf06a0fc491e56450;hb=120bcf4d3927f4a0d07513bc54ea5b5fb9b7d809;hp=14e40699f0857967f3c6004e00ec30e60abc85bd;hpb=d3452fc59b9839846225fd254926c64a9c71f071;p=perso%2FImmae%2FConfig%2FNix.git diff --git a/modules/private/websites/tools/dav/default.nix b/modules/private/websites/tools/dav/default.nix index 14e4069..289a569 100644 --- a/modules/private/websites/tools/dav/default.nix +++ b/modules/private/websites/tools/dav/default.nix @@ -1,8 +1,7 @@ { lib, pkgs, config, ... }: let infcloud = rec { - webappName = "tools_infcloud"; - root = "/run/current-system/webapps/${webappName}"; + root = pkgs.webapps.infcloud; vhostConf = '' Alias /carddavmate ${root} Alias /caldavzap ${root} @@ -18,6 +17,7 @@ let davical = pkgs.callPackage ./davical.nix { env = config.myEnv.tools.davical; inherit (pkgs.webapps) davical awl; + inherit config; }; cfg = config.myServices.websites.tools.dav; @@ -27,6 +27,75 @@ in { }; config = lib.mkIf cfg.enable { + myServices.chatonsProperties.services = { + davical = { + file.datetime = "2022-08-21T01:33:00"; + service = { + name = "Davical"; + description = "DAViCal is a server for calendar sharing"; + website = "https://dav.immae.eu"; + logo = "https://www.davical.org/images/logo.gif"; + status.level = "OK"; + status.description = "OK"; + registration."" = ["MEMBER" "CLIENT"]; + registration.load = "OPEN"; + install.type = "PACKAGE"; + }; + software = { + name = "Davical"; + website = "https://www.davical.org/"; + license.url = "https://gitlab.com/davical-project/davical/-/blob/master/COPYING"; + license.name = "GNU General Public License Version 2"; + version = pkgs.webapps.davical.version; + source.url = "https://gitlab.com/davical-project/davical/"; + modules = "infcloud"; + }; + }; + #calendar = { + # file.datetime = "2022-08-22T00:00:00"; + # service = { + # name = "Calendar"; + # description = "Opensource CalDAV web client"; + # website = "https://dav.immae.eu/caldavzap/"; + # logo = "https://dav.immae.eu/caldavzap/images/infcloud_logo.svg"; + # status.level = "OK"; + # status.description = "OK"; + # registration."" = ["MEMBER" "CLIENT"]; + # registration.load = "OPEN"; + # install.type = "PACKAGE"; + # }; + # software = { + # name = "InfCloud"; + # website = "https://inf-it.com/open-source/clients/infcloud/"; + # license.url = "https://www.gnu.org/licenses/agpl-3.0.en.html"; + # license.name = "GNU Affero General Public License (version 3.0)"; + # version = pkgs.webapps.infcloud.version; + # source.url = "https://inf-it.com/open-source/clients/infcloud/"; + # }; + #}; + #contacts = { + # file.datetime = "2022-08-22T00:00:00"; + # service = { + # name = "Contacts"; + # description = "Opensource Carddav web client"; + # website = "https://dav.immae.eu/carddavmate/"; + # logo = "https://dav.immae.eu/caldavzap/images/infcloud_logo.svg"; + # status.level = "OK"; + # status.description = "OK"; + # registration."" = ["MEMBER" "CLIENT"]; + # registration.load = "OPEN"; + # install.type = "PACKAGE"; + # }; + # software = { + # name = "InfCloud"; + # website = "https://inf-it.com/open-source/clients/infcloud/"; + # license.url = "https://www.gnu.org/licenses/agpl-3.0.en.html"; + # license.name = "GNU Affero General Public License (version 3.0)"; + # version = pkgs.webapps.infcloud.version; + # source.url = "https://inf-it.com/open-source/clients/infcloud/"; + # }; + #}; + }; system.activationScripts.davical = davical.activationScript; secrets.keys = davical.keys; services.websites.env.tools.modules = davical.apache.modules; @@ -35,7 +104,7 @@ in { certName = "eldiron"; addToCerts = true; hosts = ["dav.immae.eu" ]; - root = "/run/current-system/webapps/_dav"; + root = ./www; extraConfig = [ infcloud.vhostConf (davical.apache.vhostConf config.services.phpfpm.pools.davical.socket) @@ -47,12 +116,9 @@ in { user = config.services.httpd.Tools.user; group = config.services.httpd.Tools.group; settings = davical.phpFpm.pool; + phpPackage = pkgs.php72; }; }; - - services.websites.webappDirs._dav = ./www; - services.websites.webappDirs."${davical.apache.webappName}" = davical.webRoot; - services.websites.webappDirs."${infcloud.webappName}" = pkgs.webapps.infcloud; }; }