From ed1200bd9afb41cf3fdbb725c05abefe29f035ec Mon Sep 17 00:00:00 2001 From: Raito Bezarius Date: Wed, 24 Apr 2024 19:31:02 +0200 Subject: nextcloud29Packages: init Signed-off-by: Raito Bezarius --- pkgs/top-level/all-packages.nix | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'pkgs/top-level/all-packages.nix') diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 2a08048d90a56..b7347355108f7 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -11042,6 +11042,10 @@ with pkgs; nextcloud28Packages = callPackage ../servers/nextcloud/packages { apps = lib.importJSON ../servers/nextcloud/packages/28.json; }; + nextcloud29Packages = callPackage ../servers/nextcloud/packages { + apps = lib.importJSON ../servers/nextcloud/packages/29.json; + }; + nextcloud-client = libsForQt5.callPackage ../applications/networking/nextcloud-client { }; -- cgit 1.4.1 From 3ebf8d0bf813571a57b117466aa8c2b31c0dbb75 Mon Sep 17 00:00:00 2001 From: Raito Bezarius Date: Wed, 24 Apr 2024 19:31:13 +0200 Subject: nextcloud29: init at 29.0.0 Signed-off-by: Raito Bezarius --- pkgs/servers/nextcloud/default.nix | 6 ++++++ pkgs/top-level/all-packages.nix | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) (limited to 'pkgs/top-level/all-packages.nix') diff --git a/pkgs/servers/nextcloud/default.nix b/pkgs/servers/nextcloud/default.nix index 1093eb94b003c..d51ff8f52b4d1 100644 --- a/pkgs/servers/nextcloud/default.nix +++ b/pkgs/servers/nextcloud/default.nix @@ -61,6 +61,12 @@ in { packages = nextcloud28Packages; }; + nextcloud29 = generic { + version = "29.0.0"; + hash = "sha256-6bU/ZDK29mRIfThpZF+hIaZM8O1q7oOqVgkD2vhrUr0="; + packages = nextcloud29Packages; + }; + # tip: get the sha with: # curl 'https://download.nextcloud.com/server/releases/nextcloud-${version}.tar.bz2.sha256' } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b7347355108f7..5bf5a91c3ffec 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -11031,7 +11031,7 @@ with pkgs; grocy = callPackage ../servers/grocy { }; inherit (callPackages ../servers/nextcloud {}) - nextcloud26 nextcloud27 nextcloud28; + nextcloud26 nextcloud27 nextcloud28 nextcloud29; nextcloud26Packages = callPackage ../servers/nextcloud/packages { apps = lib.importJSON ../servers/nextcloud/packages/26.json; -- cgit 1.4.1 From 09c5a08fb803a20b387754a773994f607b0ace0d Mon Sep 17 00:00:00 2001 From: Albert Safin Date: Sat, 27 Apr 2024 17:21:50 +0000 Subject: xpointerbarrier: move to by-name --- pkgs/by-name/xp/xpointerbarrier/package.nix | 39 +++++++++++++++++++++++++++++ pkgs/tools/X11/xpointerbarrier/default.nix | 39 ----------------------------- pkgs/top-level/all-packages.nix | 2 -- 3 files changed, 39 insertions(+), 41 deletions(-) create mode 100644 pkgs/by-name/xp/xpointerbarrier/package.nix delete mode 100644 pkgs/tools/X11/xpointerbarrier/default.nix (limited to 'pkgs/top-level/all-packages.nix') diff --git a/pkgs/by-name/xp/xpointerbarrier/package.nix b/pkgs/by-name/xp/xpointerbarrier/package.nix new file mode 100644 index 0000000000000..8621e76443659 --- /dev/null +++ b/pkgs/by-name/xp/xpointerbarrier/package.nix @@ -0,0 +1,39 @@ +{ lib, + stdenv, + fetchurl, + pkg-config, + libX11, + libXfixes, + libXrandr, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "xpointerbarrier"; + version = "20.07"; + + src = fetchurl { + url = "https://www.uninformativ.de/git/xpointerbarrier/archives/xpointerbarrier-v${finalAttrs.version}.tar.gz"; + hash = "sha256-V1sNAQjsPVSjJ2nhCSdZqZQA78pjUE0z3IU4+I85CpI="; + }; + + nativeBuildInputs = [ + pkg-config + ]; + + buildInputs = [ + libX11 + libXfixes + libXrandr + ]; + + makeFlags = [ "prefix=$(out)" ]; + + meta = with lib; { + homepage = "https://www.uninformativ.de/git/xpointerbarrier/file/README.html"; + description = "Create X11 pointer barriers around your working area"; + license = licenses.mit; + maintainers = with maintainers; [ AndersonTorres xzfc ]; + platforms = platforms.linux; + mainProgram = "xpointerbarrier"; + }; +}) diff --git a/pkgs/tools/X11/xpointerbarrier/default.nix b/pkgs/tools/X11/xpointerbarrier/default.nix deleted file mode 100644 index 8621e76443659..0000000000000 --- a/pkgs/tools/X11/xpointerbarrier/default.nix +++ /dev/null @@ -1,39 +0,0 @@ -{ lib, - stdenv, - fetchurl, - pkg-config, - libX11, - libXfixes, - libXrandr, -}: - -stdenv.mkDerivation (finalAttrs: { - pname = "xpointerbarrier"; - version = "20.07"; - - src = fetchurl { - url = "https://www.uninformativ.de/git/xpointerbarrier/archives/xpointerbarrier-v${finalAttrs.version}.tar.gz"; - hash = "sha256-V1sNAQjsPVSjJ2nhCSdZqZQA78pjUE0z3IU4+I85CpI="; - }; - - nativeBuildInputs = [ - pkg-config - ]; - - buildInputs = [ - libX11 - libXfixes - libXrandr - ]; - - makeFlags = [ "prefix=$(out)" ]; - - meta = with lib; { - homepage = "https://www.uninformativ.de/git/xpointerbarrier/file/README.html"; - description = "Create X11 pointer barriers around your working area"; - license = licenses.mit; - maintainers = with maintainers; [ AndersonTorres xzfc ]; - platforms = platforms.linux; - mainProgram = "xpointerbarrier"; - }; -}) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index c3e20bacd40bb..833ab80fcfd3b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -35937,8 +35937,6 @@ with pkgs; xplugd = callPackage ../tools/X11/xplugd { }; - xpointerbarrier = callPackage ../tools/X11/xpointerbarrier { }; - xkb-switch = callPackage ../tools/X11/xkb-switch { }; xkb-switch-i3 = callPackage ../tools/X11/xkb-switch-i3 { }; -- cgit 1.4.1 From 63b0fa4b600f97d926167dd0534af6157fcde551 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Mon, 29 Apr 2024 10:29:57 +0200 Subject: shell_gpt: move to pkgs/by-name --- pkgs/by-name/sh/shell-gpt/package.nix | 48 +++++++++++++++++++++++++++++++++++ pkgs/tools/llm/shell_gpt/default.nix | 48 ----------------------------------- pkgs/top-level/all-packages.nix | 2 -- 3 files changed, 48 insertions(+), 50 deletions(-) create mode 100644 pkgs/by-name/sh/shell-gpt/package.nix delete mode 100644 pkgs/tools/llm/shell_gpt/default.nix (limited to 'pkgs/top-level/all-packages.nix') diff --git a/pkgs/by-name/sh/shell-gpt/package.nix b/pkgs/by-name/sh/shell-gpt/package.nix new file mode 100644 index 0000000000000..4db72ae505864 --- /dev/null +++ b/pkgs/by-name/sh/shell-gpt/package.nix @@ -0,0 +1,48 @@ +{ lib +, python3 +, fetchPypi +, nix-update-script +}: + +python3.pkgs.buildPythonApplication rec { + pname = "shell_gpt"; + version = "1.4.3"; + pyproject = true; + + src = fetchPypi { + inherit pname version; + sha256 = "sha256-zSgWSC60ypOQ1IENcxObBezAfHosQWBD9ft06yh5iV4="; + }; + + nativeBuildInputs = with python3.pkgs; [ + python3.pkgs.pythonRelaxDepsHook + python3 + pip + ]; + + propagatedBuildInputs = with python3.pkgs; [ + markdown-it-py + rich + distro + typer + requests + hatchling + openai + instructor + ]; + + pythonRelaxDeps = [ "requests" "rich" "distro" "typer" ]; + + passthru.updateScript = nix-update-script { }; + + doCheck = false; + + meta = with lib; { + mainProgram = "sgpt"; + homepage = "https://github.com/TheR1D/shell_gpt"; + description = "Access ChatGPT from your terminal"; + platforms = platforms.unix; + license = licenses.mit; + maintainers = with maintainers; [ mglolenstine ]; + }; +} diff --git a/pkgs/tools/llm/shell_gpt/default.nix b/pkgs/tools/llm/shell_gpt/default.nix deleted file mode 100644 index 4db72ae505864..0000000000000 --- a/pkgs/tools/llm/shell_gpt/default.nix +++ /dev/null @@ -1,48 +0,0 @@ -{ lib -, python3 -, fetchPypi -, nix-update-script -}: - -python3.pkgs.buildPythonApplication rec { - pname = "shell_gpt"; - version = "1.4.3"; - pyproject = true; - - src = fetchPypi { - inherit pname version; - sha256 = "sha256-zSgWSC60ypOQ1IENcxObBezAfHosQWBD9ft06yh5iV4="; - }; - - nativeBuildInputs = with python3.pkgs; [ - python3.pkgs.pythonRelaxDepsHook - python3 - pip - ]; - - propagatedBuildInputs = with python3.pkgs; [ - markdown-it-py - rich - distro - typer - requests - hatchling - openai - instructor - ]; - - pythonRelaxDeps = [ "requests" "rich" "distro" "typer" ]; - - passthru.updateScript = nix-update-script { }; - - doCheck = false; - - meta = with lib; { - mainProgram = "sgpt"; - homepage = "https://github.com/TheR1D/shell_gpt"; - description = "Access ChatGPT from your terminal"; - platforms = platforms.unix; - license = licenses.mit; - maintainers = with maintainers; [ mglolenstine ]; - }; -} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index e3eb44f6b4185..da904303ad45e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -34427,8 +34427,6 @@ with pkgs; shavee = callPackage ../applications/misc/shavee { }; - shell_gpt = callPackage ../tools/llm/shell_gpt { }; - shfmt = callPackage ../tools/text/shfmt { }; shipments = callPackage ../applications/misc/shipments { }; -- cgit 1.4.1 From 43bea7a6dd03aed218d186b97b2ce552508a4388 Mon Sep 17 00:00:00 2001 From: Hraban Luyat Date: Tue, 30 Apr 2024 08:57:40 -0400 Subject: sbcl: 2.4.3 -> 2.4.4 --- pkgs/development/compilers/sbcl/default.nix | 6 +++--- pkgs/top-level/all-packages.nix | 10 +++++----- 2 files changed, 8 insertions(+), 8 deletions(-) (limited to 'pkgs/top-level/all-packages.nix') diff --git a/pkgs/development/compilers/sbcl/default.nix b/pkgs/development/compilers/sbcl/default.nix index 2ba79281567ba..4116952199719 100644 --- a/pkgs/development/compilers/sbcl/default.nix +++ b/pkgs/development/compilers/sbcl/default.nix @@ -19,12 +19,12 @@ let versionMap = { - "2.4.2" = { - sha256 = "sha256-/APLUtEqr+h1nmMoRQogG73fibFwcaToPznoC0Pd7w8="; - }; "2.4.3" = { sha256 = "sha256-icmq35K4KtPHSj1PFYoDiJPeoOTzlNyvyWNYPDC3w/I="; }; + "2.4.4" = { + sha256 = "sha256-ipMmJ7Px2OlhjxzcIl7csAJFaARpfiyH0UBoN2ShBtU="; + }; }; # Collection of pre-built SBCL binaries for platforms that need them for # bootstrapping. Ideally these are to be avoided. If ECL (or any other diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 7c05a8a4b35f7..ab35b88ba877b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -25449,17 +25449,17 @@ with pkgs; }; # Steel Bank Common Lisp - sbcl_2_4_2 = wrapLisp { - pkg = callPackage ../development/compilers/sbcl { version = "2.4.2"; }; + sbcl_2_4_3 = wrapLisp { + pkg = callPackage ../development/compilers/sbcl { version = "2.4.3"; }; faslExt = "fasl"; flags = [ "--dynamic-space-size" "3000" ]; }; - sbcl_2_4_3 = wrapLisp { - pkg = callPackage ../development/compilers/sbcl { version = "2.4.3"; }; + sbcl_2_4_4 = wrapLisp { + pkg = callPackage ../development/compilers/sbcl { version = "2.4.4"; }; faslExt = "fasl"; flags = [ "--dynamic-space-size" "3000" ]; }; - sbcl = sbcl_2_4_3; + sbcl = sbcl_2_4_4; sbclPackages = recurseIntoAttrs sbcl.pkgs; -- cgit 1.4.1 From 5f1a99cdaa5113174815f73741ebb20496c92b7f Mon Sep 17 00:00:00 2001 From: TomaSajt <62384384+TomaSajt@users.noreply.github.com> Date: Tue, 30 Apr 2024 15:37:24 +0200 Subject: scotch: move to pkgs/by-name --- pkgs/applications/science/math/scotch/default.nix | 36 ----------------------- pkgs/by-name/sc/scotch/package.nix | 36 +++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 -- 3 files changed, 36 insertions(+), 38 deletions(-) delete mode 100644 pkgs/applications/science/math/scotch/default.nix create mode 100644 pkgs/by-name/sc/scotch/package.nix (limited to 'pkgs/top-level/all-packages.nix') diff --git a/pkgs/applications/science/math/scotch/default.nix b/pkgs/applications/science/math/scotch/default.nix deleted file mode 100644 index 1eb057cfc7c5c..0000000000000 --- a/pkgs/applications/science/math/scotch/default.nix +++ /dev/null @@ -1,36 +0,0 @@ -{ lib, stdenv, fetchurl, bison, mpi, flex, zlib}: - -stdenv.mkDerivation rec { - version = "6.1.1"; - pname = "scotch"; - src_name = "scotch_${version}"; - - buildInputs = [ bison mpi flex zlib ]; - - src = fetchurl { - url = "https://gforge.inria.fr/frs/download.php/file/34618/${src_name}.tar.gz"; - sha256 = "sha256-OQUvWf9HSkppzvwlzzyvhClACIneugEO5kA8oYj4sxE="; - }; - - sourceRoot = "${src_name}/src"; - - preConfigure = '' - ln -s Make.inc/Makefile.inc.x86-64_pc_linux2 Makefile.inc - ''; - - buildFlags = [ "scotch ptscotch" ]; - installFlags = [ "prefix=\${out}" ]; - - meta = { - description = "Graph and mesh/hypergraph partitioning, graph clustering, and sparse matrix ordering"; - longDescription = '' - Scotch is a software package for graph and mesh/hypergraph partitioning, graph clustering, - and sparse matrix ordering. - ''; - homepage = "http://www.labri.fr/perso/pelegrin/scotch"; - license = lib.licenses.cecill-c; - maintainers = [ lib.maintainers.bzizou ]; - platforms = lib.platforms.linux; - }; -} - diff --git a/pkgs/by-name/sc/scotch/package.nix b/pkgs/by-name/sc/scotch/package.nix new file mode 100644 index 0000000000000..1eb057cfc7c5c --- /dev/null +++ b/pkgs/by-name/sc/scotch/package.nix @@ -0,0 +1,36 @@ +{ lib, stdenv, fetchurl, bison, mpi, flex, zlib}: + +stdenv.mkDerivation rec { + version = "6.1.1"; + pname = "scotch"; + src_name = "scotch_${version}"; + + buildInputs = [ bison mpi flex zlib ]; + + src = fetchurl { + url = "https://gforge.inria.fr/frs/download.php/file/34618/${src_name}.tar.gz"; + sha256 = "sha256-OQUvWf9HSkppzvwlzzyvhClACIneugEO5kA8oYj4sxE="; + }; + + sourceRoot = "${src_name}/src"; + + preConfigure = '' + ln -s Make.inc/Makefile.inc.x86-64_pc_linux2 Makefile.inc + ''; + + buildFlags = [ "scotch ptscotch" ]; + installFlags = [ "prefix=\${out}" ]; + + meta = { + description = "Graph and mesh/hypergraph partitioning, graph clustering, and sparse matrix ordering"; + longDescription = '' + Scotch is a software package for graph and mesh/hypergraph partitioning, graph clustering, + and sparse matrix ordering. + ''; + homepage = "http://www.labri.fr/perso/pelegrin/scotch"; + license = lib.licenses.cecill-c; + maintainers = [ lib.maintainers.bzizou ]; + platforms = lib.platforms.linux; + }; +} + diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index eaba80f5715d0..db156a5eee062 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -39056,8 +39056,6 @@ with pkgs; scilla = callPackage ../tools/security/scilla { }; - scotch = callPackage ../applications/science/math/scotch { }; - mininet = callPackage ../tools/virtualization/mininet { }; msieve = callPackage ../applications/science/math/msieve { }; -- cgit 1.4.1 From 684cf9f16fcd148898ba4ed507fcbb18c360c71f Mon Sep 17 00:00:00 2001 From: Antonio Nuno Monteiro Date: Tue, 30 Apr 2024 13:04:55 -0700 Subject: openssl_3_3: init at 3.3.0 --- pkgs/development/libraries/openssl/default.nix | 23 +++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 3 ++- 2 files changed, 25 insertions(+), 1 deletion(-) (limited to 'pkgs/top-level/all-packages.nix') diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix index c0b4fe75b610e..359ed2832d24d 100644 --- a/pkgs/development/libraries/openssl/default.nix +++ b/pkgs/development/libraries/openssl/default.nix @@ -309,4 +309,27 @@ in { license = licenses.asl20; }; }; + + openssl_3_3 = common { + version = "3.3.0"; + hash = "sha256-U+ZrBDMipgar8Ah+dpmg4DOjf6E/65dC3zXDozsY+wI="; + + patches = [ + ./3.0/nix-ssl-cert-file.patch + + # openssl will only compile in KTLS if the current kernel supports it. + # This patch disables build-time detection. + ./3.0/openssl-disable-kernel-detection.patch + + (if stdenv.hostPlatform.isDarwin + then ./3.2/use-etc-ssl-certs-darwin.patch + else ./3.2/use-etc-ssl-certs.patch) + ]; + + withDocs = true; + + extraMeta = with lib; { + license = licenses.asl20; + }; + }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 628cbadf9136f..929a60eb360fe 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -23811,7 +23811,8 @@ with pkgs; inherit (callPackages ../development/libraries/openssl { }) openssl_1_1 openssl_3 - openssl_3_2; + openssl_3_2 + openssl_3_3; opensubdiv = callPackage ../development/libraries/opensubdiv { }; -- cgit 1.4.1 From 4e964de927eacc96dea5c2e404a7994006be76b7 Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Thu, 25 Apr 2024 15:16:00 +0200 Subject: nextcloud26: remove --- nixos/doc/manual/release-notes/rl-2405.section.md | 2 + nixos/tests/nextcloud/default.nix | 2 +- pkgs/servers/nextcloud/default.nix | 7 - pkgs/servers/nextcloud/packages/26.json | 352 ---------------------- pkgs/top-level/aliases.nix | 12 +- pkgs/top-level/all-packages.nix | 5 +- 6 files changed, 10 insertions(+), 370 deletions(-) delete mode 100644 pkgs/servers/nextcloud/packages/26.json (limited to 'pkgs/top-level/all-packages.nix') diff --git a/nixos/doc/manual/release-notes/rl-2405.section.md b/nixos/doc/manual/release-notes/rl-2405.section.md index bd3f492de8577..91c09eef7f4e8 100644 --- a/nixos/doc/manual/release-notes/rl-2405.section.md +++ b/nixos/doc/manual/release-notes/rl-2405.section.md @@ -331,6 +331,8 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m - The `gtest` package has been updated past v1.13.0, which requires C++14 or higher. +- Nextcloud 26 has been removed since it's not maintained anymore by upstream. + - The latest available version of Nextcloud is v29 (available as `pkgs.nextcloud29`). The installation logic is as follows: - If [`services.nextcloud.package`](#opt-services.nextcloud.package) is specified explicitly, this package will be installed (**recommended**) - If [`system.stateVersion`](#opt-system.stateVersion) is >=24.05, `pkgs.nextcloud29` will be installed by default. diff --git a/nixos/tests/nextcloud/default.nix b/nixos/tests/nextcloud/default.nix index f625c107be226..d024adffd9f06 100644 --- a/nixos/tests/nextcloud/default.nix +++ b/nixos/tests/nextcloud/default.nix @@ -22,4 +22,4 @@ foldl }; }) { } - [ 26 27 28 29 ] + [ 27 28 29 ] diff --git a/pkgs/servers/nextcloud/default.nix b/pkgs/servers/nextcloud/default.nix index d51ff8f52b4d1..faad60a417b91 100644 --- a/pkgs/servers/nextcloud/default.nix +++ b/pkgs/servers/nextcloud/default.nix @@ -2,7 +2,6 @@ , nextcloud27Packages , nextcloud28Packages , nextcloud29Packages -, nextcloud26Packages }: let @@ -43,12 +42,6 @@ let }; }; in { - nextcloud26 = generic { - version = "26.0.13"; - hash = "sha256-CjYt96EjM0j5nRhT/X558GZ7VSwUXcRQEvq1SsMcea4="; - packages = nextcloud26Packages; - }; - nextcloud27 = generic { version = "27.1.8"; hash = "sha256-Ciy5vRKCnlOq8XNUPsrQFPCeganXL6YeTEYNhOO47fs="; diff --git a/pkgs/servers/nextcloud/packages/26.json b/pkgs/servers/nextcloud/packages/26.json deleted file mode 100644 index 6df3fcac755de..0000000000000 --- a/pkgs/servers/nextcloud/packages/26.json +++ /dev/null @@ -1,352 +0,0 @@ -{ - "bookmarks": { - "sha256": "06pprhlaaqdha2nmfdcf76mhh48hdr5jlv88snxji8lpflv50wr5", - "url": "https://github.com/nextcloud/bookmarks/releases/download/v13.1.3/bookmarks-13.1.3.tar.gz", - "version": "13.1.3", - "description": "- πŸ“‚ Sort bookmarks into folders\n- 🏷 Add tags and personal notes\n- πŸ” Full-text search\n- πŸ“² Synchronize with all your browsers and devices\n- πŸ‘ͺ Share bookmarks with other users and publicly\n- ☠ Find broken links\n- βš› Generate RSS feeds of your collections\n- πŸ“” Read archived versions of your links in case they are depublished\n- πŸ’¬ Create new bookmarks directly from within Nextcloud Talk\n- πŸ’Ό Built-in Dashboard widgets for frequent and recent links\n\nRequirements:\n - PHP extensions:\n - intl: *\n - mbstring: *\n - when using MySQL, use at least v8.0", - "homepage": "https://github.com/nextcloud/bookmarks", - "licenses": [ - "agpl" - ] - }, - "calendar": { - "sha256": "10sxr8xczq29a3c5a7n074hpx80a21m6v7a2xhz0yhv9q80yv5gz", - "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.7.0/calendar-v4.7.0.tar.gz", - "version": "4.7.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": [ - "agpl" - ] - }, - "contacts": { - "sha256": "0xyrkr5p7xa8cn33kgx1hyblpbsdzaakpfm5bk6w9sm71a42688w", - "url": "https://github.com/nextcloud-releases/contacts/releases/download/v5.5.3/contacts-v5.5.3.tar.gz", - "version": "5.5.3", - "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.", - "homepage": "https://github.com/nextcloud/contacts#readme", - "licenses": [ - "agpl" - ] - }, - "cookbook": { - "sha256": "06d1rhvcwxzi8hl99nz3hg32fznv0q5m06cwjy3gc81j53qz0ksc", - "url": "https://github.com/christianlupus-nextcloud/cookbook-releases/releases/download/v0.10.5/cookbook-0.10.5.tar.gz", - "version": "0.10.5", - "description": "A library for all your recipes. It uses JSON files following the schema.org recipe format. To add a recipe to the collection, you can paste in the URL of the recipe, and the provided web page will be parsed and downloaded to whichever folder you specify in the app settings.", - "homepage": "https://github.com/nextcloud/cookbook/", - "licenses": [ - "agpl" - ] - }, - "cospend": { - "sha256": "0ygisjx3abxc2nsrwqrw9dbpvm38qxa0bk280962yh1bb54i04vs", - "url": "https://github.com/julien-nc/cospend-nc/releases/download/v1.5.14/cospend-1.5.14.tar.gz", - "version": "1.5.14", - "description": "# Nextcloud Cospend πŸ’°\n\nNextcloud Cospend is a group/shared budget manager. It was inspired by the great [IHateMoney](https://github.com/spiral-project/ihatemoney/).\n\nYou can use it when you share a house, when you go on vacation with friends, whenever you share expenses with a group of people.\n\nIt lets you create projects with members and bills. Each member has a balance computed from the project bills. Balances are not an absolute amount of money at members disposal but rather a relative information showing if a member has spent more for the group than the group has spent for her/him, independently of exactly who spent money for whom. This way you can see who owes the group and who the group owes. Ultimately you can ask for a settlement plan telling you which payments to make to reset members balances.\n\nProject members are independent from Nextcloud users. Projects can be shared with other Nextcloud users or via public links.\n\n[MoneyBuster](https://gitlab.com/eneiluj/moneybuster) Android client is [available in F-Droid](https://f-droid.org/packages/net.eneiluj.moneybuster/) and on the [Play store](https://play.google.com/store/apps/details?id=net.eneiluj.moneybuster).\n\n[PayForMe](https://github.com/mayflower/PayForMe) iOS client is currently under developpement!\n\nThe private and public APIs are documented using [the Nextcloud OpenAPI extractor](https://github.com/nextcloud/openapi-extractor/). This documentation can be accessed directly in Nextcloud. All you need is to install Cospend (>= v1.6.0) and use the [the OCS API Viewer app](https://apps.nextcloud.com/apps/ocs_api_viewer) to browse the OpenAPI documentation.\n\n## Features\n\n* ✎ Create/edit/delete projects, members, bills, bill categories, currencies\n* βš– Check member balances\n* πŸ—  Display project statistics\n* β™» Display settlement plan\n* Move bills from one project to another\n* Move bills to trash before actually deleting them\n* Archive old projects before deleting them\n* πŸŽ‡ Automatically create reimbursement bills from settlement plan\n* πŸ—“ Create recurring bills (day/week/month/year)\n* πŸ“Š Optionally provide custom amount for each member in new bills\n* πŸ”— Link personal files to bills (picture of physical receipt for example)\n* πŸ‘© Public links for people outside Nextcloud (can be password protected)\n* πŸ‘« Share projects with Nextcloud users/groups/circles\n* πŸ–« Import/export projects as csv (compatible with csv files from IHateMoney and SplitWise)\n* πŸ”— Generate link/QRCode to easily add projects in MoneyBuster\n* πŸ—² Implement Nextcloud notifications and activity stream\n\nThis app usually support the 2 or 3 last major versions of Nextcloud.\n\nThis app is under development.\n\n🌍 Help us to translate this app on [Nextcloud-Cospend/MoneyBuster Crowdin project](https://crowdin.com/project/moneybuster).\n\nβš’ Check out other ways to help in the [contribution guidelines](https://github.com/julien-nc/cospend-nc/blob/master/CONTRIBUTING.md).\n\n## Documentation\n\n* [User documentation](https://github.com/julien-nc/cospend-nc/blob/master/docs/user.md)\n* [Admin documentation](https://github.com/julien-nc/cospend-nc/blob/master/docs/admin.md)\n* [Developer documentation](https://github.com/julien-nc/cospend-nc/blob/master/docs/dev.md)\n* [CHANGELOG](https://github.com/julien-nc/cospend-nc/blob/master/CHANGELOG.md#change-log)\n* [AUTHORS](https://github.com/julien-nc/cospend-nc/blob/master/AUTHORS.md#authors)\n\n## Known issues\n\n* It does not make you rich\n\nAny feedback will be appreciated.\n\n\n\n## Donation\n\nI develop this app during my free time.\n\n* [Donate with Paypal](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=66PALMY8SF5JE) (you don't need a paypal account)\n* [Donate with Liberapay : ![Donate using Liberapay](https://liberapay.com/assets/widgets/donate.svg)](https://liberapay.com/eneiluj/donate)", - "homepage": "https://github.com/julien-nc/cospend-nc", - "licenses": [ - "agpl" - ] - }, - "deck": { - "sha256": "0b6glilrv1cyn9gfka093hdkq4cmln3p6fkz502y6lk8xa98giga", - "url": "https://github.com/nextcloud-releases/deck/releases/download/v1.9.7/deck-v1.9.7.tar.gz", - "version": "1.9.7", - "description": "Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- πŸ“₯ Add your tasks to cards and put them in order\n- πŸ“„ Write down additional notes in Markdown\n- πŸ”– Assign labels for even better organization\n- πŸ‘₯ Share with your team, friends or family\n- πŸ“Ž Attach files and embed them in your Markdown description\n- πŸ’¬ Discuss with your team using comments\n- ⚑ Keep track of changes in the activity stream\n- πŸš€ Get your project organized", - "homepage": "https://github.com/nextcloud/deck", - "licenses": [ - "agpl" - ] - }, - "end_to_end_encryption": { - "sha256": "19vp0ggllplm84hwaqwn95122hsgfglmlk2lbwlgsjv8d36fv1wr", - "url": "https://github.com/nextcloud-releases/end_to_end_encryption/releases/download/v1.12.5/end_to_end_encryption-v1.12.5.tar.gz", - "version": "1.12.5", - "description": "Provides the necessary endpoint to enable end-to-end encryption.\n\n**Notice:** E2EE is currently not compatible to be used together with server-side encryption", - "homepage": "https://github.com/nextcloud/end_to_end_encryption", - "licenses": [ - "agpl" - ] - }, - "files_markdown": { - "sha256": "0p97ha6x3czzbflavmjn4jmz3z706h5f84spg4j7dwq3nc9bqrf7", - "url": "https://github.com/icewind1991/files_markdown/releases/download/v2.4.1/files_markdown-v2.4.1.tar.gz", - "version": "2.4.1", - "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)", - "homepage": "https://github.com/icewind1991/files_markdown", - "licenses": [ - "agpl" - ] - }, - "files_texteditor": { - "sha256": "1irvxz29fj9ccplgizwkchc885fqvqsmk9rj4gfwgpa8bgkya1y6", - "url": "https://github.com/nextcloud-releases/files_texteditor/releases/download/v2.15.1/files_texteditor-v2.15.1.tar.gz", - "version": "2.15.1", - "description": "This application enables Nextcloud users to open, save and edit text files in the web browser. If enabled, an entry called \"Text file\" in the \"New\" button menu at the top of the web browser appears. When clicked, a new text file opens in the browser and the file can be saved into the current Nextcloud directory. Further, when a text file is clicked in the web browser, it will be opened and editable. If the privileges allow, a user can also edit shared files and save these changes back into the web browser.\nMore information is available in the text editor documentation.", - "homepage": "https://github.com/nextcloud/files_texteditor", - "licenses": [ - "agpl" - ] - }, - "forms": { - "sha256": "0shdkqhip988dng2105k5cjbqfqny5791h8gdachcv3vnq99fywi", - "url": "https://github.com/nextcloud-releases/forms/releases/download/v3.4.7/forms-v3.4.7.tar.gz", - "version": "3.4.7", - "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)!", - "homepage": "https://github.com/nextcloud/forms", - "licenses": [ - "agpl" - ] - }, - "gpoddersync": { - "sha256": "1lm8lqvs1mvb3i2a8b5j9g7b26f747jfp696b9ima0hgpw8ycbfs", - "url": "https://github.com/thrillfall/nextcloud-gpodder/releases/download/3.8.3/gpoddersync.tar.gz", - "version": "3.8.3", - "description": "Expose GPodder API to sync podcast consumer apps like AntennaPod", - "homepage": "https://github.com/thrillfall/nextcloud-gpodder", - "licenses": [ - "agpl" - ] - }, - "groupfolders": { - "sha256": "0gw8gc17brz0acaqnaiajyl461ywxnvjdm7xqkwf0ix83qc5pbxa", - "url": "https://github.com/nextcloud-releases/groupfolders/releases/download/v14.0.9/groupfolders-v14.0.9.tar.gz", - "version": "14.0.9", - "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.\n\nNote: Encrypting the contents of group folders is currently not supported.", - "homepage": "https://github.com/nextcloud/groupfolders", - "licenses": [ - "agpl" - ] - }, - "impersonate": { - "sha256": "0imddmyg9s1v3d20spr26g7mbyz2mwl3v2l1a4nz5kaxl3a6fsr2", - "url": "https://github.com/nextcloud-releases/impersonate/releases/download/v1.13.1/impersonate-v1.13.1.tar.gz", - "version": "1.13.1", - "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.\n- You can limit which users/groups can use impersonation in Administration settings > Additional settings.", - "homepage": "https://github.com/nextcloud/impersonate", - "licenses": [ - "agpl" - ] - }, - "integration_openai": { - "sha256": "1hh35gadyxqal19pplblarffb35qc547ig3jp5464m317mykd03d", - "url": "https://github.com/nextcloud-releases/integration_openai/releases/download/v1.0.11/integration_openai-v1.0.11.tar.gz", - "version": "1.0.11", - "description": "⚠️ The smart pickers have been removed from this app\nas they are now included in the [Assistant app](https://apps.nextcloud.com/apps/assistant).\n\nThis app implements:\n\n* Text generation providers: Free prompt, Summarize, Headline and Reformulate (using any available large language model)\n* A Translation provider (using any available language model)\n* A SpeechToText provider (using Whisper)\n* An image generation provider\n\nInstead of connecting to the OpenAI API for these, you can also connect to a self-hosted [LocalAI](https://localai.io) instance\nor to any service that implements an API similar to the OpenAI one, for example: [Plusserver](https://www.plusserver.com/en/ai-platform/).\n\n## Ethical AI Rating\n### Rating for Text generation using ChatGPT via OpenAI API: πŸ”΄\n\nNegative:\n* the software for training and inference of this model is proprietary, limiting running it locally or training by yourself\n* the trained model is not freely available, so the model can not be run on-premises\n* the training data is not freely available, limiting the ability of external parties to check and correct for bias or optimise the model's performance and CO2 usage.\n\n\n### Rating for Translation using ChatGPT via OpenAI API: πŸ”΄\n\nNegative:\n* the software for training and inference of this model is proprietary, limiting running it locally or training by yourself\n* the trained model is not freely available, so the model can not be run on-premises\n* the training data is not freely available, limiting the ability of external parties to check and correct for bias or optimise the model's performance and CO2 usage.\n\n### Rating for Image generation using DALLΒ·E via OpenAI API: πŸ”΄\n\nNegative:\n* the software for training and inferencing of this model is proprietary, limiting running it locally or training by yourself\n* the trained model is not freely available, so the model can not be ran on-premises\n* the training data is not freely available, limiting the ability of external parties to check and correct for bias or optimise the model’s performance and CO2 usage.\n\n\n### Rating for Speech-To-Text using Whisper via OpenAI API: 🟑\n\nPositive:\n* the software for training and inferencing of this model is open source\n* The trained model is freely available, and thus can run on-premise\n\nNegative:\n* the training data is not freely available, limiting the ability of external parties to check and correct for bias or optimise the model’s performance and CO2 usage.\n\n### Rating for Text generation via LocalAI: 🟒\n\nPositive:\n* the software for training and inferencing of this model is open source\n* the trained model is freely available, and thus can be ran on-premises\n* the training data is freely available, making it possible to check or correct for bias or optimise the performance and CO2 usage.\n\n\n### Rating for Image generation using Stable Diffusion via LocalAI : 🟑\n\nPositive:\n* the software for training and inferencing of this model is open source\n* the trained model is freely available, and thus can be ran on-premises\n\nNegative:\n* the training data is not freely available, limiting the ability of external parties to check and correct for bias or optimise the model’s performance and CO2 usage.\n\n\n### Rating for Speech-To-Text using Whisper via LocalAI: 🟑\n\nPositive:\n* the software for training and inferencing of this model is open source\n* the trained model is freely available, and thus can be ran on-premises\n\nNegative:\n* the training data is not freely available, limiting the ability of external parties to check and correct for bias or optimise the model’s performance and CO2 usage.\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/integration_openai", - "licenses": [ - "agpl" - ] - }, - "mail": { - "sha256": "1m48zdh7jjmgw7r9y9irp7z22wjippjswy7r60yvsdxbac765n14", - "url": "https://github.com/nextcloud-releases/mail/releases/download/v3.6.0/mail-v3.6.0.tar.gz", - "version": "3.6.0", - "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": [ - "agpl" - ] - }, - "maps": { - "sha256": "1gyxg5xp4mpdrw8630nqcf5yk8cs7a0kvfik2q01p05d533phc4d", - "url": "https://github.com/nextcloud/maps/releases/download/v1.2.0/maps-1.2.0.tar.gz", - "version": "1.2.0", - "description": "**The whole world fits inside your cloud!**\n\n- **πŸ—Ί Beautiful map:** Using [OpenStreetMap](https://www.openstreetmap.org) and [Leaflet](https://leafletjs.com), you can choose between standard map, satellite, topographical, dark mode or even watercolor! 🎨\n- **⭐ Favorites:** Save your favorite places, privately! Sync with [GNOME Maps](https://github.com/nextcloud/maps/issues/30) and mobile apps is planned.\n- **🧭 Routing:** Possible using either [OSRM](http://project-osrm.org), [GraphHopper](https://www.graphhopper.com) or [Mapbox](https://www.mapbox.com).\n- **πŸ–Ό Photos on the map:** No more boring slideshows, just show directly where you were!\n- **πŸ™‹ Contacts on the map:** See where your friends live and plan your next visit.\n- **πŸ“± Devices:** Lost your phone? Check the map!\n- **γ€° Tracks:** Load GPS tracks or past trips. Recording with [PhoneTrack](https://f-droid.org/en/packages/net.eneiluj.nextcloud.phonetrack/) or [OwnTracks](https://owntracks.org) is planned.", - "homepage": "https://github.com/nextcloud/maps", - "licenses": [ - "agpl" - ] - }, - "memories": { - "sha256": "02l9rq117x7x4nra1f50fkn7yr3cpbjnsq9nlr7rnsn9qsf5rrw9", - "url": "https://github.com/pulsejet/memories/releases/download/v7.2.0/memories.tar.gz", - "version": "7.2.0", - "description": "# Memories: Photo Management for Nextcloud\n\nMemories is a *batteries-included* photo management solution for Nextcloud with advanced features including:\n\n- **πŸ“Έ Timeline**: Sort photos and videos by date taken, parsed from Exif data.\n- **βͺ Rewind**: Jump to any time in the past instantly and relive your memories.\n- **πŸ€– AI Tagging**: Group photos by people and objects, powered by [recognize](https://github.com/nextcloud/recognize) and [facerecognition](https://github.com/matiasdelellis/facerecognition).\n- **πŸ–ΌοΈ Albums**: Create albums to group photos and videos together. Then share these albums with others.\n- **πŸ«±πŸ»β€πŸ«²πŸ» External Sharing**: Share photos and videos with people outside of your Nextcloud instance.\n- **πŸ“± Mobile Support**: Work from any device, of any shape and size through the web app.\n- **✏️ Edit Metadata**: Edit dates and other metadata on photos quickly and in bulk.\n- **πŸ“¦ Archive**: Store photos you don't want to see in your timeline in a separate folder.\n- **πŸ“Ή Video Transcoding**: Transcode videos and use HLS for maximal performance.\n- **πŸ—ΊοΈ Map**: View your photos on a map, tagged with accurate reverse geocoding.\n- **πŸ“¦ Migration**: Migrate easily from Nextcloud Photos and Google Takeout.\n- **⚑️ Performance**: Do all this very fast.\n\n## πŸš€ Installation\n\n1. Install the app from the Nextcloud app store (try a demo [here](https://demo.memories.gallery/apps/memories/)).\n1. Perform the recommended [configuration steps](https://memories.gallery/config/).\n1. Run `php occ memories:index` to generate metadata indices for existing photos.\n1. Open the πŸ“· Memories app in Nextcloud and set the directory containing your photos.", - "homepage": "https://memories.gallery", - "licenses": [ - "agpl" - ] - }, - "music": { - "sha256": "04dh6vzriiiqnn02pjbwn9rv0q427njbx558jl504jp91b8qd2wn", - "url": "https://github.com/owncloud/music/releases/download/v1.11.0/music_1.11.0_for_nextcloud.tar.gz", - "version": "1.11.0", - "description": "A stand-alone music player app and a \"lite\" player for the Files app\n\n- On modern browsers, supports audio types .mp3, .ogg, .m4a, .m4b, .flac, .wav, and more\n- Playlist support with import from m3u, m3u8, and pls files\n- Browse by artists, albums, genres, or folders\n- Gapless play\n- Filter the shown content with the search function\n- Play internet radio and podcast channels\n- Setup Last.fm connection to see background information on artists, albums, and songs\n- Control with media control keys on the keyboard or OS\n- The app can handle libraries consisting of thousands of albums and tens of thousands of songs\n- Includes a server backend compatible with the Subsonic and Ampache protocols, allowing playback and browsing of your library on various external apps e.g. on Android or iPhone", - "homepage": "https://github.com/owncloud/music", - "licenses": [ - "agpl" - ] - }, - "news": { - "sha256": "1bkh73h0ibxyjpy3cmvhnlr7isvgqkcxdw2dw15mxksj2cln9wki", - "url": "https://github.com/nextcloud/news/releases/download/24.0.0/news.tar.gz", - "version": "24.0.0", - "description": "πŸ“° A RSS/Atom Feed reader App for Nextcloud\n\n- πŸ“² Synchronize your feeds with multiple mobile or desktop [clients](https://nextcloud.github.io/news/clients/)\n- πŸ”„ Automatic updates of your news feeds\n- πŸ†“ Free and open source under AGPLv3, no ads or premium functions\n\n**System Cron is currently required for this app to work**\n\nRequirements can be found [here](https://nextcloud.github.io/news/install/#dependencies)\n\nThe Changelog is available [here](https://github.com/nextcloud/news/blob/master/CHANGELOG.md)\n\nCreate a [bug report](https://github.com/nextcloud/news/issues/new/choose)\n\nCreate a [feature request](https://github.com/nextcloud/news/discussions/new)\n\nReport a [feed issue](https://github.com/nextcloud/news/discussions/new)", - "homepage": "https://github.com/nextcloud/news", - "licenses": [ - "agpl" - ] - }, - "notes": { - "sha256": "0j9bwbfvwwdaabyc79i514sp36cm4i9z02l8bkxlqr9fvim73nn9", - "url": "https://github.com/nextcloud-releases/notes/releases/download/v4.10.0/notes.tar.gz", - "version": "4.10.0", - "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.", - "homepage": "https://github.com/nextcloud/notes", - "licenses": [ - "agpl" - ] - }, - "notify_push": { - "sha256": "0zsjr3zr8c686pkgsmhjg1ssnzvc9flkyy1x571wk7lx7lfrvrd1", - "url": "https://github.com/nextcloud-releases/notify_push/releases/download/v0.6.10/notify_push-v0.6.10.tar.gz", - "version": "0.6.10", - "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", - "homepage": "", - "licenses": [ - "agpl" - ] - }, - "onlyoffice": { - "sha256": "0md102hk29pakjxmybyhdqwh0hxvxpdxdki8y7wpk498gza3qmyh", - "url": "https://github.com/ONLYOFFICE/onlyoffice-nextcloud/releases/download/v7.10/onlyoffice.tar.gz", - "version": "7.10.0", - "description": "ONLYOFFICE connector allows you to view, edit and collaborate on text documents, spreadsheets and presentations within Nextcloud using ONLYOFFICE Docs. This will create a new Edit in ONLYOFFICE action within the document library for Office documents. This allows multiple users to co-author documents in real time from the familiar web interface and save the changes back to your file storage.", - "homepage": "https://www.onlyoffice.com", - "licenses": [ - "apache" - ] - }, - "phonetrack": { - "sha256": "1p15vw7c5c1h08czyxi1r6svjd5hjmnc0i6is4vl3xq2kfjmcyyx", - "url": "https://github.com/julien-nc/phonetrack/releases/download/v0.7.6/phonetrack-0.7.6.tar.gz", - "version": "0.7.6", - "description": "# PhoneTrack Nextcloud application\n\nπŸ“± PhoneTrack is a Nextcloud application to track and store mobile device's locations.\n\nπŸ—Ί It receives information from mobile phone's logging apps and displays it dynamically on a map.\n\n🌍 Help us to translate this app on [PhoneTrack Crowdin project](https://crowdin.com/project/phonetrack).\n\nβš’ Check out other ways to help in the [contribution guidelines](https://gitlab.com/eneiluj/phonetrack-oc/blob/master/CONTRIBUTING.md).\n\nHow to use PhoneTrack :\n\n* Create a tracking session.\n* Give the logging link\\* to the mobile devices. Choose the [logging method](https://gitlab.com/eneiluj/phonetrack-oc/wikis/userdoc#logging-methods) you prefer.\n* Watch the session's devices location in real time (or not) in PhoneTrack or share it with public pages.\n\n(\\*) Don't forget to set the device name in the link (rather than in the logging app settings). Replace \"yourname\" with the desired device name. Setting the device name in logging app settings only works with Owntracks, Traccar and OpenGTS.\n\nOn PhoneTrack main page, while watching a session, you can :\n\n* πŸ“ Display location history\n* β›› Filter points\n* ✎ Manually edit/add/delete points\n* ✎ Edit devices (rename, change colour/shape, move to another session)\n* β›Ά Define geofencing zones for devices\n* βš‡ Define proximity alerts for device pairs\n* πŸ–§ Share a session to other Nextcloud users or with a public link (read-only)\n* πŸ”— Generate public share links with optional restrictions (filters, device name, last positions only, geofencing simplification)\n* πŸ–« Import/export a session in GPX format (one file with one track per device or one file per device)\n* πŸ—  Display sessions statistics\n* πŸ”’ [Reserve a device name](https://gitlab.com/eneiluj/phonetrack-oc/wikis/userdoc#device-name-reservation) to make sure only authorised user can log with this name\n* πŸ—“ Toggle session auto export and auto purge (daily/weekly/monthly)\n* β—” Choose what to do when point number quota is reached (block logging or delete oldest point)\n\nPublic page and public filtered page work like main page except there is only one session displayed, everything is read-only and there is no need to be logged in.\n\nThis app is tested on Nextcloud 17 with Firefox 57+ and Chromium.\n\nThis app is compatible with theming colours and accessibility themes !\n\nThis app is under development.\n\n## Install\n\nSee the [AdminDoc](https://gitlab.com/eneiluj/phonetrack-oc/wikis/admindoc) for installation details.\n\nCheck [CHANGELOG](https://gitlab.com/eneiluj/phonetrack-oc/blob/master/CHANGELOG.md#change-log) file to see what's new and what's coming in next release.\n\nCheck [AUTHORS](https://gitlab.com/eneiluj/phonetrack-oc/blob/master/AUTHORS.md#authors) file to see complete list of authors.\n\n## Known issues\n\n* PhoneTrack **now works** with Nextcloud group restriction activated. See [admindoc](https://gitlab.com/eneiluj/phonetrack-oc/wikis/admindoc#issue-with-phonetrack-restricted-to-some-groups-in-nextcloud).\n\nAny feedback will be appreciated.\n\n## Donation\n\nI develop this app during my free time.\n\n* [Donate with Paypal](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=66PALMY8SF5JE) (you don't need a paypal account)\n* [Donate with Liberapay : ![Donate using Liberapay](https://liberapay.com/assets/widgets/donate.svg)](https://liberapay.com/eneiluj/donate)", - "homepage": "https://github.com/julien-nc/phonetrack-oc", - "licenses": [ - "agpl" - ] - }, - "polls": { - "sha256": "1y6908yp327j6v9caawylah5zayh4m1d7658j3yh0r5siml9lq94", - "url": "https://github.com/nextcloud/polls/releases/download/v5.4.3/polls.tar.gz", - "version": "5.4.3", - "description": "A polls app, similar to Doodle/Dudle with the possibility to restrict access (members, certain groups/users, hidden and public).", - "homepage": "https://github.com/nextcloud/polls", - "licenses": [ - "agpl" - ] - }, - "previewgenerator": { - "sha256": "0505kg4pxa6dqylniwa5ip6h5bama8cp0ng2y7prhb93mnhgr051", - "url": "https://github.com/nextcloud-releases/previewgenerator/releases/download/v5.5.0/previewgenerator-v5.5.0.tar.gz", - "version": "5.5.0", - "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.", - "homepage": "https://github.com/nextcloud/previewgenerator", - "licenses": [ - "agpl" - ] - }, - "qownnotesapi": { - "sha256": "0y4cv4hagmax4nkdfzysd5fg2h2xak4m87waf3b0ci5f1bwdxdxx", - "url": "https://github.com/pbek/qownnotesapi/releases/download/v24.4.0/qownnotesapi-nc.tar.gz", - "version": "24.4.0", - "description": "QOwnNotesAPI is the Nextcloud/ownCloud API for [QOwnNotes](http://www.qownnotes.org), the open source notepad for Linux, macOS and Windows, that works together with the notes application of Nextcloud/ownCloud.\n\nThe only purpose of this App is to provide API access to your Nextcloud/ownCloud server for your QOwnNotes desktop installation, you cannot use this App for anything else, if you don't have QOwnNotes installed on your desktop computer!", - "homepage": "https://github.com/pbek/qownnotesapi", - "licenses": [ - "agpl" - ] - }, - "registration": { - "sha256": "0x1x5mk83qh5lffcs7h0gjjihzsphc6iqmbch1ni76h9pw4zxrw1", - "url": "https://github.com/nextcloud-releases/registration/releases/download/v2.2.0/registration-v2.2.0.tar.gz", - "version": "2.2.0", - "description": "User registration\n\nThis app allows users to register a new account.\n\n# Features\n\n- Add users to a given group\n- Allow-list with email domains (including wildcard) to register with\n- Administrator will be notified via email for new user creation or require approval\n- Supports Nextcloud's Client Login Flow v1 and v2 - allowing registration in the mobile Apps and Desktop clients\n\n# Web form registration flow\n\n1. User enters their email address\n2. Verification link is sent to the email address\n3. User clicks on the verification link\n4. User is lead to a form where they can choose their username and password\n5. New account is created and is logged in automatically", - "homepage": "https://github.com/nextcloud/registration", - "licenses": [ - "agpl" - ] - }, - "spreed": { - "sha256": "1d04y6jjhk41ghykqwxca4vmjlpn8cwlabqd9hjsccr2845gksad", - "url": "https://github.com/nextcloud-releases/spreed/releases/download/v16.0.11/spreed-v16.0.11.tar.gz", - "version": "16.0.11", - "description": "Chat, video & audio-conferencing using WebRTC\n\n* πŸ’¬ **Chat** Nextcloud Talk comes with a simple text chat, allowing you to share or upload files from your Nextcloud Files app or local device and mention other participants.\n* πŸ‘₯ **Private, group, public and password protected calls!** Invite someone, a whole group or send a public link to invite to a call.\n* 🌐 **Federated chats** Chat with other Nextcloud users on their servers\n* πŸ’» **Screen sharing!** Share your screen with the participants of your call.\n* πŸš€ **Integration with other Nextcloud apps** like Files, Calendar, User status, Dashboard, Flow, Maps, Smart picker, Contacts, Deck, and many more.\n* πŸŒ‰ **Sync with other chat solutions** With [Matterbridge](https://github.com/42wim/matterbridge/) being integrated in Talk, you can easily sync a lot of other chat solutions to Nextcloud Talk and vice-versa.", - "homepage": "https://github.com/nextcloud/spreed", - "licenses": [ - "agpl" - ] - }, - "tasks": { - "sha256": "0a1wpb9f08iqxl9vjp0slxwzn0w67ilpk21dsi0nhpm28ns2mhyc", - "url": "https://github.com/nextcloud/tasks/releases/download/v0.15.0/tasks.tar.gz", - "version": "0.15.0", - "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.", - "homepage": "https://github.com/nextcloud/tasks/", - "licenses": [ - "agpl" - ] - }, - "twofactor_nextcloud_notification": { - "sha256": "0qpg6i6iw6ldnryf0p56kd7fgs5vyckw9m6yjcf8r4j3mwfka273", - "url": "https://github.com/nextcloud-releases/twofactor_nextcloud_notification/releases/download/v3.9.0/twofactor_nextcloud_notification-v3.9.0.tar.gz", - "version": "3.9.0", - "description": "Allows using any of your logged in devices as second factor", - "homepage": "https://github.com/nextcloud/twofactor_nextcloud_notification", - "licenses": [ - "agpl" - ] - }, - "twofactor_webauthn": { - "sha256": "0llxakzcdcy9hscyzw3na5zp1p57h03w5fmm0gs9g62k1b88k6kw", - "url": "https://github.com/nextcloud-releases/twofactor_webauthn/releases/download/v1.4.0/twofactor_webauthn-v1.4.0.tar.gz", - "version": "1.4.0", - "description": "A two-factor provider for WebAuthn devices", - "homepage": "https://github.com/nextcloud/twofactor_webauthn#readme", - "licenses": [ - "agpl" - ] - }, - "unroundedcorners": { - "sha256": "1ykgnwv41n4i1gwlbgxqflgrl68qc7byvlx4a8clbzhryn2745jf", - "url": "https://github.com/OliverParoczai/nextcloud-unroundedcorners/releases/download/v1.0.9/unroundedcorners-v1.0.9.tar.gz", - "version": "1.0.9", - "description": "# Unrounded Corners\nA Nextcloud app that restores the corners of buttons and widgets to their original looks by unrounding them.", - "homepage": "https://github.com/OliverParoczai/nextcloud-unroundedcorners", - "licenses": [ - "agpl" - ] - }, - "unsplash": { - "sha256": "1ya1h4nb9cyj1hdgb5l5isx7a43a7ri92cm0h8nwih20hi6a9wzx", - "url": "https://github.com/nextcloud/unsplash/releases/download/v2.2.1/unsplash.tar.gz", - "version": "2.2.1", - "description": "Show a new random featured nature photo in your nextcloud. Now with choosable motives!", - "homepage": "https://github.com/nextcloud/unsplash/", - "licenses": [ - "agpl" - ] - }, - "user_oidc": { - "sha256": "0nl716c8jx6hhpkxjdpbldlnqhh6jsm6xx1zmcmvkzkdr9pjkggj", - "url": "https://github.com/nextcloud-releases/user_oidc/releases/download/v5.0.2/user_oidc-v5.0.2.tar.gz", - "version": "5.0.2", - "description": "Allows flexible configuration of an OIDC server as Nextcloud login user backend.", - "homepage": "https://github.com/nextcloud/user_oidc", - "licenses": [ - "agpl" - ] - }, - "user_saml": { - "sha256": "0cvlspkrcm3anxpz4lca464d66672slqq2laa7gn7sd1b9yl9nx8", - "url": "https://github.com/nextcloud-releases/user_saml/releases/download/v5.2.7/user_saml-v5.2.7.tar.gz", - "version": "5.2.7", - "description": "Using the SSO & SAML app of your Nextcloud you can make it easily possible to integrate your existing Single-Sign-On solution with Nextcloud. In addition, you can use the Nextcloud LDAP user provider to keep the convenience for users. (e.g. when sharing)\nThe following providers are supported and tested at the moment:\n\n* **SAML 2.0**\n\t* OneLogin\n\t* Shibboleth\n\t* Active Directory Federation Services (ADFS)\n\n* **Authentication via Environment Variable**\n\t* Kerberos (mod_auth_kerb)\n\t* Any other provider that authenticates using the environment variable\n\nWhile theoretically any other authentication provider implementing either one of those standards is compatible, we like to note that they are not part of any internal test matrix.", - "homepage": "https://github.com/nextcloud/user_saml", - "licenses": [ - "agpl" - ] - } -} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index b6d176e5713f7..19637022545e7 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -837,16 +837,16 @@ mapAliases ({ netbox_3_3 = throw "netbox 3.3 series has been removed as it was EOL"; # Added 2023-09-02 netbox_3_5 = throw "netbox 3.5 series has been removed as it was EOL"; # Added 2024-01-22 netease-music-tui = throw "netease-music-tui has been removed due to unmaintained by upstream and broken functionality"; # Added 2024-03-03 - nextcloud25 = throw '' - Nextcloud v25 has been removed from `nixpkgs` as the support for is dropped - by upstream in 2023-10. Please upgrade to at least Nextcloud v26 by declaring + nextcloud26 = throw '' + Nextcloud v26 has been removed from `nixpkgs` as the support for is dropped + by upstream in 2024-04. Please upgrade to at least Nextcloud v27 by declaring - services.nextcloud.package = pkgs.nextcloud26; + services.nextcloud.package = pkgs.nextcloud27; in your NixOS config. - WARNING: if you were on Nextcloud 24 you have to upgrade to Nextcloud 25 - first on 23.05 because Nextcloud doesn't support upgrades across multiple major versions! + WARNING: if you were on Nextcloud 25 you have to upgrade to Nextcloud 26 + first on 23.11 because Nextcloud doesn't support upgrades across multiple major versions! ''; # Added 2023-10-13 nextcloud25Packages = throw "Nextcloud25 is EOL!"; # Added 2023-10-13 nagiosPluginsOfficial = monitoring-plugins; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 5bf5a91c3ffec..9aafd5c52b37e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -11031,11 +11031,8 @@ with pkgs; grocy = callPackage ../servers/grocy { }; inherit (callPackages ../servers/nextcloud {}) - nextcloud26 nextcloud27 nextcloud28 nextcloud29; + nextcloud27 nextcloud28 nextcloud29; - nextcloud26Packages = callPackage ../servers/nextcloud/packages { - apps = lib.importJSON ../servers/nextcloud/packages/26.json; - }; nextcloud27Packages = callPackage ../servers/nextcloud/packages { apps = lib.importJSON ../servers/nextcloud/packages/27.json; }; -- cgit 1.4.1 From 4f0dbbd68bc4dd8b6240bb479d592dbfdde5d3df Mon Sep 17 00:00:00 2001 From: Felix Andreas Date: Wed, 10 Apr 2024 16:34:41 +0200 Subject: manim: move to python modules and use toPythonApplication --- pkgs/applications/video/manim/default.nix | 147 ----------------- pkgs/applications/video/manim/failing_tests.nix | 92 ----------- .../video/manim/pytest-report-header.patch | 22 --- pkgs/development/python-modules/manim/default.nix | 175 +++++++++++++++++++++ .../python-modules/manim/failing_tests.nix | 92 +++++++++++ .../manim/pytest-report-header.patch | 22 +++ pkgs/top-level/all-packages.nix | 2 +- pkgs/top-level/python-packages.nix | 2 + 8 files changed, 292 insertions(+), 262 deletions(-) delete mode 100644 pkgs/applications/video/manim/default.nix delete mode 100644 pkgs/applications/video/manim/failing_tests.nix delete mode 100644 pkgs/applications/video/manim/pytest-report-header.patch create mode 100644 pkgs/development/python-modules/manim/default.nix create mode 100644 pkgs/development/python-modules/manim/failing_tests.nix create mode 100644 pkgs/development/python-modules/manim/pytest-report-header.patch (limited to 'pkgs/top-level/all-packages.nix') diff --git a/pkgs/applications/video/manim/default.nix b/pkgs/applications/video/manim/default.nix deleted file mode 100644 index b341a7ffee89a..0000000000000 --- a/pkgs/applications/video/manim/default.nix +++ /dev/null @@ -1,147 +0,0 @@ -{ lib -, fetchFromGitHub - -, cairo -, ffmpeg -, texliveInfraOnly - -, python3 -}: - -let - # According to ManimCommunity documentation manim uses tex-packages packaged - # in a custom distribution called "manim-latex", - # - # https://community.chocolatey.org/packages/manim-latex#files - # - # which includes another cutom distribution called tinytex, for which the - # package list can be found at - # - # https://github.com/yihui/tinytex/blob/master/tools/pkgs-custom.txt - # - # these two combined add up to: - manim-tinytex = texliveInfraOnly.withPackages (ps: with ps; [ - - # tinytex - amsfonts amsmath atbegshi atveryend auxhook babel bibtex - bigintcalc bitset booktabs cm dehyph dvipdfmx dvips ec epstopdf-pkg etex - etexcmds etoolbox euenc everyshi fancyvrb filehook firstaid float fontspec - framed geometry gettitlestring glyphlist graphics graphics-cfg graphics-def - grffile helvetic hycolor hyperref hyph-utf8 iftex inconsolata infwarerr - intcalc knuth-lib kvdefinekeys kvoptions kvsetkeys l3backend l3kernel - l3packages latex latex-amsmath-dev latex-bin latex-fonts latex-tools-dev - latexconfig latexmk letltxmacro lm lm-math ltxcmds lua-alt-getopt luahbtex - lualatex-math lualibs luaotfload luatex mdwtools metafont mfware natbib - pdfescape pdftex pdftexcmds plain psnfss refcount rerunfilecheck stringenc - tex tex-ini-files times tipa tools unicode-data unicode-math uniquecounter - url xcolor xetex xetexconfig xkeyval xunicode zapfding - - # manim-latex - standalone everysel preview doublestroke ms setspace rsfs relsize ragged2e - fundus-calligra microtype wasysym physics dvisvgm jknapltx wasy cm-super - babel-english gnu-freefont mathastext cbfonts-fd - ]); - - python = python3; - -in python.pkgs.buildPythonApplication rec { - pname = "manim"; - pyproject = true; - version = "0.18.1"; - disabled = python3.pythonOlder "3.9"; - - src = fetchFromGitHub { - owner = "ManimCommunity"; - repo = "manim"; - rev = "refs/tags/v${version}"; - hash = "sha256-o+Wl3NMK6yopcsRVFtZuUE9c1GABa5d8rbQNHDJ4OiQ="; - }; - - nativeBuildInputs = with python.pkgs; [ - poetry-core - pythonRelaxDepsHook - ]; - - pythonRelaxDeps = [ - "cloup" - "isosurfaces" - "pillow" - "skia-pathops" - "watchdog" - ]; - - patches = [ - ./pytest-report-header.patch - ]; - - postPatch = '' - substituteInPlace pyproject.toml \ - --replace "--no-cov-on-fail --cov=manim --cov-report xml --cov-report term" "" - ''; - - buildInputs = [ cairo ]; - - propagatedBuildInputs = with python.pkgs; [ - click - click-default-group - cloup - colour - grpcio - grpcio-tools - importlib-metadata - isosurfaces - jupyterlab - manimpango - mapbox-earcut - moderngl - moderngl-window - networkx - numpy - pillow - pycairo - pydub - pygments - pysrt - rich - scipy - screeninfo - skia-pathops - srt - svgelements - tqdm - watchdog - ]; - - makeWrapperArgs = [ - "--prefix" "PATH" ":" (lib.makeBinPath [ - ffmpeg - manim-tinytex - ]) - ]; - - nativeCheckInputs = [ - ffmpeg - manim-tinytex - ] ++ (with python.pkgs; [ - pytest-xdist - pytestCheckHook - ]); - - # about 55 of ~600 tests failing mostly due to demand for display - disabledTests = import ./failing_tests.nix; - - pythonImportsCheck = [ "manim" ]; - - meta = with lib; { - description = "Animation engine for explanatory math videos - Community version"; - longDescription = '' - Manim is an animation engine for explanatory math videos. It's used to - create precise animations programmatically, as seen in the videos of - 3Blue1Brown on YouTube. This is the community maintained version of - manim. - ''; - homepage = "https://github.com/ManimCommunity/manim"; - license = licenses.mit; - maintainers = with maintainers; [ friedelino ]; - }; -} diff --git a/pkgs/applications/video/manim/failing_tests.nix b/pkgs/applications/video/manim/failing_tests.nix deleted file mode 100644 index ac788c25be20c..0000000000000 --- a/pkgs/applications/video/manim/failing_tests.nix +++ /dev/null @@ -1,92 +0,0 @@ -[ - # reason for failure: tests try to open display - "test_background_color" - "test_scene_add_remove" - "test_Circle" - "test_wait_skip" - "test_basic_scene_with_default_values" - "test_dry_run_with_png_format" - "test_dry_run_with_png_format_skipped_animations" - "test_FixedMobjects3D" - "test_basic_scene_l_flag" - "test_n_flag" - "test_s_flag_opengl_renderer" - "test_s_flag_no_animations" - "test_image_output_for_static_scene" - "test_no_image_output_with_interactive_embed" - "test_no_default_image_output_with_non_static_scene" - "test_image_output_for_static_scene_with_write_to_movie" - "test_s_flag" - "test_r_flag" - "test_play_skip" - "test_write_to_movie_disables_window" - "test_a_flag" - "test_pixel_coords_to_space_coords" - "test_t_values" - "test_custom_folders" - "test_t_values[15]" - "test_t_values[30]" - "test_t_values[60]" - "test_dash_as_filename" - "test_images_are_created_when_png_format_set_for_opengl" - "test_t_values_with_skip_animations" - "test_static_wait_detection" - "test_non_static_wait_detection" - "test_frozen_frame" - "test_gif_format_output" - "test_animate_with_changed_custom_attribute" - "test_images_are_zero_padded_when_zero_pad_set_for_opengl" - "test_mp4_format_output" - "test_videos_not_created_when_png_format_set" - "test_images_are_created_when_png_format_set" - "test_images_are_zero_padded_when_zero_pad_set" - "test_webm_format_output" - "test_default_format_output_for_transparent_flag" - "test_mov_can_be_set_as_output_format" - "test_force_window_opengl_render_with_format" - "test_get_frame_with_preview_disabled" - "test_get_frame_with_preview_enabled" - - # reason for failure: tests try to reach network - "test_logging_to_file" - "test_plugin_function_like" - "test_plugin_no_all" - "test_plugin_with_all" - - # failing with: - # E AssertionError: - # E Not equal to tolerance rtol=1e-07, atol=1.01 - # E Frame no -1. You can use --show_diff to visually show the difference. - # E Mismatched elements: 18525 / 1639680 (1.13%) - # E Max absolute difference: 255 - # E Max relative difference: 255. - "test_Text2Color" - "test_PointCloudDot" - "test_Torus" - - # test_ImplicitFunction[/test_implicit_graph] failing with: - # E AssertionError: - # E Not equal to tolerance rtol=1e-07, atol=1.01 - # E Frame no -1. You can use --show_diff to visually show the difference. - # E Mismatched elements: 1185[/633] / 1639680[/1639680] (0.0723[/0.0386]%) - # E Max absolute difference: 125[/121] - # E Max relative difference: 6.5[/1] - # - # These started failing after relaxing the β€œwatchdog” and β€œisosurfaces” dependencies, - # likely due to a tolerance difference. They should, however, start working again when [1] is - # included in a Manim release. - # [1]: https://github.com/ManimCommunity/manim/pull/3376 - "test_ImplicitFunction" - "test_implicit_graph" - - # failing with: - # TypeError: __init__() got an unexpected keyword argument 'msg' - maybe you meant pytest.mark.skipif? - "test_force_window_opengl_render_with_movies" - - # mismatching expecation on the new commandline - "test_manim_new_command" - - # This tests checks if the manim executable is a python script. In our case it is not. - # It is a wrapper shell script instead. - "test_manim_checkhealth_subcommand" -] diff --git a/pkgs/applications/video/manim/pytest-report-header.patch b/pkgs/applications/video/manim/pytest-report-header.patch deleted file mode 100644 index 7aa87d373e508..0000000000000 --- a/pkgs/applications/video/manim/pytest-report-header.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff --git a/conftest.py b/conftest.py -index dacb730a..149c6702 100644 ---- a/conftest.py -+++ b/conftest.py -@@ -33,17 +33,3 @@ def temp_media_dir(tmpdir, monkeypatch, request): - with tempconfig({"media_dir": str(tmpdir)}): - assert config.media_dir == str(tmpdir) - yield tmpdir -- -- --def pytest_report_header(config): -- ctx = moderngl.create_standalone_context() -- info = ctx.info -- ctx.release() -- return ( -- f"\nCairo Version: {cairo.cairo_version()}", -- "\nOpenGL information", -- "------------------", -- f"vendor: {info['GL_VENDOR'].strip()}", -- f"renderer: {info['GL_RENDERER'].strip()}", -- f"version: {info['GL_VERSION'].strip()}\n", -- ) diff --git a/pkgs/development/python-modules/manim/default.nix b/pkgs/development/python-modules/manim/default.nix new file mode 100644 index 0000000000000..09f2953c362e4 --- /dev/null +++ b/pkgs/development/python-modules/manim/default.nix @@ -0,0 +1,175 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, poetry-core +, pytest-xdist +, pytestCheckHook +, pythonOlder +, pythonRelaxDepsHook + +, cairo +, ffmpeg +, texliveInfraOnly + +, click +, click-default-group +, cloup +, colour +, grpcio +, grpcio-tools +, importlib-metadata +, isosurfaces +, jupyterlab +, manimpango +, mapbox-earcut +, moderngl +, moderngl-window +, networkx +, numpy +, pillow +, pycairo +, pydub +, pygments +, rich +, scipy +, screeninfo +, skia-pathops +, srt +, svgelements +, tqdm +, watchdog +}: + +let + # According to ManimCommunity documentation manim uses tex-packages packaged + # in a custom distribution called "manim-latex", + # + # https://community.chocolatey.org/packages/manim-latex#files + # + # which includes another cutom distribution called tinytex, for which the + # package list can be found at + # + # https://github.com/yihui/tinytex/blob/master/tools/pkgs-custom.txt + # + # these two combined add up to: + manim-tinytex = texliveInfraOnly.withPackages (ps: with ps; [ + + # tinytex + amsfonts amsmath atbegshi atveryend auxhook babel bibtex + bigintcalc bitset booktabs cm dehyph dvipdfmx dvips ec epstopdf-pkg etex + etexcmds etoolbox euenc everyshi fancyvrb filehook firstaid float fontspec + framed geometry gettitlestring glyphlist graphics graphics-cfg graphics-def + grffile helvetic hycolor hyperref hyph-utf8 iftex inconsolata infwarerr + intcalc knuth-lib kvdefinekeys kvoptions kvsetkeys l3backend l3kernel + l3packages latex latex-amsmath-dev latex-bin latex-fonts latex-tools-dev + latexconfig latexmk letltxmacro lm lm-math ltxcmds lua-alt-getopt luahbtex + lualatex-math lualibs luaotfload luatex mdwtools metafont mfware natbib + pdfescape pdftex pdftexcmds plain psnfss refcount rerunfilecheck stringenc + tex tex-ini-files times tipa tools unicode-data unicode-math uniquecounter + url xcolor xetex xetexconfig xkeyval xunicode zapfding + + # manim-latex + standalone everysel preview doublestroke ms setspace rsfs relsize ragged2e + fundus-calligra microtype wasysym physics dvisvgm jknapltx wasy cm-super + babel-english gnu-freefont mathastext cbfonts-fd + ]); + +in buildPythonPackage rec { + pname = "manim"; + pyproject = true; + version = "0.18.1"; + disabled = pythonOlder "3.9"; + + src = fetchFromGitHub { + owner = "ManimCommunity"; + repo = "manim"; + rev = "refs/tags/v${version}"; + hash = "sha256-o+Wl3NMK6yopcsRVFtZuUE9c1GABa5d8rbQNHDJ4OiQ="; + }; + + nativeBuildInputs = [ + poetry-core + pythonRelaxDepsHook + ]; + + pythonRelaxDeps = [ + "cloup" + "isosurfaces" + "pillow" + "skia-pathops" + "watchdog" + ]; + + patches = [ + ./pytest-report-header.patch + ]; + + postPatch = '' + substituteInPlace pyproject.toml \ + --replace "--no-cov-on-fail --cov=manim --cov-report xml --cov-report term" "" + ''; + + buildInputs = [ cairo ]; + + propagatedBuildInputs = [ + click + click-default-group + cloup + colour + grpcio + grpcio-tools + importlib-metadata + isosurfaces + jupyterlab + manimpango + mapbox-earcut + moderngl + moderngl-window + networkx + numpy + pillow + pycairo + pydub + pygments + rich + scipy + screeninfo + skia-pathops + srt + svgelements + tqdm + watchdog + ]; + + makeWrapperArgs = [ + "--prefix" "PATH" ":" (lib.makeBinPath [ + ffmpeg + manim-tinytex + ]) + ]; + + nativeCheckInputs = [ + ffmpeg + manim-tinytex + pytest-xdist + pytestCheckHook + ]; + + # about 55 of ~600 tests failing mostly due to demand for display + disabledTests = import ./failing_tests.nix; + + pythonImportsCheck = [ "manim" ]; + + meta = with lib; { + description = "Animation engine for explanatory math videos - Community version"; + longDescription = '' + Manim is an animation engine for explanatory math videos. It's used to + create precise animations programmatically, as seen in the videos of + 3Blue1Brown on YouTube. This is the community maintained version of + manim. + ''; + homepage = "https://github.com/ManimCommunity/manim"; + license = licenses.mit; + maintainers = with maintainers; [ friedelino ]; + }; +} diff --git a/pkgs/development/python-modules/manim/failing_tests.nix b/pkgs/development/python-modules/manim/failing_tests.nix new file mode 100644 index 0000000000000..ac788c25be20c --- /dev/null +++ b/pkgs/development/python-modules/manim/failing_tests.nix @@ -0,0 +1,92 @@ +[ + # reason for failure: tests try to open display + "test_background_color" + "test_scene_add_remove" + "test_Circle" + "test_wait_skip" + "test_basic_scene_with_default_values" + "test_dry_run_with_png_format" + "test_dry_run_with_png_format_skipped_animations" + "test_FixedMobjects3D" + "test_basic_scene_l_flag" + "test_n_flag" + "test_s_flag_opengl_renderer" + "test_s_flag_no_animations" + "test_image_output_for_static_scene" + "test_no_image_output_with_interactive_embed" + "test_no_default_image_output_with_non_static_scene" + "test_image_output_for_static_scene_with_write_to_movie" + "test_s_flag" + "test_r_flag" + "test_play_skip" + "test_write_to_movie_disables_window" + "test_a_flag" + "test_pixel_coords_to_space_coords" + "test_t_values" + "test_custom_folders" + "test_t_values[15]" + "test_t_values[30]" + "test_t_values[60]" + "test_dash_as_filename" + "test_images_are_created_when_png_format_set_for_opengl" + "test_t_values_with_skip_animations" + "test_static_wait_detection" + "test_non_static_wait_detection" + "test_frozen_frame" + "test_gif_format_output" + "test_animate_with_changed_custom_attribute" + "test_images_are_zero_padded_when_zero_pad_set_for_opengl" + "test_mp4_format_output" + "test_videos_not_created_when_png_format_set" + "test_images_are_created_when_png_format_set" + "test_images_are_zero_padded_when_zero_pad_set" + "test_webm_format_output" + "test_default_format_output_for_transparent_flag" + "test_mov_can_be_set_as_output_format" + "test_force_window_opengl_render_with_format" + "test_get_frame_with_preview_disabled" + "test_get_frame_with_preview_enabled" + + # reason for failure: tests try to reach network + "test_logging_to_file" + "test_plugin_function_like" + "test_plugin_no_all" + "test_plugin_with_all" + + # failing with: + # E AssertionError: + # E Not equal to tolerance rtol=1e-07, atol=1.01 + # E Frame no -1. You can use --show_diff to visually show the difference. + # E Mismatched elements: 18525 / 1639680 (1.13%) + # E Max absolute difference: 255 + # E Max relative difference: 255. + "test_Text2Color" + "test_PointCloudDot" + "test_Torus" + + # test_ImplicitFunction[/test_implicit_graph] failing with: + # E AssertionError: + # E Not equal to tolerance rtol=1e-07, atol=1.01 + # E Frame no -1. You can use --show_diff to visually show the difference. + # E Mismatched elements: 1185[/633] / 1639680[/1639680] (0.0723[/0.0386]%) + # E Max absolute difference: 125[/121] + # E Max relative difference: 6.5[/1] + # + # These started failing after relaxing the β€œwatchdog” and β€œisosurfaces” dependencies, + # likely due to a tolerance difference. They should, however, start working again when [1] is + # included in a Manim release. + # [1]: https://github.com/ManimCommunity/manim/pull/3376 + "test_ImplicitFunction" + "test_implicit_graph" + + # failing with: + # TypeError: __init__() got an unexpected keyword argument 'msg' - maybe you meant pytest.mark.skipif? + "test_force_window_opengl_render_with_movies" + + # mismatching expecation on the new commandline + "test_manim_new_command" + + # This tests checks if the manim executable is a python script. In our case it is not. + # It is a wrapper shell script instead. + "test_manim_checkhealth_subcommand" +] diff --git a/pkgs/development/python-modules/manim/pytest-report-header.patch b/pkgs/development/python-modules/manim/pytest-report-header.patch new file mode 100644 index 0000000000000..7aa87d373e508 --- /dev/null +++ b/pkgs/development/python-modules/manim/pytest-report-header.patch @@ -0,0 +1,22 @@ +diff --git a/conftest.py b/conftest.py +index dacb730a..149c6702 100644 +--- a/conftest.py ++++ b/conftest.py +@@ -33,17 +33,3 @@ def temp_media_dir(tmpdir, monkeypatch, request): + with tempconfig({"media_dir": str(tmpdir)}): + assert config.media_dir == str(tmpdir) + yield tmpdir +- +- +-def pytest_report_header(config): +- ctx = moderngl.create_standalone_context() +- info = ctx.info +- ctx.release() +- return ( +- f"\nCairo Version: {cairo.cairo_version()}", +- "\nOpenGL information", +- "------------------", +- f"vendor: {info['GL_VENDOR'].strip()}", +- f"renderer: {info['GL_RENDERER'].strip()}", +- f"version: {info['GL_VERSION'].strip()}\n", +- ) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index ea07c7564b2ed..46d542277490d 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -31430,7 +31430,7 @@ with pkgs; m32edit = callPackage ../applications/audio/midas/m32edit.nix { }; - manim = callPackage ../applications/video/manim { }; + manim = python3Packages.toPythonApplication python3Packages.manim; manim-slides = python3Packages.toPythonApplication ( python3Packages.manim-slides.override { diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 8ba934720ea54..73bfae3518586 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -7116,6 +7116,8 @@ self: super: with self; { manhole = callPackage ../development/python-modules/manhole { }; + manim = callPackage ../development/python-modules/manim { }; + manimpango = callPackage ../development/python-modules/manimpango { inherit (pkgs.darwin.apple_sdk.frameworks) AppKit; }; -- cgit 1.4.1 From bcd44e224fd68ce7d269b4f44d24c2220fd821e7 Mon Sep 17 00:00:00 2001 From: Alexis Hildebrandt Date: Wed, 1 May 2024 13:18:24 +0200 Subject: fzf: 0.50.0 -> 0.51.0 (#308223) --- pkgs/by-name/fz/fzf/package.nix | 91 +++++++++++++++++++++++++++++++++++++++++ pkgs/tools/misc/fzf/default.nix | 91 ----------------------------------------- pkgs/top-level/all-packages.nix | 2 - 3 files changed, 91 insertions(+), 93 deletions(-) create mode 100644 pkgs/by-name/fz/fzf/package.nix delete mode 100644 pkgs/tools/misc/fzf/default.nix (limited to 'pkgs/top-level/all-packages.nix') diff --git a/pkgs/by-name/fz/fzf/package.nix b/pkgs/by-name/fz/fzf/package.nix new file mode 100644 index 0000000000000..e243d515fa144 --- /dev/null +++ b/pkgs/by-name/fz/fzf/package.nix @@ -0,0 +1,91 @@ +{ lib +, buildGoModule +, fetchFromGitHub +, runtimeShell +, installShellFiles +, bc +, ncurses +, testers +, fzf +}: + +buildGoModule rec { + pname = "fzf"; + version = "0.51.0"; + + src = fetchFromGitHub { + owner = "junegunn"; + repo = "fzf"; + rev = version; + hash = "sha256-ybg2Zq2J/3lyIFnQpnPbRe6D8iD+hgiiA02EatOQVkI="; + }; + + vendorHash = "sha256-Ho2jVD/U/2BFt3BF5w+KHp5nSVmukx0o2l3ISDGDSt0="; + + CGO_ENABLED = 0; + + outputs = [ "out" "man" ]; + + nativeBuildInputs = [ installShellFiles ]; + + buildInputs = [ ncurses ]; + + ldflags = [ + "-s" "-w" "-X main.version=${version} -X main.revision=${src.rev}" + ]; + + # The vim plugin expects a relative path to the binary; patch it to abspath. + postPatch = '' + sed -i -e "s|expand(':h:h')|'$out'|" plugin/fzf.vim + + if ! grep -q $out plugin/fzf.vim; then + echo "Failed to replace vim base_dir path with $out" + exit 1 + fi + + # fzf-tmux depends on bc + substituteInPlace bin/fzf-tmux \ + --replace "bc" "${bc}/bin/bc" + ''; + + postInstall = '' + install bin/fzf-tmux $out/bin + + installManPage man/man1/fzf.1 man/man1/fzf-tmux.1 + + install -D plugin/* -t $out/share/vim-plugins/${pname}/plugin + mkdir -p $out/share/nvim + ln -s $out/share/vim-plugins/${pname} $out/share/nvim/site + + # Install shell integrations + install -D shell/* -t $out/share/fzf/ + install -D shell/key-bindings.fish $out/share/fish/vendor_functions.d/fzf_key_bindings.fish + mkdir -p $out/share/fish/vendor_conf.d + cat << EOF > $out/share/fish/vendor_conf.d/load-fzf-key-bindings.fish + status is-interactive; or exit 0 + fzf_key_bindings + EOF + + cat <