]> git.immae.eu Git - perso/Immae/Config/Nix.git/blame - pkgs/webapps/default.nix
Purify peertube derivation
[perso/Immae/Config/Nix.git] / pkgs / webapps / default.nix
CommitLineData
fd2d83bd 1{ callPackage, mylibs, composerEnv, lib }:
0ede7366 2rec {
6213b17b 3 adminer = callPackage ./adminer {};
452c2314
IB
4 awl = callPackage ./awl {};
5 davical = callPackage ./davical {};
6213b17b 6 diaspora = callPackage ./diaspora { inherit mylibs; };
f5efae0f 7
6213b17b
IB
8 dokuwiki = callPackage ./dokuwiki { inherit mylibs; };
9 dokuwiki-with-plugins = dokuwiki.withPlugins (builtins.attrValues dokuwiki-plugins);
10 dokuwiki-plugins = let
11 names = [ "farmer" "todo" ];
12 in
0ede7366 13 lib.attrsets.genAttrs names
6213b17b 14 (name: callPackage (./dokuwiki/plugins + "/${name}.nix") {});
5dbe7ba1 15
1247e537
IB
16 etherpad-lite = callPackage ./etherpad-lite {};
17 etherpad-lite-with-modules = etherpad-lite.withModules (builtins.attrValues etherpad-lite-modules);
18 etherpad-lite-modules = let
19 nodeEnv = callPackage mylibs.nodeEnv {};
20 names = [
21 "ep_aa_file_menu_toolbar" "ep_adminpads" "ep_align" "ep_bookmark"
22 "ep_clear_formatting" "ep_colors" "ep_copy_paste_select_all"
23 "ep_cursortrace" "ep_embedmedia" "ep_font_family" "ep_font_size"
24 "ep_headings2" "ep_ldapauth" "ep_line_height" "ep_markdown"
25 "ep_previewimages" "ep_ruler" "ep_scrollto" "ep_set_title_on_pad"
26 "ep_subscript_and_superscript" "ep_timesliderdiff"
a8bfce17 27 ];
1247e537
IB
28 in
29 # nix files are built using node2nix -i node-packages.json
30 lib.attrsets.genAttrs names
31 (name: (callPackage (./etherpad-lite/modules + "/${name}/node-packages.nix") { inherit nodeEnv; })
32 .${name}.overrideAttrs(old: { passthru = (old.passthru or {}) // { moduleName = name; }; }));
a8bfce17 33
6213b17b 34 infcloud = callPackage ./infcloud {};
43dac87f
IB
35
36 mantisbt_2 = callPackage ./mantisbt_2 {};
37 mantisbt_2-with-plugins = mantisbt_2.withPlugins (builtins.attrValues mantisbt_2-plugins);
38 mantisbt_2-plugins = let
39 names = [ "slack" "source-integration" ];
40 in
41 lib.attrsets.genAttrs names
42 (name: callPackage (./mantisbt_2/plugins + "/${name}") {});
c9d13ae3 43
6213b17b 44 mastodon = callPackage ./mastodon { inherit mylibs; };
ddd3f845
IB
45
46 mediagoblin = callPackage ./mediagoblin { inherit mylibs; };
47 mediagoblin-with-plugins = mediagoblin.withPlugins (builtins.attrValues mediagoblin-plugins);
48 mediagoblin-plugins = let
49 names = [ "basicsearch" ];
50 in
51 lib.attrsets.genAttrs names
52 (name: callPackage (./mediagoblin/plugins + "/${name}") {});
6213b17b
IB
53
54 nextcloud = callPackage ./nextcloud {};
55 nextcloud-with-apps = nextcloud.withPlugins (builtins.attrValues nextcloud-apps);
56 nextcloud-apps = let
57 names = [
58 "audioplayer" "bookmarks" "calendar" "contacts" "deck"
59 "files_markdown" "gpxedit" "gpxpod" "keeweb" "music"
60 "notes" "ocsms" "passman" "spreed" "tasks"
61 "flowupload" "carnet"
62 # FIXME: fix passman for NC 16
63 ];
64 in
65 lib.attrsets.genAttrs names
66 (name: callPackage (./nextcloud/apps + "/${name}.nix") { buildApp = nextcloud.buildApp; });
67
598aaa37 68 peertube = callPackage ./peertube { inherit mylibs; };
6213b17b
IB
69 phpldapadmin = callPackage ./phpldapadmin {};
70 rompr = callPackage ./rompr { inherit mylibs; };
b44b42a1 71
fffbbb56
IB
72 roundcubemail = callPackage ./roundcubemail {};
73 roundcubemail-with-plugins-skins = roundcubemail.withPlugins (builtins.attrValues roundcubemail-plugins) (builtins.attrValues roundcubemail-skins);
74 roundcubemail-skins = let
75 names = [];
76 in
77 lib.attrsets.genAttrs names
78 (name: callPackage (./roundcubemail/skins + "/${name}") {});
79 roundcubemail-plugins = let
80 names = [
81 "automatic_addressbook" "carddav" "contextmenu"
82 "contextmenu_folder" "html5_notifier" "ident_switch"
83 "message_highlight" "thunderbird_labels"
84 ];
85 in
86 lib.attrsets.genAttrs names
87 (name: callPackage (./roundcubemail/plugins + "/${name}") { buildPlugin = roundcubemail.buildPlugin; });
88
86663f17
IB
89 ttrss = callPackage ./ttrss { inherit mylibs; };
90 ttrss-with-plugins = ttrss.withPlugins (builtins.attrValues ttrss-plugins);
91 ttrss-plugins = let
92 names = [ "auth_ldap" "af_feedmod" "feediron" "ff_instagram" "tumblr_gdpr_ua" ];
93 patched = [ "af_feedmod" "feediron" ];
94 in
95 lib.attrsets.genAttrs names
96 (name: callPackage (./ttrss/plugins + "/${name}") (
97 { inherit mylibs; } //
98 (if builtins.elem name patched then { patched = true; } else {})
99 )
100 );
101
fd2d83bd 102 wallabag = callPackage ./wallabag { inherit composerEnv; };
b44b42a1
IB
103 yourls = callPackage ./yourls { inherit mylibs; };
104 yourls-with-plugins = yourls.withPlugins (builtins.attrValues yourls-plugins);
105 yourls-plugins = let
106 names = [ "ldap" ];
107 in
108 lib.attrsets.genAttrs names
109 (name: callPackage (./yourls/plugins + "/${name}") { inherit mylibs; });
452c2314 110}