aboutsummaryrefslogblamecommitdiff
path: root/pkgs/webapps/default.nix
blob: a771aeeb9e41bed090b5fab34dec25b96f6805f4 (plain) (tree)
1
2
3
4
5
6
7
                                          
     
                                     

                                     
                                                        
 




                                                                                      
                               
                                                                   
 

























                                                                               
                                       







                                                                                            
 
                                                        







                                                                                               
















                                                                                                 
 
















                                                                                                                                                     












                                                                                    
                                                             






                                                                                
 
{ callPackage, mylibs, composerEnv, lib }:
rec {
  adminer = callPackage ./adminer {};
  awl = callPackage ./awl {};
  davical = callPackage ./davical {};
  diaspora = callPackage ./diaspora { 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") {});

  etherpad-lite = callPackage ../impure/etherpad-lite {};
  etherpad-lite-with-modules = etherpad-lite.withModules etherpad-lite-modules;
  etherpad-lite-modules = [
    "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"
    ];

  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
      names = [
        "audioplayer" "bookmarks" "calendar" "contacts" "deck"
        "files_markdown" "gpxedit" "gpxpod" "keeweb" "music"
        "notes" "ocsms" "passman" "spreed" "tasks"
        "flowupload" "carnet"
        # FIXME: fix passman for NC 16
      ];
    in
    lib.attrsets.genAttrs names
      (name: callPackage (./nextcloud/apps + "/${name}.nix") { buildApp = nextcloud.buildApp; });

  phpldapadmin = callPackage ./phpldapadmin {};
  rompr = callPackage ./rompr { inherit mylibs; };

  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 (./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 (./roundcubemail/plugins + "/${name}") { buildPlugin = roundcubemail.buildPlugin; });

  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 (./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; });
}