X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=nixops%2Fmodules%2Fwebsites%2Ftools%2Ftools%2Fdefault.nix;h=061c0043637e3caed1dfc34db3da35920878ad8d;hb=7df420c27ebe7daaa4fd099c457ce9a9075b840e;hp=d3092876169b03e9941c20b2d22721621907ed0d;hpb=0aae0181fd46ca043eef4195e34b4c4bba20349e;p=perso%2FImmae%2FConfig%2FNix.git diff --git a/nixops/modules/websites/tools/tools/default.nix b/nixops/modules/websites/tools/tools/default.nix index d309287..061c004 100644 --- a/nixops/modules/websites/tools/tools/default.nix +++ b/nixops/modules/websites/tools/tools/default.nix @@ -1,38 +1,41 @@ -{ lib, pkgs, config, myconfig, mylibs, ... }: +{ lib, pkgs, config, myconfig, ... }: let adminer = pkgs.callPackage ../../commons/adminer.nix {}; ympd = pkgs.callPackage ./ympd.nix { env = myconfig.env.tools.ympd; }; ttrss = pkgs.callPackage ./ttrss.nix { - inherit (mylibs) fetchedGithub fetchedGit; + inherit (pkgs.webapps) ttrss ttrss-plugins; env = myconfig.env.tools.ttrss; }; roundcubemail = pkgs.callPackage ./roundcubemail.nix { - inherit (mylibs) fetchedGithub; + inherit (pkgs.webapps) roundcubemail roundcubemail-plugins roundcubemail-skins; env = myconfig.env.tools.roundcubemail; }; rainloop = pkgs.callPackage ./rainloop.nix {}; kanboard = pkgs.callPackage ./kanboard.nix { - inherit (mylibs) fetchedGithub; env = myconfig.env.tools.kanboard; }; - wallabag = pkgs.callPackage ./wallabag.nix { env = myconfig.env.tools.wallabag; }; + wallabag = pkgs.callPackage ./wallabag.nix { + inherit (pkgs.webapps) wallabag; + env = myconfig.env.tools.wallabag; + }; yourls = pkgs.callPackage ./yourls.nix { - inherit (mylibs) fetchedGithub; + inherit (pkgs.webapps) yourls yourls-plugins; env = myconfig.env.tools.yourls; }; rompr = pkgs.callPackage ./rompr.nix { - inherit (mylibs) fetchedGithub; + inherit (pkgs.webapps) rompr; env = myconfig.env.tools.rompr; }; shaarli = pkgs.callPackage ./shaarli.nix { env = myconfig.env.tools.shaarli; }; dokuwiki = pkgs.callPackage ./dokuwiki.nix { - inherit (mylibs) fetchedGithub; + inherit (pkgs.webapps) dokuwiki dokuwiki-plugins; }; ldap = pkgs.callPackage ./ldap.nix { + inherit (pkgs.webapps) phpldapadmin; env = myconfig.env.tools.phpldapadmin; }; @@ -43,22 +46,19 @@ in { }; config = lib.mkIf cfg.enable { - security.acme.certs."eldiron".extraDomains."tools.immae.eu" = null; - security.acme.certs."eldiron".extraDomains."devtools.immae.eu" = null; - - deployment.keys = + secrets.keys = kanboard.keys - // ldap.keys - // roundcubemail.keys - // shaarli.keys - // ttrss.keys - // wallabag.keys - // yourls.keys; + ++ ldap.keys + ++ roundcubemail.keys + ++ shaarli.keys + ++ ttrss.keys + ++ wallabag.keys + ++ yourls.keys; - services.myWebsites.integration.modules = + services.websites.integration.modules = rainloop.apache.modules; - services.myWebsites.tools.modules = + services.websites.tools.modules = [ "proxy_fcgi" ] ++ adminer.apache.modules ++ ympd.apache.modules @@ -72,10 +72,18 @@ in { ++ ldap.apache.modules ++ kanboard.apache.modules; - services.ympd = ympd.config // { enable = true; }; + systemd.services.ympd = { + description = "Standalone MPD Web GUI written in C"; + wantedBy = [ "multi-user.target" ]; + script = '' + export MPD_PASSWORD=$(cat /var/secrets/mpd) + ${pkgs.ympd}/bin/ympd --host ${ympd.config.host} --port ${toString ympd.config.port} --webport ${ympd.config.webPort} --user nobody + ''; + }; - services.myWebsites.integration.vhostConfs.devtools = { + services.websites.integration.vhostConfs.devtools = { certName = "eldiron"; + addToCerts = true; hosts = ["devtools.immae.eu" ]; root = "/var/lib/ftp/devtools.immae.eu"; extraConfig = [ @@ -93,8 +101,9 @@ in { ]; }; - services.myWebsites.tools.vhostConfs.tools = { + services.websites.tools.vhostConfs.tools = { certName = "eldiron"; + addToCerts = true; hosts = ["tools.immae.eu" ]; root = "/var/lib/ftp/tools.immae.eu"; extraConfig = [ @@ -122,11 +131,11 @@ in { ]; }; - security.acme.certs."eldiron".extraDomains."outils.immae.eu" = null; - services.myWebsites.tools.vhostConfs.outils = { - certName = "eldiron"; - hosts = [ "outils.immae.eu" ]; - root = null; + services.websites.tools.vhostConfs.outils = { + certName = "eldiron"; + addToCerts = true; + hosts = [ "outils.immae.eu" ]; + root = null; extraConfig = [ '' RedirectMatch 301 ^/mediagoblin(.*)$ https://mgoblin.immae.eu$1 @@ -168,6 +177,9 @@ in { ''; roundcubemail = roundcubemail.phpFpm.phpConfig; }; + services.myPhpfpm.preStart = { + wallabag = wallabag.phpFpm.preStart; + }; services.myPhpfpm.poolConfigs = { adminer = adminer.phpFpm.pool; ttrss = ttrss.phpFpm.pool; @@ -238,10 +250,6 @@ in { ln -s ${kanboard.webRoot} $out/webapps/${kanboard.apache.webappName} ''; - nixpkgs.overlays = [ (self: super: rec { - ympd = super.ympd.overrideAttrs(old: mylibs.fetchedGithub ./ympd.json); - }) ]; - systemd.services.tt-rss = { description = "Tiny Tiny RSS feeds update daemon"; serviceConfig = {