summaryrefslogtreecommitdiff
path: root/pkgs/webapps/nextcloud
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/webapps/nextcloud')
-rw-r--r--pkgs/webapps/nextcloud/apps/audioplayer.nix7
-rw-r--r--pkgs/webapps/nextcloud/apps/bookmarks.nix7
-rw-r--r--pkgs/webapps/nextcloud/apps/calendar.nix7
-rw-r--r--pkgs/webapps/nextcloud/apps/carnet.nix7
-rw-r--r--pkgs/webapps/nextcloud/apps/contacts.nix7
-rw-r--r--pkgs/webapps/nextcloud/apps/deck.nix7
-rw-r--r--pkgs/webapps/nextcloud/apps/files_markdown.nix7
-rw-r--r--pkgs/webapps/nextcloud/apps/flowupload.nix7
-rw-r--r--pkgs/webapps/nextcloud/apps/gpxedit.nix15
-rw-r--r--pkgs/webapps/nextcloud/apps/gpxpod.nix15
-rw-r--r--pkgs/webapps/nextcloud/apps/keeweb.nix20
-rw-r--r--pkgs/webapps/nextcloud/apps/music.nix7
-rw-r--r--pkgs/webapps/nextcloud/apps/notes.nix7
-rw-r--r--pkgs/webapps/nextcloud/apps/ocsms.nix13
-rw-r--r--pkgs/webapps/nextcloud/apps/passman.nix7
-rw-r--r--pkgs/webapps/nextcloud/apps/spreed.nix7
-rw-r--r--pkgs/webapps/nextcloud/apps/tasks.nix7
-rw-r--r--pkgs/webapps/nextcloud/default.nix63
18 files changed, 217 insertions, 0 deletions
diff --git a/pkgs/webapps/nextcloud/apps/audioplayer.nix b/pkgs/webapps/nextcloud/apps/audioplayer.nix
new file mode 100644
index 00000000..e321002c
--- /dev/null
+++ b/pkgs/webapps/nextcloud/apps/audioplayer.nix
@@ -0,0 +1,7 @@
1{ buildApp }:
2buildApp rec {
3 appName = "audioplayer";
4 version = "2.7.0";
5 url = "https://github.com/Rello/${appName}/releases/download/${version}/${appName}-${version}.tar.gz";
6 sha256 = "05dylw45hs32agy6wqjy4r2x3h1dxzyzn0378ig6h5a22xd52mik";
7}
diff --git a/pkgs/webapps/nextcloud/apps/bookmarks.nix b/pkgs/webapps/nextcloud/apps/bookmarks.nix
new file mode 100644
index 00000000..4632c926
--- /dev/null
+++ b/pkgs/webapps/nextcloud/apps/bookmarks.nix
@@ -0,0 +1,7 @@
1{ buildApp }:
2buildApp rec {
3 appName = "bookmarks";
4 version = "1.0.2";
5 url = "https://github.com/nextcloud/${appName}/releases/download/v${version}/${appName}-${version}.tar.gz";
6 sha256 = "1ph123d0pram9a0vq73rn0zw0pyg4l0xqg162b59ds68179m2jfp";
7}
diff --git a/pkgs/webapps/nextcloud/apps/calendar.nix b/pkgs/webapps/nextcloud/apps/calendar.nix
new file mode 100644
index 00000000..0812810e
--- /dev/null
+++ b/pkgs/webapps/nextcloud/apps/calendar.nix
@@ -0,0 +1,7 @@
1{ buildApp }:
2buildApp rec {
3 appName = "calendar";
4 version = "1.7.0";
5 url = "https://github.com/nextcloud/${appName}/releases/download/v${version}/${appName}.tar.gz";
6 sha256 = "0cgvvgzc2kgs2ng36hzff8rrpw9n58f0hyrr41n3wjkf0iynm56r";
7}
diff --git a/pkgs/webapps/nextcloud/apps/carnet.nix b/pkgs/webapps/nextcloud/apps/carnet.nix
new file mode 100644
index 00000000..61431e59
--- /dev/null
+++ b/pkgs/webapps/nextcloud/apps/carnet.nix
@@ -0,0 +1,7 @@
1{ buildApp }:
2buildApp rec {
3 appName = "carnet";
4 version = "0.15.2";
5 url = "https://github.com/PhieF/CarnetNextcloud/releases/download/v${version}/${appName}-nc-v${version}.tar.gz";
6 sha256 = "1npjb2bgwcfxlf22ygl2hfhfgaigk1kpdk795yc79mx2l1iicmg0";
7}
diff --git a/pkgs/webapps/nextcloud/apps/contacts.nix b/pkgs/webapps/nextcloud/apps/contacts.nix
new file mode 100644
index 00000000..34329ab4
--- /dev/null
+++ b/pkgs/webapps/nextcloud/apps/contacts.nix
@@ -0,0 +1,7 @@
1{ buildApp }:
2buildApp rec {
3 appName = "contacts";
4 version = "3.1.1";
5 url = "https://github.com/nextcloud/${appName}/releases/download/v${version}/${appName}.tar.gz";
6 sha256 = "1qfn532p1pb4m6q2jzyzlyw4c5qccmq6vj0h2zv9xfkajfvz7i7v";
7}
diff --git a/pkgs/webapps/nextcloud/apps/deck.nix b/pkgs/webapps/nextcloud/apps/deck.nix
new file mode 100644
index 00000000..c5737afb
--- /dev/null
+++ b/pkgs/webapps/nextcloud/apps/deck.nix
@@ -0,0 +1,7 @@
1{ buildApp }:
2buildApp rec {
3 appName = "deck";
4 version = "0.6.1";
5 url = "https://github.com/nextcloud/${appName}/releases/download/v${version}/${appName}.tar.gz";
6 sha256 = "1hafgj67zbhs4higf7nyr61p4s31axzxrsq09c4wmcwviz7p7zvs";
7}
diff --git a/pkgs/webapps/nextcloud/apps/files_markdown.nix b/pkgs/webapps/nextcloud/apps/files_markdown.nix
new file mode 100644
index 00000000..9ed50076
--- /dev/null
+++ b/pkgs/webapps/nextcloud/apps/files_markdown.nix
@@ -0,0 +1,7 @@
1{ buildApp }:
2buildApp rec {
3 appName = "files_markdown";
4 version = "2.0.6";
5 url = "https://github.com/icewind1991/${appName}/releases/download/v${version}/${appName}.tar.gz";
6 sha256 = "1ng8gpjl3g1141k1nii59cg005viidlcbsg4x9brzcj25c5qhjjp";
7}
diff --git a/pkgs/webapps/nextcloud/apps/flowupload.nix b/pkgs/webapps/nextcloud/apps/flowupload.nix
new file mode 100644
index 00000000..cbadbda7
--- /dev/null
+++ b/pkgs/webapps/nextcloud/apps/flowupload.nix
@@ -0,0 +1,7 @@
1{ buildApp }:
2buildApp rec {
3 appName = "flowupload";
4 version = "0.1.0";
5 url = "https://github.com/e-alfred/${appName}/releases/download/${version}/${appName}.tar.gz";
6 sha256 = "0cai76hcjrwvq32yav0nd9kkhslandp1sj5czz119gsfjlkpalw9";
7}
diff --git a/pkgs/webapps/nextcloud/apps/gpxedit.nix b/pkgs/webapps/nextcloud/apps/gpxedit.nix
new file mode 100644
index 00000000..b9c267b6
--- /dev/null
+++ b/pkgs/webapps/nextcloud/apps/gpxedit.nix
@@ -0,0 +1,15 @@
1{ buildApp }:
2buildApp rec {
3 appName = "gpxedit";
4 version = "0.0.11";
5 url = "https://gitlab.com/eneiluj/gpxedit-oc/wikis/uploads/18058077d0170256c3f4c9201443d09d/${appName}-${version}.tar.gz";
6 sha256 = "1ww32jysjnwxrn8r9fjdfhbfqnzgaakn08m64wcmavx29dd42y6m";
7 otherConfig = {
8 mimetypealiases = {
9 "application/gpx+xml" = "gpx";
10 };
11 mimetypemapping = {
12 "gpx" = ["application/gpx+xml"];
13 };
14 };
15}
diff --git a/pkgs/webapps/nextcloud/apps/gpxpod.nix b/pkgs/webapps/nextcloud/apps/gpxpod.nix
new file mode 100644
index 00000000..6544ac22
--- /dev/null
+++ b/pkgs/webapps/nextcloud/apps/gpxpod.nix
@@ -0,0 +1,15 @@
1{ buildApp }:
2buildApp rec {
3 appName = "gpxpod";
4 version = "3.0.3";
5 url = "https://gitlab.com/eneiluj/gpxpod-oc/wikis/uploads/34af9435d7a2cd8fa915b84f0dda0724/${appName}-${version}.tar.gz";
6 sha256 = "0v30j5b4ki6nbxqdmnlkrgl1lpg2x2nir9gik6rfj0c3jhmb5mch";
7 otherConfig = {
8 mimetypealiases = {
9 "application/gpx+xml" = "gpx";
10 };
11 mimetypemapping = {
12 "gpx" = ["application/gpx+xml"];
13 };
14 };
15}
diff --git a/pkgs/webapps/nextcloud/apps/keeweb.nix b/pkgs/webapps/nextcloud/apps/keeweb.nix
new file mode 100644
index 00000000..99713eee
--- /dev/null
+++ b/pkgs/webapps/nextcloud/apps/keeweb.nix
@@ -0,0 +1,20 @@
1{ buildApp }:
2buildApp rec {
3 appName = "keeweb";
4 version = "0.5.0";
5 url = "https://github.com/jhass/nextcloud-keeweb/releases/download/v${version}/${appName}-${version}.tar.gz";
6 sha256 = "0wdr6ywlirmac7w1ld5ma7fwb4bykclbxfq2sxwg6pvzfid5vc8x";
7 installPhase = ''
8 mkdir -p $out
9 cp -R . $out/
10 sed -i -e 's/max-version="15"/max-version="16"/' $out/appinfo/info.xml
11 '';
12 otherConfig = {
13 mimetypealiases = {
14 "x-application/kdbx" = "kdbx";
15 };
16 mimetypemapping = {
17 "kdbx" = ["x-application/kdbx"];
18 };
19 };
20}
diff --git a/pkgs/webapps/nextcloud/apps/music.nix b/pkgs/webapps/nextcloud/apps/music.nix
new file mode 100644
index 00000000..1c7181ac
--- /dev/null
+++ b/pkgs/webapps/nextcloud/apps/music.nix
@@ -0,0 +1,7 @@
1{ buildApp }:
2buildApp rec {
3 appName = "music";
4 version = "0.9.5";
5 url = "https://github.com/owncloud/${appName}/archive/v${version}.tar.gz";
6 sha256 = "0dx136z7anmi18harc1v2hyfdaq568lqf3wpy9hgx309ggb4wwzx";
7}
diff --git a/pkgs/webapps/nextcloud/apps/notes.nix b/pkgs/webapps/nextcloud/apps/notes.nix
new file mode 100644
index 00000000..23d6a060
--- /dev/null
+++ b/pkgs/webapps/nextcloud/apps/notes.nix
@@ -0,0 +1,7 @@
1{ buildApp }:
2buildApp rec {
3 appName = "notes";
4 version = "2.6.0";
5 url = "https://github.com/nextcloud/${appName}/releases/download/v${version}/${appName}.tar.gz";
6 sha256 = "1b1vc8plv4mpsxl7mgwgrcrswphclsm9xa89vxf3s4xzlwwq11c4";
7}
diff --git a/pkgs/webapps/nextcloud/apps/ocsms.nix b/pkgs/webapps/nextcloud/apps/ocsms.nix
new file mode 100644
index 00000000..bd772952
--- /dev/null
+++ b/pkgs/webapps/nextcloud/apps/ocsms.nix
@@ -0,0 +1,13 @@
1{ buildApp }:
2buildApp rec {
3 appName = "ocsms";
4 version = "2.1.1";
5 url = "https://github.com/nextcloud/${appName}/releases/download/${version}/${appName}-${version}.tar.gz";
6 sha256 = "0sgfbmy1c8rgzjvf9snc7rzgp8aqsc65zfwgi6qcsf2g6gam5n7a";
7 installPhase = ''
8 sed -i -e "/addScript.*devel/d" -e "s@//\(.*addScript.*app.min\)@\1@" templates/main.php
9 sed -i -e 's/max-version="15.0"/max-version="16.0"/' appinfo/info.xml
10 mkdir -p $out
11 cp -R . $out/
12 '';
13}
diff --git a/pkgs/webapps/nextcloud/apps/passman.nix b/pkgs/webapps/nextcloud/apps/passman.nix
new file mode 100644
index 00000000..869acb3d
--- /dev/null
+++ b/pkgs/webapps/nextcloud/apps/passman.nix
@@ -0,0 +1,7 @@
1{ buildApp }:
2buildApp rec {
3 appName = "passman";
4 version = "2.2.1";
5 url = "https://releases.passman.cc/${appName}_${version}.tar.gz";
6 sha256 = "064pq9d0pl3y1vcywpi19fg47zy7j4h0jaxy6jklwzwcrmzagbka";
7}
diff --git a/pkgs/webapps/nextcloud/apps/spreed.nix b/pkgs/webapps/nextcloud/apps/spreed.nix
new file mode 100644
index 00000000..a958470b
--- /dev/null
+++ b/pkgs/webapps/nextcloud/apps/spreed.nix
@@ -0,0 +1,7 @@
1{ buildApp }:
2buildApp rec {
3 appName = "spreed";
4 version = "6.0.0";
5 url = "https://github.com/nextcloud/${appName}/releases/download/v${version}/${appName}-${version}.tar.gz";
6 sha256 = "14rcskp4pdcf0g816cdp070c8pzrj33fg2w7jb3af8maf1d77306";
7}
diff --git a/pkgs/webapps/nextcloud/apps/tasks.nix b/pkgs/webapps/nextcloud/apps/tasks.nix
new file mode 100644
index 00000000..1e5f8f28
--- /dev/null
+++ b/pkgs/webapps/nextcloud/apps/tasks.nix
@@ -0,0 +1,7 @@
1{ buildApp }:
2buildApp rec {
3 appName = "tasks";
4 version = "0.10.1";
5 url = "https://github.com/nextcloud/${appName}/releases/download/v${version}/${appName}.tar.gz";
6 sha256 = "0r888yr6bl2y5mp65q8md5k139as1a0xw4yfzvkv7y77wmqn9wsm";
7}
diff --git a/pkgs/webapps/nextcloud/default.nix b/pkgs/webapps/nextcloud/default.nix
new file mode 100644
index 00000000..2d4eb390
--- /dev/null
+++ b/pkgs/webapps/nextcloud/default.nix
@@ -0,0 +1,63 @@
1{ varDir ? "/var/lib/nextcloud", otherConfig ? {}, lib, stdenv, fetchurl }:
2let
3 buildApp = { appName, version, url, sha256, otherConfig ? {}, installPhase ? "mkdir -p $out && cp -R . $out/" }:
4 stdenv.mkDerivation rec {
5 name = "nextcloud-app-${appName}-${version}";
6 inherit version;
7 phases = "unpackPhase installPhase";
8 inherit installPhase;
9 src = fetchurl { inherit url sha256; };
10 passthru = {
11 inherit appName otherConfig;
12 };
13 };
14 withApps = apps: package.overrideAttrs(old: {
15 name = "${old.name}-with-apps";
16
17 installPhase = old.installPhase + (
18 builtins.concatStringsSep "\n" (
19 map (value: "ln -sf ${value} $out/apps/${value.appName}") apps
20 ));
21
22 passthru = old.passthru // {
23 otherConfig = with lib.attrsets; with lib.lists; let
24 zipped = zipAttrs ([old.otherConfig or {}] ++ map (v: v.otherConfig) apps);
25 in
26 {
27 mimetypealiases = foldr (h: prev: prev // h) {} zipped.mimetypealiases;
28 mimetypemapping = mapAttrs (_: v: unique (flatten v)) (zipAttrs zipped.mimetypemapping);
29 };
30 inherit apps;
31 withApps = moreApps: old.withApps (moreApps ++ apps);
32 };
33 });
34
35 package = stdenv.mkDerivation rec {
36 name = "nextcloud-${version}";
37 version = "16.0.0";
38
39 src = fetchurl {
40 url = "https://download.nextcloud.com/server/releases/${name}.tar.bz2";
41 sha256 = "0bj014vczlrql1w32pqmr7cyqn9awnyzpi2syxhg16qxic1gfcj5";
42 };
43
44 installPhase = ''
45 mkdir -p $out/
46 cp -R . $out/
47 rm -r $out/config
48 ln -sf ${varDir}/config $out/config
49 '';
50
51 passthru = {
52 apps = [];
53 inherit otherConfig buildApp withApps varDir;
54 };
55 meta = {
56 description = "Sharing solution for files, calendars, contacts and more";
57 homepage = https://nextcloud.com;
58 maintainers = with lib.maintainers; [ schneefux bachp globin fpletz ];
59 license = lib.licenses.agpl3Plus;
60 platforms = with lib.platforms; unix;
61 };
62 };
63in package