···655655 # "systemctl stop" here because systemd has lots of alias
656656 # units that prevent a stop from actually calling
657657 # "swapoff".
658658- if ($action ne "dry-activate") {
658658+ if ($action eq "dry-activate") {
659659 print STDERR "would stop swap device: $device\n";
660660 } else {
661661 print STDERR "stopping swap device: $device\n";
···11{ lib
22+, nixosTests
23, vscode-utils
34, useLocalExtensions ? false
45}:
···89910let
1011 inherit (vscode-utils) buildVscodeMarketplaceExtension;
1111-1212- nodeVersion = "16";
13121413 # As VS Code executes this code on the remote machine
1514 # we test to see if we can build Node from Nixpkgs
···2322 serverNode="$serverDir/node"
2423 echo "VS Code Node: $serverNode"
25242626- # Check if VS Code Server has a non-working Node or the wrong version of Node
2727- if ! nodeVersion=$($serverNode -v) || [ "\''${nodeVersion:1:2}" != "${nodeVersion}" ]; then
2525+ # Check if Node included with VS Code Server runs
2626+ if ! nodeVersion=$($serverNode -v); then
2827 echo "VS Code Node Version: $nodeVersion"
29283030- if nix-build "<nixpkgs>" -A nodejs-${nodeVersion}_x --out-link "$serverDir/nix" && [ -e "$serverDir/nix/bin/node" ]; then
3131- nodePath="$serverDir/nix/bin/node"
2929+ if ! nix-build "<nixpkgs>" -A patchelf --out-link "$serverDir/patchelf" || ! "$serverDir/patchelf/bin/patchelf" --version; then
3030+ echo "Failed to get patchelf from nixpkgs"
3231 fi
33323434- echo "Node from Nix: $nodePath"
3333+ if [ -e $serverNode.orig ]; then
3434+ cp $serverNode.orig $serverNode
3535+ else
3636+ cp $serverNode $serverNode.orig
3737+ fi
35383636- nodeVersion=$($nodePath -v)
3737- echo "Node from Nix Version: $nodeVersion"
3939+ if ! nix-build "<nixpkgs>" -A bintools --out-link $serverDir/bintools; then
4040+ echo "Failed to build bintools from nixpkgs"
4141+ fi
4242+4343+ INTERPRETER=$(cat $serverDir/bintools/nix-support/dynamic-linker)
4444+4545+ echo "Interpreter from bintools: $INTERPRETER"
38463939- if [ "\''${nodeVersion:1:2}" != "${nodeVersion}" ]; then
4040- echo "Getting Node from Nix failed, use Local Node instead"
4141- nodePath=$(which node)
4242- echo "Local Node: $nodePath"
4343- nodeVersion=$($nodePath -v)
4444- echo "Local Node Version: $nodeVersion"
4747+ if ! nix-build "<nixpkgs>" -A stdenv.cc.cc.lib --out-link $serverDir/cc; then
4848+ echo "Failed to build stdenv.cc.cc.lib from nixpkgs"
4549 fi
46504747- if [ "\''${nodeVersion:1:2}" == "${nodeVersion}" ]; then
4848- echo PATCH: replacing $serverNode with $nodePath
4949- ln -sf $nodePath $serverNode
5151+ if ! $serverDir/patchelf/bin/patchelf --set-interpreter $INTERPRETER --set-rpath $serverDir/cc-lib/lib $serverNode; then
5252+ echo "Failed to patch Node binary"
5053 fi
5454+5555+ rm "$serverDir/patchelf"
5156 fi
52575358 nodeVersion=$($serverNode -v)
5459 echo "VS Code Node Version: $nodeVersion"
55605656- if [ "\''${nodeVersion:1:2}" != "${nodeVersion}" ]; then
5757- echo "Unsupported VS Code Node version: $nodeVersion", quitting
6161+ if ! nodeVersion=$($serverNode -v); then
6262+ echo "Unable to fix Node binary, quitting"
5863 fail_with_exitcode ''${o.InstallExitCode.ServerTransferFailed}
5964 fi
6065···8691 substituteInPlace "out/extension.js" \
8792 --replace '# Start the server\n' '${patch}'
8893 '';
9494+9595+ passthru.tests = { inherit (nixosTests) vscode-remote-ssh; };
89969097 meta = {
9198 description = "Use any remote machine with a SSH server as your development environment.";
+4
pkgs/applications/editors/vscode/generic.nix
···1313, version, src, meta, sourceRoot, commandLineArgs
1414, executableName, longName, shortName, pname, updateScript
1515, dontFixup ? false
1616+, rev ? null, vscodeServer ? null
1717+1618# sourceExecutableName is the name of the binary in the source archive, over
1719# which we have no control
1820, sourceExecutableName ? executableName
···3032 inherit executableName longName tests updateScript;
3133 fhs = fhs {};
3234 fhsWithPackages = f: fhs { additionalPkgs = f; };
3535+ } // lib.optionalAttrs (vscodeServer != null) {
3636+ inherit rev vscodeServer;
3337 };
34383539 desktopItem = makeDesktopItem {
···11{ stdenv }:
22# srcOnly is a utility builder that only fetches and unpacks the given `src`,
33-# maybe pathings it in the process with the optional `patches` and
44-# `buildInputs` attributes.
33+# and optionally patching with `patches` or adding build inputs.
54#
65# It can be invoked directly, or be used to wrap an existing derivation. Eg:
76#
···1010 ]
1111 },
1212 "calendar": {
1313- "sha256": "154xw925v8wipl472vpksiccf1jnic615add6v1zzaxwqwclhjrv",
1414- "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.4.0-beta1/calendar-v4.4.0-beta1.tar.gz",
1515- "version": "4.4.0-beta.1",
1313+ "sha256": "1j4n5l80xa3c0ai8vjwhhixyq8vq5hk0k2asy3nn8bpdi2ip9gzj",
1414+ "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.4.2/calendar-v4.4.2.tar.gz",
1515+ "version": "4.4.2",
1616 "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.",
1717 "homepage": "https://github.com/nextcloud/calendar/",
1818 "licenses": [
···2020 ]
2121 },
2222 "contacts": {
2323- "sha256": "1yrvm6284v3j6aj0qwkf0z2dpydmncdz4w239l1ayrix2sr5ys91",
2424- "url": "https://github.com/nextcloud-releases/contacts/releases/download/v5.3.0-beta2/contacts-v5.3.0-beta2.tar.gz",
2525- "version": "5.3.0-beta.2",
2323+ "sha256": "1xs42qfnw9j5f930798yl9vj2dpmjsg3i1m6phx0x3dbcbjd2da6",
2424+ "url": "https://github.com/nextcloud-releases/contacts/releases/download/v5.3.0/contacts-v5.3.0.tar.gz",
2525+ "version": "5.3.0",
2626 "description": "The Nextcloud contacts app is a user interface for Nextcloud's CardDAV server. Easily sync contacts from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Mail and Calendar – more to come.\n* 🎉 **Never forget a birthday!** You can sync birthdays and other recurring events with your Nextcloud Calendar.\n* 👥 **Sharing of Adressbooks!** You want to share your contacts with your friends or coworkers? No problem!\n* 🙈 **We’re not reinventing the wheel!** Based on the great and open SabreDAV library.",
2727 "homepage": "https://github.com/nextcloud/contacts#readme",
2828 "licenses": [
···4040 ]
4141 },
4242 "files_markdown": {
4343- "sha256": "14q3xz8fisbimym0hrh4qvfychf15qf0im1japiyihjckq4pwm4b",
4444- "url": "https://github.com/icewind1991/files_markdown/releases/download/v2.4.0/files_markdown-v2.4.0.tar.gz",
4545- "version": "2.4.0",
4343+ "sha256": "0p97ha6x3czzbflavmjn4jmz3z706h5f84spg4j7dwq3nc9bqrf7",
4444+ "url": "https://github.com/icewind1991/files_markdown/releases/download/v2.4.1/files_markdown-v2.4.1.tar.gz",
4545+ "version": "2.4.1",
4646 "description": "Markdown Editor extends the Nextcloud text editor with a live preview for markdown files.\n\nA full list of features can be found [in the README](https://github.com/icewind1991/files_markdown)",
4747 "homepage": "https://github.com/icewind1991/files_markdown",
4848 "licenses": [
···6060 ]
6161 },
6262 "forms": {
6363- "sha256": "1hjdwhhx5p9n185b5v0vbxhnarcm83r52hsqq7qwfcfpy86axafr",
6464- "url": "https://github.com/nextcloud/forms/releases/download/v3.2.0/forms.tar.gz",
6565- "version": "3.2.0",
6363+ "sha256": "0jfnidmx93k0z923m3p3bi8qv46j875cpnc60hlpxvcl35zbb2rl",
6464+ "url": "https://github.com/nextcloud-releases/forms/releases/download/v3.3.0/forms-v3.3.0.tar.gz",
6565+ "version": "3.3.0",
6666 "description": "**Simple surveys and questionnaires, self-hosted!**\n\n- **📝 Simple design:** No mass of options, only the essentials. Works well on mobile of course.\n- **📊 View & export results:** Results are visualized and can also be exported as CSV in the same format used by Google Forms.\n- **🔒 Data under your control!** Unlike in Google Forms, Typeform, Doodle and others, the survey info and responses are kept private on your instance.\n- **🧑💻 Connect to your software:** Easily integrate Forms into your service with our full-fledged [REST-API](https://github.com/nextcloud/forms/blob/main/docs/API.md).\n- **🙋 Get involved!** We have lots of stuff planned like more question types, collaboration on forms, [and much more](https://github.com/nextcloud/forms/milestones)!",
6767 "homepage": "https://github.com/nextcloud/forms",
6868 "licenses": [
···8080 ]
8181 },
8282 "impersonate": {
8383- "sha256": "1whngpqx4b2vdsr8a9j8agdg2c8rm5rbk2vhh92myws55lqlbnz9",
8484- "url": "https://github.com/nextcloud-releases/impersonate/releases/download/v1.12.0/impersonate-v1.12.0.tar.gz",
8585- "version": "1.12.0",
8383+ "sha256": "0mlr2dcsbf0njbywcq5vrjjfrac3wk6z9zrcsd39pjznq5l4qky7",
8484+ "url": "https://github.com/nextcloud-releases/impersonate/releases/download/v1.12.1/impersonate-v1.12.1.tar.gz",
8585+ "version": "1.12.1",
8686 "description": "By installing the impersonate app of your Nextcloud you enable administrators to impersonate other users on the Nextcloud server. This is especially useful for debugging issues reported by users.\n\nTo impersonate a user an administrator has to simply follow the following four steps:\n\n1. Login as administrator to Nextcloud.\n2. Open users administration interface.\n3. Select the impersonate button on the affected user.\n4. Confirm the impersonation.\n\nThe administrator is then logged-in as the user, to switch back to the regular user account they simply have to press the logout button.\n\n**Note:**\n\n- This app is not compatible with instances that have encryption enabled.\n- While impersonate actions are logged note that actions performed impersonated will be logged as the impersonated user.\n- Impersonating a user is only possible after their first login.",
8787 "homepage": "https://github.com/nextcloud/impersonate",
8888 "licenses": [
···120120 ]
121121 },
122122 "notes": {
123123- "sha256": "1zhqdagc8rw018cfkdcfmbvvcj4cbfsp16yy5crpkhp9kayybivr",
124124- "url": "https://github.com/nextcloud-releases/notes/releases/download/v4.8.0-beta.1/notes.tar.gz",
125125- "version": "4.8.0-beta.1",
123123+ "sha256": "1l1f9gjbx6mlvl92vw9gxmz9xar6l533m3g5vx9n9n0bn9x9zl56",
124124+ "url": "https://github.com/nextcloud-releases/notes/releases/download/v4.8.0/notes.tar.gz",
125125+ "version": "4.8.0",
126126 "description": "The Notes app is a distraction free notes taking app for [Nextcloud](https://www.nextcloud.com/). It provides categories for better organization and supports formatting using [Markdown](https://en.wikipedia.org/wiki/Markdown) syntax. Notes are saved as files in your Nextcloud, so you can view and edit them with every Nextcloud client. Furthermore, a separate [REST API](https://github.com/nextcloud/notes/blob/master/docs/api/README.md) allows for an easy integration into third-party apps (currently, there are notes apps for [Android](https://github.com/nextcloud/notes-android), [iOS](https://github.com/nextcloud/notes-ios) and the [console](https://git.danielmoch.com/nncli/about) which allow convenient access to your Nextcloud notes). Further features include marking notes as favorites.",
127127 "homepage": "https://github.com/nextcloud/notes",
128128 "licenses": [
···130130 ]
131131 },
132132 "notify_push": {
133133- "sha256": "1fz6wi5nb4c2w33vp9ry2mk4lmv7aa3axyfxzldf5w4glfzaymzw",
134134- "url": "https://github.com/nextcloud-releases/notify_push/releases/download/v0.6.2/notify_push-v0.6.2.tar.gz",
135135- "version": "0.6.2",
133133+ "sha256": "0hdxnkar2ibis5p0gp3yr1i6894la9wxq4pzrbqdrq2cgvsj6a18",
134134+ "url": "https://github.com/nextcloud-releases/notify_push/releases/download/v0.6.3/notify_push-v0.6.3.tar.gz",
135135+ "version": "0.6.3",
136136 "description": "Push update support for desktop app.\n\nOnce the app is installed, the push binary needs to be setup. You can either use the setup wizard with `occ notify_push:setup` or see the [README](http://github.com/nextcloud/notify_push) for detailed setup instructions",
137137 "homepage": "",
138138 "licenses": [
···160160 ]
161161 },
162162 "previewgenerator": {
163163- "sha256": "0qcilg85rgjj9ygvhbkfcw08lay2y6ijxyk06wv0p6yw66pj8x0w",
164164- "url": "https://github.com/nextcloud-releases/previewgenerator/releases/download/v5.2.4/previewgenerator-v5.2.4.tar.gz",
165165- "version": "5.2.4",
163163+ "sha256": "0ziyl7kqgivk9xvkd12byps6bb3fvcvdgprfa9ffy1zrgpl9syhk",
164164+ "url": "https://github.com/nextcloud-releases/previewgenerator/releases/download/v5.3.0/previewgenerator-v5.3.0.tar.gz",
165165+ "version": "5.3.0",
166166 "description": "The Preview Generator app allows admins to pre-generate previews. The app listens to edit events and stores this information. Once a cron job is triggered it will generate start preview generation. This means that you can better utilize your system by pre-generating previews when your system is normally idle and thus putting less load on your machine when the requests are actually served.\n\nThe app does not replace on demand preview generation so if a preview is requested before it is pre-generated it will still be shown.\nThe first time you install this app, before using a cron job, you properly want to generate all previews via:\n**./occ preview:generate-all -vvv**\n\n**Important**: To enable pre-generation of previews you must add **php /var/www/nextcloud/occ preview:pre-generate** to a system cron job that runs at times of your choosing.",
167167 "homepage": "https://github.com/nextcloud/previewgenerator",
168168 "licenses": [
···180180 ]
181181 },
182182 "spreed": {
183183- "sha256": "1y78prkjgr1fk1miadbdjriq68nqspmfxd9q6cpbjr3aaq4jb541",
184184- "url": "https://github.com/nextcloud-releases/spreed/releases/download/v15.0.5/spreed-v15.0.5.tar.gz",
185185- "version": "15.0.5",
183183+ "sha256": "1b6v7jfvrkpyarz4zg1lvw938wv3hx6g0nhpdvsfnjqr03rrgywk",
184184+ "url": "https://github.com/nextcloud-releases/spreed/releases/download/v15.0.6/spreed-v15.0.6.tar.gz",
185185+ "version": "15.0.6",
186186 "description": "Chat, video & audio-conferencing using WebRTC\n\n* 💬 **Chat integration!** Nextcloud Talk comes with a simple text chat. Allowing you to share files from your Nextcloud and mentioning other participants.\n* 👥 **Private, group, public and password protected calls!** Just invite somebody, a whole group or send a public link to invite to a call.\n* 💻 **Screen sharing!** Share your screen with participants of your call. You just need to use Firefox version 66 (or newer), latest Edge or Chrome 72 (or newer, also possible using Chrome 49 with this [Chrome extension](https://chrome.google.com/webstore/detail/screensharing-for-nextclo/kepnpjhambipllfmgmbapncekcmabkol)).\n* 🚀 **Integration with other Nextcloud apps** like Files, Contacts and Deck. More to come.\n\nAnd in the works for the [coming versions](https://github.com/nextcloud/spreed/milestones/):\n* ✋ [Federated calls](https://github.com/nextcloud/spreed/issues/21), to call people on other Nextclouds",
187187 "homepage": "https://github.com/nextcloud/spreed",
188188 "licenses": [
···190190 ]
191191 },
192192 "tasks": {
193193- "sha256": "0jm13d6nm7cfsw27yfiq1il9xjlh0qrq8xby2yz9dmggn7lk1dx5",
194194- "url": "https://github.com/nextcloud/tasks/releases/download/v0.14.5/tasks.tar.gz",
195195- "version": "0.14.5",
193193+ "sha256": "0a1wpb9f08iqxl9vjp0slxwzn0w67ilpk21dsi0nhpm28ns2mhyc",
194194+ "url": "https://github.com/nextcloud/tasks/releases/download/v0.15.0/tasks.tar.gz",
195195+ "version": "0.15.0",
196196 "description": "Once enabled, a new Tasks menu will appear in your Nextcloud apps menu. From there you can add and delete tasks, edit their title, description, start and due dates and mark them as important. Tasks can be shared between users. Tasks can be synchronized using CalDav (each task list is linked to an Nextcloud calendar, to sync it to your local client: Thunderbird, Evolution, KDE Kontact, iCal … - just add the calendar as a remote calendar in your client). You can download your tasks as ICS files using the download button for each calendar.",
197197 "homepage": "https://github.com/nextcloud/tasks/",
198198 "licenses": [
···220220 ]
221221 },
222222 "twofactor_webauthn": {
223223- "sha256": "1f5zamydsl7lr91md2qmz0wzsfvs8q05qpn96x6i7c6886vx18xf",
224224- "url": "https://github.com/nextcloud-releases/twofactor_webauthn/releases/download/v1.1.2/twofactor_webauthn-v1.1.2.tar.gz",
225225- "version": "1.1.2",
223223+ "sha256": "1lqcw74rsnl8c4sirw9208ra3c8zl8zp93scs7y8fv2n4n60l465",
224224+ "url": "https://github.com/nextcloud-releases/twofactor_webauthn/releases/download/v1.2.0/twofactor_webauthn-v1.2.0.tar.gz",
225225+ "version": "1.2.0",
226226 "description": "A two-factor provider for WebAuthn devices",
227227 "homepage": "https://github.com/nextcloud/twofactor_webauthn#readme",
228228 "licenses": [
+30-30
pkgs/servers/nextcloud/packages/26.json
···1010 ]
1111 },
1212 "calendar": {
1313- "sha256": "154xw925v8wipl472vpksiccf1jnic615add6v1zzaxwqwclhjrv",
1414- "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.4.0-beta1/calendar-v4.4.0-beta1.tar.gz",
1515- "version": "4.4.0-beta.1",
1313+ "sha256": "1j4n5l80xa3c0ai8vjwhhixyq8vq5hk0k2asy3nn8bpdi2ip9gzj",
1414+ "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.4.2/calendar-v4.4.2.tar.gz",
1515+ "version": "4.4.2",
1616 "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.",
1717 "homepage": "https://github.com/nextcloud/calendar/",
1818 "licenses": [
···2020 ]
2121 },
2222 "contacts": {
2323- "sha256": "1yrvm6284v3j6aj0qwkf0z2dpydmncdz4w239l1ayrix2sr5ys91",
2424- "url": "https://github.com/nextcloud-releases/contacts/releases/download/v5.3.0-beta2/contacts-v5.3.0-beta2.tar.gz",
2525- "version": "5.3.0-beta.2",
2323+ "sha256": "1xs42qfnw9j5f930798yl9vj2dpmjsg3i1m6phx0x3dbcbjd2da6",
2424+ "url": "https://github.com/nextcloud-releases/contacts/releases/download/v5.3.0/contacts-v5.3.0.tar.gz",
2525+ "version": "5.3.0",
2626 "description": "The Nextcloud contacts app is a user interface for Nextcloud's CardDAV server. Easily sync contacts from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Mail and Calendar – more to come.\n* 🎉 **Never forget a birthday!** You can sync birthdays and other recurring events with your Nextcloud Calendar.\n* 👥 **Sharing of Adressbooks!** You want to share your contacts with your friends or coworkers? No problem!\n* 🙈 **We’re not reinventing the wheel!** Based on the great and open SabreDAV library.",
2727 "homepage": "https://github.com/nextcloud/contacts#readme",
2828 "licenses": [
···4040 ]
4141 },
4242 "files_markdown": {
4343- "sha256": "14q3xz8fisbimym0hrh4qvfychf15qf0im1japiyihjckq4pwm4b",
4444- "url": "https://github.com/icewind1991/files_markdown/releases/download/v2.4.0/files_markdown-v2.4.0.tar.gz",
4545- "version": "2.4.0",
4343+ "sha256": "0p97ha6x3czzbflavmjn4jmz3z706h5f84spg4j7dwq3nc9bqrf7",
4444+ "url": "https://github.com/icewind1991/files_markdown/releases/download/v2.4.1/files_markdown-v2.4.1.tar.gz",
4545+ "version": "2.4.1",
4646 "description": "Markdown Editor extends the Nextcloud text editor with a live preview for markdown files.\n\nA full list of features can be found [in the README](https://github.com/icewind1991/files_markdown)",
4747 "homepage": "https://github.com/icewind1991/files_markdown",
4848 "licenses": [
···6060 ]
6161 },
6262 "forms": {
6363- "sha256": "1hjdwhhx5p9n185b5v0vbxhnarcm83r52hsqq7qwfcfpy86axafr",
6464- "url": "https://github.com/nextcloud/forms/releases/download/v3.2.0/forms.tar.gz",
6565- "version": "3.2.0",
6363+ "sha256": "0jfnidmx93k0z923m3p3bi8qv46j875cpnc60hlpxvcl35zbb2rl",
6464+ "url": "https://github.com/nextcloud-releases/forms/releases/download/v3.3.0/forms-v3.3.0.tar.gz",
6565+ "version": "3.3.0",
6666 "description": "**Simple surveys and questionnaires, self-hosted!**\n\n- **📝 Simple design:** No mass of options, only the essentials. Works well on mobile of course.\n- **📊 View & export results:** Results are visualized and can also be exported as CSV in the same format used by Google Forms.\n- **🔒 Data under your control!** Unlike in Google Forms, Typeform, Doodle and others, the survey info and responses are kept private on your instance.\n- **🧑💻 Connect to your software:** Easily integrate Forms into your service with our full-fledged [REST-API](https://github.com/nextcloud/forms/blob/main/docs/API.md).\n- **🙋 Get involved!** We have lots of stuff planned like more question types, collaboration on forms, [and much more](https://github.com/nextcloud/forms/milestones)!",
6767 "homepage": "https://github.com/nextcloud/forms",
6868 "licenses": [
···8080 ]
8181 },
8282 "impersonate": {
8383- "sha256": "0x5ap5s9qm4lffb022yxx1fmpgjk1w2y95cja4zfd5vc70d37r0s",
8484- "url": "https://github.com/nextcloud-releases/impersonate/releases/download/v1.13.0/impersonate-v1.13.0.tar.gz",
8585- "version": "1.13.0",
8383+ "sha256": "0imddmyg9s1v3d20spr26g7mbyz2mwl3v2l1a4nz5kaxl3a6fsr2",
8484+ "url": "https://github.com/nextcloud-releases/impersonate/releases/download/v1.13.1/impersonate-v1.13.1.tar.gz",
8585+ "version": "1.13.1",
8686 "description": "By installing the impersonate app of your Nextcloud you enable administrators to impersonate other users on the Nextcloud server. This is especially useful for debugging issues reported by users.\n\nTo impersonate a user an administrator has to simply follow the following four steps:\n\n1. Login as administrator to Nextcloud.\n2. Open users administration interface.\n3. Select the impersonate button on the affected user.\n4. Confirm the impersonation.\n\nThe administrator is then logged-in as the user, to switch back to the regular user account they simply have to press the logout button.\n\n**Note:**\n\n- This app is not compatible with instances that have encryption enabled.\n- While impersonate actions are logged note that actions performed impersonated will be logged as the impersonated user.\n- Impersonating a user is only possible after their first login.",
8787 "homepage": "https://github.com/nextcloud/impersonate",
8888 "licenses": [
···100100 ]
101101 },
102102 "mail": {
103103- "sha256": "07c6kvh5gbdp2lnwizih5d44py98gf6wy8snhlkx4x18gwp6fk9b",
104104- "url": "https://github.com/nextcloud-releases/mail/releases/download/v3.2.0-beta.2/mail-v3.2.0-beta.2.tar.gz",
105105- "version": "3.2.0-beta.2",
103103+ "sha256": "03az3x6mjswh4zj1a5zi9v7syskxkv98agvvv1pkmr76zbbvrzi0",
104104+ "url": "https://github.com/nextcloud-releases/mail/releases/download/v3.2.0/mail-v3.2.0.tar.gz",
105105+ "version": "3.2.0",
106106 "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)!",
107107 "homepage": "https://github.com/nextcloud/mail#readme",
108108 "licenses": [
···120120 ]
121121 },
122122 "notes": {
123123- "sha256": "1zhqdagc8rw018cfkdcfmbvvcj4cbfsp16yy5crpkhp9kayybivr",
124124- "url": "https://github.com/nextcloud-releases/notes/releases/download/v4.8.0-beta.1/notes.tar.gz",
125125- "version": "4.8.0-beta.1",
123123+ "sha256": "1l1f9gjbx6mlvl92vw9gxmz9xar6l533m3g5vx9n9n0bn9x9zl56",
124124+ "url": "https://github.com/nextcloud-releases/notes/releases/download/v4.8.0/notes.tar.gz",
125125+ "version": "4.8.0",
126126 "description": "The Notes app is a distraction free notes taking app for [Nextcloud](https://www.nextcloud.com/). It provides categories for better organization and supports formatting using [Markdown](https://en.wikipedia.org/wiki/Markdown) syntax. Notes are saved as files in your Nextcloud, so you can view and edit them with every Nextcloud client. Furthermore, a separate [REST API](https://github.com/nextcloud/notes/blob/master/docs/api/README.md) allows for an easy integration into third-party apps (currently, there are notes apps for [Android](https://github.com/nextcloud/notes-android), [iOS](https://github.com/nextcloud/notes-ios) and the [console](https://git.danielmoch.com/nncli/about) which allow convenient access to your Nextcloud notes). Further features include marking notes as favorites.",
127127 "homepage": "https://github.com/nextcloud/notes",
128128 "licenses": [
···160160 ]
161161 },
162162 "previewgenerator": {
163163- "sha256": "0qcilg85rgjj9ygvhbkfcw08lay2y6ijxyk06wv0p6yw66pj8x0w",
164164- "url": "https://github.com/nextcloud-releases/previewgenerator/releases/download/v5.2.4/previewgenerator-v5.2.4.tar.gz",
165165- "version": "5.2.4",
163163+ "sha256": "0ziyl7kqgivk9xvkd12byps6bb3fvcvdgprfa9ffy1zrgpl9syhk",
164164+ "url": "https://github.com/nextcloud-releases/previewgenerator/releases/download/v5.3.0/previewgenerator-v5.3.0.tar.gz",
165165+ "version": "5.3.0",
166166 "description": "The Preview Generator app allows admins to pre-generate previews. The app listens to edit events and stores this information. Once a cron job is triggered it will generate start preview generation. This means that you can better utilize your system by pre-generating previews when your system is normally idle and thus putting less load on your machine when the requests are actually served.\n\nThe app does not replace on demand preview generation so if a preview is requested before it is pre-generated it will still be shown.\nThe first time you install this app, before using a cron job, you properly want to generate all previews via:\n**./occ preview:generate-all -vvv**\n\n**Important**: To enable pre-generation of previews you must add **php /var/www/nextcloud/occ preview:pre-generate** to a system cron job that runs at times of your choosing.",
167167 "homepage": "https://github.com/nextcloud/previewgenerator",
168168 "licenses": [
···180180 ]
181181 },
182182 "spreed": {
183183- "sha256": "0y4qnpmbs0lbxf0cp6flhlmlxd17xi25jxs3acnbsg0dwrhhhhmm",
184184- "url": "https://github.com/nextcloud-releases/spreed/releases/download/v16.0.3/spreed-v16.0.3.tar.gz",
185185- "version": "16.0.3",
183183+ "sha256": "1khnbxifvs2w0xabc7ivsfzx845601f3dq5jg0nxbmrbigcdj7x2",
184184+ "url": "https://github.com/nextcloud-releases/spreed/releases/download/v16.0.4/spreed-v16.0.4.tar.gz",
185185+ "version": "16.0.4",
186186 "description": "Chat, video & audio-conferencing using WebRTC\n\n* 💬 **Chat integration!** Nextcloud Talk comes with a simple text chat. Allowing you to share files from your Nextcloud and mentioning other participants.\n* 👥 **Private, group, public and password protected calls!** Just invite somebody, a whole group or send a public link to invite to a call.\n* 💻 **Screen sharing!** Share your screen with participants of your call. You just need to use Firefox version 66 (or newer), latest Edge or Chrome 72 (or newer, also possible using Chrome 49 with this [Chrome extension](https://chrome.google.com/webstore/detail/screensharing-for-nextclo/kepnpjhambipllfmgmbapncekcmabkol)).\n* 🚀 **Integration with other Nextcloud apps** like Files, Contacts and Deck. More to come.\n\nAnd in the works for the [coming versions](https://github.com/nextcloud/spreed/milestones/):\n* ✋ [Federated calls](https://github.com/nextcloud/spreed/issues/21), to call people on other Nextclouds",
187187 "homepage": "https://github.com/nextcloud/spreed",
188188 "licenses": [
···190190 ]
191191 },
192192 "tasks": {
193193- "sha256": "0jm13d6nm7cfsw27yfiq1il9xjlh0qrq8xby2yz9dmggn7lk1dx5",
194194- "url": "https://github.com/nextcloud/tasks/releases/download/v0.14.5/tasks.tar.gz",
195195- "version": "0.14.5",
193193+ "sha256": "0a1wpb9f08iqxl9vjp0slxwzn0w67ilpk21dsi0nhpm28ns2mhyc",
194194+ "url": "https://github.com/nextcloud/tasks/releases/download/v0.15.0/tasks.tar.gz",
195195+ "version": "0.15.0",
196196 "description": "Once enabled, a new Tasks menu will appear in your Nextcloud apps menu. From there you can add and delete tasks, edit their title, description, start and due dates and mark them as important. Tasks can be shared between users. Tasks can be synchronized using CalDav (each task list is linked to an Nextcloud calendar, to sync it to your local client: Thunderbird, Evolution, KDE Kontact, iCal … - just add the calendar as a remote calendar in your client). You can download your tasks as ICS files using the download button for each calendar.",
197197 "homepage": "https://github.com/nextcloud/tasks/",
198198 "licenses": [
+1-1
pkgs/servers/nextcloud/packages/generate.sh
···10101111APPS=`cat nextcloud-apps.json | jq -r '.[]' | sed -z 's/\n/,/g;s/,$/\n/'`
12121313-nc4nix -a $APPS
1313+nc4nix -apps $APPS
1414rm *.log
···77from abc import abstractmethod
88from collections.abc import Mapping, Sequence
99from pathlib import Path
1010-from typing import Any, cast, ClassVar, Generic, get_args, NamedTuple, Optional, Union
1010+from typing import Any, cast, ClassVar, Generic, get_args, NamedTuple
11111212-import markdown_it
1312from markdown_it.token import Token
14131514from . import md, options
···1716from .html import HTMLRenderer, UnresolvedXrefError
1817from .manual_structure import check_structure, FragmentType, is_include, TocEntry, TocEntryType, XrefTarget
1918from .md import Converter, Renderer
2020-from .utils import Freezeable
21192220class BaseConverter(Converter[md.TR], Generic[md.TR]):
2321 # per-converter configuration for ns:arg=value arguments to include blocks, following
···519517 # we use blender-style //path to denote paths relative to the origin file
520518 # (usually index.html). this makes everything a lot easier and clearer.
521519 if not into.startswith("//") or '/' in into[2:]:
522522- raise RuntimeError(f"html:into-file must be a relative-to-origin //filename", into)
520520+ raise RuntimeError("html:into-file must be a relative-to-origin //filename", into)
523521 into = token.meta['include-args']['into-file'] = into[2:]
524522 if into in self._redirection_targets:
525523 raise RuntimeError(f"redirection target {into} in line {token.map[0] + 1} is already in use")
···617615 for item in xref_queue:
618616 try:
619617 target = item if isinstance(item, XrefTarget) else self._render_xref(*item)
620620- except UnresolvedXrefError as e:
618618+ except UnresolvedXrefError:
621619 if failed:
622620 raise
623621 deferred.append(item)