From 76e9062b9a3c46f3b7115089ace67dc347f8854a Mon Sep 17 00:00:00 2001 From: berber Date: Wed, 19 Mar 2025 16:56:20 +0100 Subject: [PATCH 1/3] nextcloudPackages: update --- pkgs/servers/nextcloud/packages/29.json | 8 ++++---- pkgs/servers/nextcloud/packages/30.json | 20 ++++++++++---------- pkgs/servers/nextcloud/packages/31.json | 20 ++++++++++---------- 3 files changed, 24 insertions(+), 24 deletions(-) diff --git a/pkgs/servers/nextcloud/packages/29.json b/pkgs/servers/nextcloud/packages/29.json index 8617f1e8beb8..63e2abe676dc 100644 --- a/pkgs/servers/nextcloud/packages/29.json +++ b/pkgs/servers/nextcloud/packages/29.json @@ -143,7 +143,7 @@ "hash": "sha256-yfTZjAsmv2wdMNNP1Tm0fmzSIlUwRfMraNPgFEHW238=", "url": "https://github.com/nextcloud-releases/groupfolders/releases/download/v17.0.10/groupfolders-v17.0.10.tar.gz", "version": "17.0.10", - "description": "Admin configured folders shared with everyone in a group.\n\nFolders can be configured from *Group folders* in the admin settings.\n\nAfter a folder is created, the admin can give access to the folder to one or more groups, control their write/sharing permissions and assign a quota for the folder.", + "description": "Admin configured folders shared with everyone in a team.\n\nFolders can be configured from *Team folders* in the admin settings.\n\nAfter a folder is created, the admin can give access to the folder to one or more teams, control their write/sharing permissions and assign a quota for the folder.", "homepage": "https://github.com/nextcloud/groupfolders", "licenses": [ "agpl" @@ -190,9 +190,9 @@ ] }, "mail": { - "hash": "sha256-nx9trnOjtl/jd081DB8/5BjtDe6WVwcss0ynxyT/dEU=", - "url": "https://github.com/nextcloud-releases/mail/releases/download/v3.7.23/mail-v3.7.23.tar.gz", - "version": "3.7.23", + "hash": "sha256-4XLoP07M614QM2n86QvNlol3NVmrfQLBDLZCZ013Lsc=", + "url": "https://github.com/nextcloud-releases/mail/releases/download/v3.7.24/mail-stable3.7.tar.gz", + "version": "3.7.24", "description": "**πŸ’Œ A mail app for Nextcloud**\n\n- **πŸš€ Integration with other Nextcloud apps!** Currently Contacts, Calendar & Files – more to come.\n- **πŸ“₯ Multiple mail accounts!** Personal and company account? No problem, and a nice unified inbox. Connect any IMAP account.\n- **πŸ”’ Send & receive encrypted mails!** Using the great [Mailvelope](https://mailvelope.com) browser extension.\n- **πŸ™ˆ We’re not reinventing the wheel!** Based on the great [Horde](https://horde.org) libraries.\n- **πŸ“¬ Want to host your own mail server?** We do not have to reimplement this as you could set up [Mail-in-a-Box](https://mailinabox.email)!\n\n## Ethical AI Rating\n\n### Priority Inbox\n\nPositive:\n* The software for training and inferencing of this model is open source.\n* The model is created and trained on-premises based on the user's own data.\n* The training data is accessible to the user, making it possible to check or correct for bias or optimise the performance and CO2 usage.\n\n### Thread Summaries (opt-in)\n\n**Rating:** 🟒/🟑/🟠/πŸ”΄\n\nThe rating depends on the installed text processing backend. See [the rating overview](https://docs.nextcloud.com/server/latest/admin_manual/ai/index.html) for details.\n\nLearn more about the Nextcloud Ethical AI Rating [in our blog](https://nextcloud.com/blog/nextcloud-ethical-ai-rating/).", "homepage": "https://github.com/nextcloud/mail#readme", "licenses": [ diff --git a/pkgs/servers/nextcloud/packages/30.json b/pkgs/servers/nextcloud/packages/30.json index 4f1bdf116b96..0346c5ea1d1a 100644 --- a/pkgs/servers/nextcloud/packages/30.json +++ b/pkgs/servers/nextcloud/packages/30.json @@ -20,9 +20,9 @@ ] }, "calendar": { - "hash": "sha256-MpWmWSyC6ZxzE8Xu+rjCxl9OhdmSydGMR+zcJyoH7uE=", - "url": "https://github.com/nextcloud-releases/calendar/releases/download/v5.1.3/calendar-v5.1.3.tar.gz", - "version": "5.1.3", + "hash": "sha256-mAH/A5oiPwIh6K6bb9wd55CmqMoEAaKQVVr8zFNbXE8=", + "url": "https://github.com/nextcloud-releases/calendar/releases/download/v5.2.0/calendar-v5.2.0.tar.gz", + "version": "5.2.0", "description": "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* πŸš€ **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* πŸ™‹ **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* πŸ” Search! Find your events at ease\n* β˜‘οΈ Tasks! See tasks with a due date directly in the calendar\n* πŸ™ˆ **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries.", "homepage": "https://github.com/nextcloud/calendar/", "licenses": [ @@ -140,10 +140,10 @@ ] }, "groupfolders": { - "hash": "sha256-zWRg9oqEhD0SGL82LB1HxbkLt3CbcQsgrBXlCLy94h8=", - "url": "https://github.com/nextcloud-releases/groupfolders/releases/download/v18.1.1/groupfolders-v18.1.1.tar.gz", - "version": "18.1.1", - "description": "Admin configured folders shared with everyone in a group.\n\nFolders can be configured from *Group folders* in the admin settings.\n\nAfter a folder is created, the admin can give access to the folder to one or more groups, control their write/sharing permissions and assign a quota for the folder.", + "hash": "sha256-xlxc4m0xxjrI3Pi+1L63Sm4wQCjJdkHD9JPorsrI5e0=", + "url": "https://github.com/nextcloud-releases/groupfolders/releases/download/v18.1.2/groupfolders-v18.1.2.tar.gz", + "version": "18.1.2", + "description": "Admin configured folders shared with everyone in a team.\n\nFolders can be configured from *Team folders* in the admin settings.\n\nAfter a folder is created, the admin can give access to the folder to one or more teams, control their write/sharing permissions and assign a quota for the folder.", "homepage": "https://github.com/nextcloud/groupfolders", "licenses": [ "agpl" @@ -190,9 +190,9 @@ ] }, "mail": { - "hash": "sha256-c/inKInFwLG7MdNcJPV7NzF1QNRgKNWyC+rjnza2/K8=", - "url": "https://github.com/nextcloud-releases/mail/releases/download/v4.2.6/mail-stable4.2.tar.gz", - "version": "4.2.6", + "hash": "sha256-EFhjy0LcJCsNHJy//rGwM1f3UkAGLNXzC6lz6k5JstY=", + "url": "https://github.com/nextcloud-releases/mail/releases/download/v4.3.1/mail-v4.3.1.tar.gz", + "version": "4.3.1", "description": "**πŸ’Œ A mail app for Nextcloud**\n\n- **πŸš€ Integration with other Nextcloud apps!** Currently Contacts, Calendar & Files – more to come.\n- **πŸ“₯ Multiple mail accounts!** Personal and company account? No problem, and a nice unified inbox. Connect any IMAP account.\n- **πŸ”’ Send & receive encrypted mails!** Using the great [Mailvelope](https://mailvelope.com) browser extension.\n- **πŸ™ˆ We’re not reinventing the wheel!** Based on the great [Horde](https://horde.org) libraries.\n- **πŸ“¬ Want to host your own mail server?** We do not have to reimplement this as you could set up [Mail-in-a-Box](https://mailinabox.email)!\n\n## Ethical AI Rating\n\n### Priority Inbox\n\nPositive:\n* The software for training and inferencing of this model is open source.\n* The model is created and trained on-premises based on the user's own data.\n* The training data is accessible to the user, making it possible to check or correct for bias or optimise the performance and CO2 usage.\n\n### Thread Summaries (opt-in)\n\n**Rating:** 🟒/🟑/🟠/πŸ”΄\n\nThe rating depends on the installed text processing backend. See [the rating overview](https://docs.nextcloud.com/server/latest/admin_manual/ai/index.html) for details.\n\nLearn more about the Nextcloud Ethical AI Rating [in our blog](https://nextcloud.com/blog/nextcloud-ethical-ai-rating/).", "homepage": "https://github.com/nextcloud/mail#readme", "licenses": [ diff --git a/pkgs/servers/nextcloud/packages/31.json b/pkgs/servers/nextcloud/packages/31.json index 2fe69cf9d338..b2b7bcce45e2 100644 --- a/pkgs/servers/nextcloud/packages/31.json +++ b/pkgs/servers/nextcloud/packages/31.json @@ -20,9 +20,9 @@ ] }, "calendar": { - "hash": "sha256-MpWmWSyC6ZxzE8Xu+rjCxl9OhdmSydGMR+zcJyoH7uE=", - "url": "https://github.com/nextcloud-releases/calendar/releases/download/v5.1.3/calendar-v5.1.3.tar.gz", - "version": "5.1.3", + "hash": "sha256-mAH/A5oiPwIh6K6bb9wd55CmqMoEAaKQVVr8zFNbXE8=", + "url": "https://github.com/nextcloud-releases/calendar/releases/download/v5.2.0/calendar-v5.2.0.tar.gz", + "version": "5.2.0", "description": "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* πŸš€ **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* πŸ™‹ **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* πŸ” Search! Find your events at ease\n* β˜‘οΈ Tasks! See tasks with a due date directly in the calendar\n* πŸ™ˆ **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries.", "homepage": "https://github.com/nextcloud/calendar/", "licenses": [ @@ -140,10 +140,10 @@ ] }, "groupfolders": { - "hash": "sha256-xotf3sAiP1sQNHfL+2kuE04YsbV4rGfDYDyZUkteGHY=", - "url": "https://github.com/nextcloud-releases/groupfolders/releases/download/v19.0.3/groupfolders-v19.0.3.tar.gz", - "version": "19.0.3", - "description": "Admin configured folders shared with everyone in a group.\n\nFolders can be configured from *Group folders* in the admin settings.\n\nAfter a folder is created, the admin can give access to the folder to one or more groups, control their write/sharing permissions and assign a quota for the folder.", + "hash": "sha256-lFIXNbBqdRHEvNFu2P68IF4v0+E4rFWLdRJYWm3RM/k=", + "url": "https://github.com/nextcloud-releases/groupfolders/releases/download/v19.0.4/groupfolders-v19.0.4.tar.gz", + "version": "19.0.4", + "description": "Admin configured folders shared with everyone in a team.\n\nFolders can be configured from *Team folders* in the admin settings.\n\nAfter a folder is created, the admin can give access to the folder to one or more teams, control their write/sharing permissions and assign a quota for the folder.", "homepage": "https://github.com/nextcloud/groupfolders", "licenses": [ "agpl" @@ -190,9 +190,9 @@ ] }, "mail": { - "hash": "sha256-c/inKInFwLG7MdNcJPV7NzF1QNRgKNWyC+rjnza2/K8=", - "url": "https://github.com/nextcloud-releases/mail/releases/download/v4.2.6/mail-stable4.2.tar.gz", - "version": "4.2.6", + "hash": "sha256-EFhjy0LcJCsNHJy//rGwM1f3UkAGLNXzC6lz6k5JstY=", + "url": "https://github.com/nextcloud-releases/mail/releases/download/v4.3.1/mail-v4.3.1.tar.gz", + "version": "4.3.1", "description": "**πŸ’Œ A mail app for Nextcloud**\n\n- **πŸš€ Integration with other Nextcloud apps!** Currently Contacts, Calendar & Files – more to come.\n- **πŸ“₯ Multiple mail accounts!** Personal and company account? No problem, and a nice unified inbox. Connect any IMAP account.\n- **πŸ”’ Send & receive encrypted mails!** Using the great [Mailvelope](https://mailvelope.com) browser extension.\n- **πŸ™ˆ We’re not reinventing the wheel!** Based on the great [Horde](https://horde.org) libraries.\n- **πŸ“¬ Want to host your own mail server?** We do not have to reimplement this as you could set up [Mail-in-a-Box](https://mailinabox.email)!\n\n## Ethical AI Rating\n\n### Priority Inbox\n\nPositive:\n* The software for training and inferencing of this model is open source.\n* The model is created and trained on-premises based on the user's own data.\n* The training data is accessible to the user, making it possible to check or correct for bias or optimise the performance and CO2 usage.\n\n### Thread Summaries (opt-in)\n\n**Rating:** 🟒/🟑/🟠/πŸ”΄\n\nThe rating depends on the installed text processing backend. See [the rating overview](https://docs.nextcloud.com/server/latest/admin_manual/ai/index.html) for details.\n\nLearn more about the Nextcloud Ethical AI Rating [in our blog](https://nextcloud.com/blog/nextcloud-ethical-ai-rating/).", "homepage": "https://github.com/nextcloud/mail#readme", "licenses": [ From 0354cb868247cbbd10a83960d687f85cdd041c80 Mon Sep 17 00:00:00 2001 From: berber Date: Wed, 19 Mar 2025 17:00:43 +0100 Subject: [PATCH 2/3] nextcloudPackages: add oidc_login --- pkgs/servers/nextcloud/packages/29.json | 10 ++++++++++ pkgs/servers/nextcloud/packages/30.json | 10 ++++++++++ pkgs/servers/nextcloud/packages/31.json | 10 ++++++++++ pkgs/servers/nextcloud/packages/nextcloud-apps.json | 1 + 4 files changed, 31 insertions(+) diff --git a/pkgs/servers/nextcloud/packages/29.json b/pkgs/servers/nextcloud/packages/29.json index 63e2abe676dc..222cd4e4fbb3 100644 --- a/pkgs/servers/nextcloud/packages/29.json +++ b/pkgs/servers/nextcloud/packages/29.json @@ -249,6 +249,16 @@ "agpl" ] }, + "oidc_login": { + "hash": "sha256-RLYquOE83xquzv+s38bahOixQ+y4UI6OxP9HfO26faI=", + "url": "https://github.com/pulsejet/nextcloud-oidc-login/releases/download/v3.2.2/oidc_login.tar.gz", + "version": "3.2.2", + "description": "# OpenID Connect Login\n\nProvides user creation and login via one single OpenID Connect provider. Even though this is a fork of [nextcloud-social-login](https://github.com/zorn-v/nextcloud-social-login), it fundamentally differs in two ways - aims for simplistic, single provider login (and hence is very minimalistic), and it supports having LDAP as the primary user backend. This way, you can use OpenID Connect to login to Nextcloud while maintaining an LDAP backend with attributes with the LDAP plugin.\n\n### Features\n\n- Automatic [Identity provider endpoints discovery](https://openid.net/specs/openid-connect-discovery-1_0.html)\n- User creation at first login\n- User profile update at login (name, email, avatar, groups etc.)\n- Group creation\n- Automatic redirection from the nextcloud login page to the Identity Provider login page\n- WebDAV endpoints `Bearer` and `Basic` authentication", + "homepage": "https://github.com/pulsejet/nextcloud-single-openid-connect", + "licenses": [ + "agpl" + ] + }, "onlyoffice": { "hash": "sha256-Bh0CGw0qdJI+NzJ/dmzoqSZdVYzcFbqSJa70gvZhDGs=", "url": "https://github.com/ONLYOFFICE/onlyoffice-nextcloud/releases/download/v9.7.0/onlyoffice.tar.gz", diff --git a/pkgs/servers/nextcloud/packages/30.json b/pkgs/servers/nextcloud/packages/30.json index 0346c5ea1d1a..13ede76e727d 100644 --- a/pkgs/servers/nextcloud/packages/30.json +++ b/pkgs/servers/nextcloud/packages/30.json @@ -249,6 +249,16 @@ "agpl" ] }, + "oidc_login": { + "hash": "sha256-RLYquOE83xquzv+s38bahOixQ+y4UI6OxP9HfO26faI=", + "url": "https://github.com/pulsejet/nextcloud-oidc-login/releases/download/v3.2.2/oidc_login.tar.gz", + "version": "3.2.2", + "description": "# OpenID Connect Login\n\nProvides user creation and login via one single OpenID Connect provider. Even though this is a fork of [nextcloud-social-login](https://github.com/zorn-v/nextcloud-social-login), it fundamentally differs in two ways - aims for simplistic, single provider login (and hence is very minimalistic), and it supports having LDAP as the primary user backend. This way, you can use OpenID Connect to login to Nextcloud while maintaining an LDAP backend with attributes with the LDAP plugin.\n\n### Features\n\n- Automatic [Identity provider endpoints discovery](https://openid.net/specs/openid-connect-discovery-1_0.html)\n- User creation at first login\n- User profile update at login (name, email, avatar, groups etc.)\n- Group creation\n- Automatic redirection from the nextcloud login page to the Identity Provider login page\n- WebDAV endpoints `Bearer` and `Basic` authentication", + "homepage": "https://github.com/pulsejet/nextcloud-single-openid-connect", + "licenses": [ + "agpl" + ] + }, "onlyoffice": { "hash": "sha256-Bh0CGw0qdJI+NzJ/dmzoqSZdVYzcFbqSJa70gvZhDGs=", "url": "https://github.com/ONLYOFFICE/onlyoffice-nextcloud/releases/download/v9.7.0/onlyoffice.tar.gz", diff --git a/pkgs/servers/nextcloud/packages/31.json b/pkgs/servers/nextcloud/packages/31.json index b2b7bcce45e2..269eb424ad6d 100644 --- a/pkgs/servers/nextcloud/packages/31.json +++ b/pkgs/servers/nextcloud/packages/31.json @@ -239,6 +239,16 @@ "agpl" ] }, + "oidc_login": { + "hash": "sha256-RLYquOE83xquzv+s38bahOixQ+y4UI6OxP9HfO26faI=", + "url": "https://github.com/pulsejet/nextcloud-oidc-login/releases/download/v3.2.2/oidc_login.tar.gz", + "version": "3.2.2", + "description": "# OpenID Connect Login\n\nProvides user creation and login via one single OpenID Connect provider. Even though this is a fork of [nextcloud-social-login](https://github.com/zorn-v/nextcloud-social-login), it fundamentally differs in two ways - aims for simplistic, single provider login (and hence is very minimalistic), and it supports having LDAP as the primary user backend. This way, you can use OpenID Connect to login to Nextcloud while maintaining an LDAP backend with attributes with the LDAP plugin.\n\n### Features\n\n- Automatic [Identity provider endpoints discovery](https://openid.net/specs/openid-connect-discovery-1_0.html)\n- User creation at first login\n- User profile update at login (name, email, avatar, groups etc.)\n- Group creation\n- Automatic redirection from the nextcloud login page to the Identity Provider login page\n- WebDAV endpoints `Bearer` and `Basic` authentication", + "homepage": "https://github.com/pulsejet/nextcloud-single-openid-connect", + "licenses": [ + "agpl" + ] + }, "onlyoffice": { "hash": "sha256-Bh0CGw0qdJI+NzJ/dmzoqSZdVYzcFbqSJa70gvZhDGs=", "url": "https://github.com/ONLYOFFICE/onlyoffice-nextcloud/releases/download/v9.7.0/onlyoffice.tar.gz", diff --git a/pkgs/servers/nextcloud/packages/nextcloud-apps.json b/pkgs/servers/nextcloud/packages/nextcloud-apps.json index 0d25f9429a3a..7e22c1c47943 100644 --- a/pkgs/servers/nextcloud/packages/nextcloud-apps.json +++ b/pkgs/servers/nextcloud/packages/nextcloud-apps.json @@ -26,6 +26,7 @@ , "music": "agpl3Plus" , "news": "agpl3Plus" , "notes": "agpl3Plus" +, "oidc_login": "agpl3Only" , "onlyoffice": "asl20" , "phonetrack": "agpl3Plus" , "polls": "agpl3Plus" From c86a9eabb9a27ec432cb7f4772b7950b088353ee Mon Sep 17 00:00:00 2001 From: berber Date: Wed, 19 Mar 2025 17:04:07 +0100 Subject: [PATCH 3/3] nextcloudPackages: edit README.md --- pkgs/servers/nextcloud/packages/README.md | 30 +++++++++++++++++------ 1 file changed, 22 insertions(+), 8 deletions(-) diff --git a/pkgs/servers/nextcloud/packages/README.md b/pkgs/servers/nextcloud/packages/README.md index 0b325848f2ed..93d1436b25b2 100644 --- a/pkgs/servers/nextcloud/packages/README.md +++ b/pkgs/servers/nextcloud/packages/README.md @@ -1,4 +1,16 @@ -= Adding apps = +## Updating apps + +To regenerate the nixpkgs nextcloudPackages set, run: + +``` +./generate.sh +``` + +After that you can commit and submit the changes in a pull request. + +## Adding apps + +**Before adding an app and making a pull request to nixpkgs, please first update as described above in a separate commit.** To extend the nextcloudPackages set, add a new line to the corresponding json file with the id of the app: @@ -11,27 +23,29 @@ https://apps.nextcloud.com. The id corresponds to the last part in the app url, for example `breezedark` for the app with the url `https://apps.nextcloud.com/apps/breezedark`. -To regenerate the nixpkgs nextcloudPackages set, run: +Then regenerate the nixpkgs nextcloudPackages set by running: ``` ./generate.sh ``` -After that you can commit and submit the changes. +**Make sure that in this update, only the app added to `nextcloud-apps.json` gets updated.** -= Usage with the Nextcloud module = +After that you can commit and submit the changes in a pull request. -The apps will be available in the namespace `nextcloud25Packages.apps`. +## Usage with the Nextcloud module + +The apps will be available in the namespace `nextcloud31Packages.apps` (and for older versions of Nextcloud similarly). Using it together with the Nextcloud module could look like this: -```nix +``` { services.nextcloud = { enable = true; - package = pkgs.nextcloud25; + package = pkgs.nextcloud31; hostName = "localhost"; config.adminpassFile = "${pkgs.writeText "adminpass" "hunter2"}"; - extraApps = with pkgs.nextcloud25Packages.apps; { + extraApps = with pkgs.nextcloud31Packages.apps; { inherit mail calendar contact; }; extraAppsEnable = true;