X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=pkgs%2Fwebapps%2Fdefault.nix;h=0ef673626609f9a6710dc33ebf303251ef0b754d;hb=2977fd8fdfc55dd42837e3dd56c77d36097ef607;hp=84e46bd581ac4d2556b38501752326ffe33126f2;hpb=ddd3f845089062716d7fc64e5a5e4e413363df91;p=perso%2FImmae%2FConfig%2FNix.git diff --git a/pkgs/webapps/default.nix b/pkgs/webapps/default.nix index 84e46bd..0ef6736 100644 --- a/pkgs/webapps/default.nix +++ b/pkgs/webapps/default.nix @@ -1,14 +1,56 @@ -{ callPackage, mylibs, lib }: +{ callPackage, mylibs, composerEnv, lib }: rec { + adminer = callPackage ./adminer {}; + awl = callPackage ./awl {}; + davical = callPackage ./davical {}; diaspora = callPackage ./diaspora { inherit mylibs; }; - mastodon = callPackage ./mastodon { inherit mylibs; }; + dokuwiki = callPackage ./dokuwiki { inherit mylibs; }; + dokuwiki-with-plugins = dokuwiki.withPlugins (builtins.attrValues dokuwiki-plugins); + dokuwiki-plugins = let + names = [ "farmer" "todo" ]; + in + lib.attrsets.genAttrs names + (name: callPackage (./dokuwiki/plugins + "/${name}.nix") {}); - awl = callPackage ./awl {}; - davical = callPackage ./davical {}; + etherpad-lite = callPackage ./etherpad-lite {}; + etherpad-lite-with-modules = etherpad-lite.withModules (builtins.attrValues etherpad-lite-modules); + etherpad-lite-modules = let + nodeEnv = callPackage mylibs.nodeEnv {}; + names = [ + "ep_aa_file_menu_toolbar" "ep_adminpads" "ep_align" "ep_bookmark" + "ep_clear_formatting" "ep_colors" "ep_copy_paste_select_all" + "ep_cursortrace" "ep_embedmedia" "ep_font_family" "ep_font_size" + "ep_headings2" "ep_ldapauth" "ep_line_height" "ep_markdown" + "ep_previewimages" "ep_ruler" "ep_scrollto" "ep_set_title_on_pad" + "ep_subscript_and_superscript" "ep_timesliderdiff" + ]; + in + # nix files are built using node2nix -i node-packages.json + lib.attrsets.genAttrs names + (name: (callPackage (./etherpad-lite/modules + "/${name}/node-packages.nix") { inherit nodeEnv; }) + .${name}.overrideAttrs(old: { passthru = (old.passthru or {}) // { moduleName = name; }; })); infcloud = callPackage ./infcloud {}; + mantisbt_2 = callPackage ./mantisbt_2 {}; + mantisbt_2-with-plugins = mantisbt_2.withPlugins (builtins.attrValues mantisbt_2-plugins); + mantisbt_2-plugins = let + names = [ "slack" "source-integration" ]; + in + lib.attrsets.genAttrs names + (name: callPackage (./mantisbt_2/plugins + "/${name}") {}); + + mastodon = callPackage ./mastodon { inherit mylibs; }; + + mediagoblin = callPackage ./mediagoblin { inherit mylibs; }; + mediagoblin-with-plugins = mediagoblin.withPlugins (builtins.attrValues mediagoblin-plugins); + mediagoblin-plugins = let + names = [ "basicsearch" ]; + in + lib.attrsets.genAttrs names + (name: callPackage (./mediagoblin/plugins + "/${name}") {}); + nextcloud = callPackage ./nextcloud {}; nextcloud-with-apps = nextcloud.withPlugins (builtins.attrValues nextcloud-apps); nextcloud-apps = let @@ -23,33 +65,48 @@ rec { lib.attrsets.genAttrs names (name: callPackage (./nextcloud/apps + "/${name}.nix") { buildApp = nextcloud.buildApp; }); + peertube = callPackage ./peertube { inherit mylibs; }; phpldapadmin = callPackage ./phpldapadmin {}; - rompr = callPackage ./rompr { inherit mylibs; }; - mantisbt_2 = callPackage ./mantisbt_2 {}; - mantisbt_2-with-plugins = mantisbt_2.withPlugins (builtins.attrValues mantisbt_2-plugins); - mantisbt_2-plugins = let - names = [ "slack" "source-integration" ]; + roundcubemail = callPackage ./roundcubemail {}; + roundcubemail-with-plugins-skins = roundcubemail.withPlugins (builtins.attrValues roundcubemail-plugins) (builtins.attrValues roundcubemail-skins); + roundcubemail-skins = let + names = []; in lib.attrsets.genAttrs names - (name: callPackage (./mantisbt_2/plugins + "/${name}") {}); - - dokuwiki = callPackage ./dokuwiki { inherit mylibs; }; - dokuwiki-with-plugins = dokuwiki.withPlugins (builtins.attrValues dokuwiki-plugins); - dokuwiki-plugins = let - names = [ "farmer" "todo" ]; + (name: callPackage (./roundcubemail/skins + "/${name}") {}); + roundcubemail-plugins = let + names = [ + "automatic_addressbook" "carddav" "contextmenu" + "contextmenu_folder" "html5_notifier" "ident_switch" + "message_highlight" "thunderbird_labels" + ]; in lib.attrsets.genAttrs names - (name: callPackage (./dokuwiki/plugins + "/${name}.nix") {}); + (name: callPackage (./roundcubemail/plugins + "/${name}") { buildPlugin = roundcubemail.buildPlugin; }); - adminer = callPackage ./adminer {}; + taskwarrior-web = callPackage ./taskwarrior-web { inherit mylibs; }; - mediagoblin = callPackage ./mediagoblin { inherit mylibs; }; - mediagoblin-with-plugins = mediagoblin.withPlugins (builtins.attrValues mediagoblin-plugins); - mediagoblin-plugins = let - names = [ "basicsearch" ]; + ttrss = callPackage ./ttrss { inherit mylibs; }; + ttrss-with-plugins = ttrss.withPlugins (builtins.attrValues ttrss-plugins); + ttrss-plugins = let + names = [ "auth_ldap" "af_feedmod" "feediron" "ff_instagram" "tumblr_gdpr_ua" ]; + patched = [ "af_feedmod" "feediron" ]; in lib.attrsets.genAttrs names - (name: callPackage (./mediagoblin/plugins + "/${name}") {}); + (name: callPackage (./ttrss/plugins + "/${name}") ( + { inherit mylibs; } // + (if builtins.elem name patched then { patched = true; } else {}) + ) + ); + + wallabag = callPackage ./wallabag { inherit composerEnv; }; + yourls = callPackage ./yourls { inherit mylibs; }; + yourls-with-plugins = yourls.withPlugins (builtins.attrValues yourls-plugins); + yourls-plugins = let + names = [ "ldap" ]; + in + lib.attrsets.genAttrs names + (name: callPackage (./yourls/plugins + "/${name}") { inherit mylibs; }); }