diff --git a/.editorconfig b/.editorconfig index 6844b559c7b5..3a2159d33734 100644 --- a/.editorconfig +++ b/.editorconfig @@ -64,6 +64,9 @@ insert_final_newline = unset end_of_line = unset trim_trailing_whitespace = unset +[*.json] +insert_final_newline = unset + [*.lock] indent_size = unset diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index b3f714b1a9e0..68df7f46738a 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -10795,6 +10795,12 @@ githubId = 51334444; name = "Akshat Agarwal"; }; + humemm = { + email = "nixpkgs.scabbed988@passinbox.com"; + github = "humemm"; + githubId = 75555696; + name = "humemm"; + }; hummeltech = { email = "hummeltech@sherpaguru.com"; github = "hummeltech"; diff --git a/nixos/tests/fcitx5/default.nix b/nixos/tests/fcitx5/default.nix index b66638efa741..3632b862f155 100644 --- a/nixos/tests/fcitx5/default.nix +++ b/nixos/tests/fcitx5/default.nix @@ -30,7 +30,7 @@ enable = true; type = "fcitx5"; fcitx5.addons = [ - pkgs.fcitx5-chinese-addons + pkgs.qt6Packages.fcitx5-chinese-addons pkgs.fcitx5-hangul pkgs.fcitx5-m17n pkgs.fcitx5-mozc @@ -81,7 +81,7 @@ user = nodes.machine.users.users.alice; xauth = "${user.home}/.Xauthority"; in - '' + /* python */ '' start_all() machine.wait_for_x() diff --git a/pkgs/applications/editors/android-studio/default.nix b/pkgs/applications/editors/android-studio/default.nix index c2604cdeabdf..41081b11c66a 100644 --- a/pkgs/applications/editors/android-studio/default.nix +++ b/pkgs/applications/editors/android-studio/default.nix @@ -20,12 +20,12 @@ let sha256Hash = "sha256-xs9ABQ9f8/gtxcoiZkf/xEtmTOj6rb4Ty+w70/+C4Ss="; }; betaVersion = { - version = "2025.2.3.7"; # "Android Studio Otter 3 Feature Drop | 2025.2.3 RC 2" - sha256Hash = "sha256-d5BcAUkYV7O25wyoifiZxfUsANPxLa/QkuT9u1qqfP8="; + version = "2025.2.3.8"; # "Android Studio Otter 3 Feature Drop | 2025.2.3 RC 3" + sha256Hash = "sha256-KHvWVIxNzwdgl9kdqXD5Cpvz58r8pWs2VRyPV3VrJH0="; }; latestVersion = { - version = "2025.3.1.2"; # "Android Studio Panda 1 | 2025.3.1 Canary 2" - sha256Hash = "sha256-kgYPwMF/CypkCq4w/y+HnraNdPNHf53198x35S0i7OA="; + version = "2025.3.1.4"; # "Android Studio Panda 1 | 2025.3.1 Canary 4" + sha256Hash = "sha256-5ymB/HKSmi32AWV39+HYmfY11frkNxf2dq8Ld4f9qfA="; }; in { diff --git a/pkgs/applications/editors/emacs/sources.nix b/pkgs/applications/editors/emacs/sources.nix index 41fa77ea7d5d..468ea813ee42 100644 --- a/pkgs/applications/editors/emacs/sources.nix +++ b/pkgs/applications/editors/emacs/sources.nix @@ -45,7 +45,7 @@ let homepage = { "mainline" = "https://www.gnu.org/software/emacs/"; - "macport" = "https://bitbucket.org/mituharu/emacs-mac/"; + "macport" = "https://github.com/jdtsmith/emacs-mac"; } .${variant}; description = diff --git a/pkgs/applications/networking/cluster/terraform-providers/providers.json b/pkgs/applications/networking/cluster/terraform-providers/providers.json index 37aa5825436b..37a0922b93de 100644 --- a/pkgs/applications/networking/cluster/terraform-providers/providers.json +++ b/pkgs/applications/networking/cluster/terraform-providers/providers.json @@ -1076,11 +1076,11 @@ "vendorHash": "sha256-F1AuO/dkldEDRvkwrbq2EjByxjg3K2rohZAM4DzKPUw=" }, "pagerduty_pagerduty": { - "hash": "sha256-K3Gr3ivLPMFqR10HSino/ZlsYWNpDzyJalx6orTVa4k=", + "hash": "sha256-dQaXwuT7BsgaC5PeFMqqQ1607E2/BYTA18RL8YycvNw=", "homepage": "https://registry.terraform.io/providers/PagerDuty/pagerduty", "owner": "PagerDuty", "repo": "terraform-provider-pagerduty", - "rev": "v3.30.8", + "rev": "v3.30.9", "spdx": "MPL-2.0", "vendorHash": null }, diff --git a/pkgs/by-name/ai/airwindows/package.nix b/pkgs/by-name/ai/airwindows/package.nix index 8b31364ec709..37f61ef13c60 100644 --- a/pkgs/by-name/ai/airwindows/package.nix +++ b/pkgs/by-name/ai/airwindows/package.nix @@ -8,13 +8,13 @@ }: stdenv.mkDerivation { pname = "airwindows"; - version = "0-unstable-2025-12-07"; + version = "0-unstable-2026-01-11"; src = fetchFromGitHub { owner = "airwindows"; repo = "airwindows"; - rev = "bfff4df7e63a3f6fde744e890849b21895c94e78"; - hash = "sha256-Ss91Ld2bNYD4HiO7Mgth5fwg3OVBYvZBaDQstBvvVKU="; + rev = "53a648baed26d12df3351b3301ea9cc741a35648"; + hash = "sha256-GN6AuqrHfFItFe8s1xU3LpltnTKEhasrvyI+3H9z7rU="; }; # we patch helpers because honestly im spooked out by where those variables diff --git a/pkgs/by-name/bl/bloop/package.nix b/pkgs/by-name/bl/bloop/package.nix index d3d5a94e85a6..560fae162335 100644 --- a/pkgs/by-name/bl/bloop/package.nix +++ b/pkgs/by-name/bl/bloop/package.nix @@ -11,7 +11,7 @@ stdenv.mkDerivation rec { pname = "bloop"; - version = "2.0.17"; + version = "2.0.18"; platform = if stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isx86_64 then @@ -42,11 +42,11 @@ stdenv.mkDerivation rec { url = "https://github.com/scalacenter/bloop/releases/download/v${version}/bloop-${platform}"; sha256 = if stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isx86_64 then - "sha256-pvqIotxcKVtrCQlMdbMGNkPvrMcNyw8CmtnUkQjAF8Y=" + "sha256-18cI2w2HXq1BechxLi1GzljWRYAp2IDO5SAaZHnJy6c=" else if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64 then - "sha256-W54MoUGEQ48ju+h1PVUxlJZ0RxV2NLjYhlq6QacBEto=" + "sha256-pVGxaEAatqRTIwTHpTEt7XwzLqgFf67ztgjTtIEnBa8=" else if stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64 then - "sha256-7FtS1dlDK5v/zlwFA5rPSkyLaEVbKhAaKdOhZkZcFPg=" + "sha256-AjI1YKarVSGJHuRJ/86BaeD4XkGcbI7XzjAg5swgNM0=" else throw "unsupported platform"; }; diff --git a/pkgs/by-name/er/ersatztv/nuget-deps.json b/pkgs/by-name/er/ersatztv/nuget-deps.json index 84491619138b..e4c862ee5b5f 100644 --- a/pkgs/by-name/er/ersatztv/nuget-deps.json +++ b/pkgs/by-name/er/ersatztv/nuget-deps.json @@ -309,11 +309,6 @@ "version": "5.0.0", "hash": "sha256-THQ8Z7DAoMDEqAS7feAmAt82NvU7H90Y+jYwC7NwL+0=" }, - { - "pname": "Microsoft.AspNetCore.App.Internal.Assets", - "version": "10.0.2", - "hash": "sha256-nh+JRXHTI01RUDFeEw4yep4iMxci5R7zKyRX2Tkd/mc=" - }, { "pname": "Microsoft.AspNetCore.Authentication.JwtBearer", "version": "10.0.1", diff --git a/pkgs/by-name/fo/focus-stack/package.nix b/pkgs/by-name/fo/focus-stack/package.nix index 2194318790c0..57c9d30c2a4b 100644 --- a/pkgs/by-name/fo/focus-stack/package.nix +++ b/pkgs/by-name/fo/focus-stack/package.nix @@ -10,13 +10,13 @@ stdenv.mkDerivation rec { pname = "focus-stack"; - version = "1.4"; + version = "1.5"; src = fetchFromGitHub { owner = "PetteriAimonen"; repo = "focus-stack"; rev = version; - hash = "sha256-SoECgBMjWI+n7H6p3hf8J5E9UCLHGiiz5WAsEEioJsU="; + hash = "sha256-hIaK8hjeuu6w/8nh9DHOffqZufQdqB1/VQRezCPQIPk="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/fr/frigate/ai-edge-litert.patch b/pkgs/by-name/fr/frigate/ai-edge-litert.patch new file mode 100644 index 000000000000..95a63781ccef --- /dev/null +++ b/pkgs/by-name/fr/frigate/ai-edge-litert.patch @@ -0,0 +1,64 @@ +diff --git a/frigate/data_processing/real_time/bird.py b/frigate/data_processing/real_time/bird.py +index d547f2dd..402876b7 100644 +--- a/frigate/data_processing/real_time/bird.py ++++ b/frigate/data_processing/real_time/bird.py +@@ -21,7 +21,7 @@ from .api import RealTimeProcessorApi + try: + from tflite_runtime.interpreter import Interpreter + except ModuleNotFoundError: +- from tensorflow.lite.python.interpreter import Interpreter ++ from ai_edge_litert.interpreter import Interpreter + + logger = logging.getLogger(__name__) + +diff --git a/frigate/detectors/plugins/cpu_tfl.py b/frigate/detectors/plugins/cpu_tfl.py +index 8a54363e..68ae558b 100644 +--- a/frigate/detectors/plugins/cpu_tfl.py ++++ b/frigate/detectors/plugins/cpu_tfl.py +@@ -10,7 +10,7 @@ from frigate.detectors.detector_config import BaseDetectorConfig + try: + from tflite_runtime.interpreter import Interpreter + except ModuleNotFoundError: +- from tensorflow.lite.python.interpreter import Interpreter ++ from ai_edge_litert.interpreter import Interpreter + + + logger = logging.getLogger(__name__) +diff --git a/frigate/detectors/plugins/edgetpu_tfl.py b/frigate/detectors/plugins/edgetpu_tfl.py +index 246d2dd4..e855bf87 100644 +--- a/frigate/detectors/plugins/edgetpu_tfl.py ++++ b/frigate/detectors/plugins/edgetpu_tfl.py +@@ -11,7 +11,7 @@ from frigate.detectors.detector_config import BaseDetectorConfig + try: + from tflite_runtime.interpreter import Interpreter, load_delegate + except ModuleNotFoundError: +- from tensorflow.lite.python.interpreter import Interpreter, load_delegate ++ from ai_edge_litert.interpreter import Interpreter, load_delegate + + + logger = logging.getLogger(__name__) +diff --git a/frigate/embeddings/onnx/face_embedding.py b/frigate/embeddings/onnx/face_embedding.py +index eb04b43b..0c6c26fc 100644 +--- a/frigate/embeddings/onnx/face_embedding.py ++++ b/frigate/embeddings/onnx/face_embedding.py +@@ -14,7 +14,7 @@ from .runner import ONNXModelRunner + try: + from tflite_runtime.interpreter import Interpreter + except ModuleNotFoundError: +- from tensorflow.lite.python.interpreter import Interpreter ++ from ai_edge_litert.interpreter import Interpreter + + logger = logging.getLogger(__name__) + +diff --git a/frigate/events/audio.py b/frigate/events/audio.py +index f2a217fd..82206b5a 100644 +--- a/frigate/events/audio.py ++++ b/frigate/events/audio.py +@@ -36,7 +36,7 @@ from frigate.video import start_or_restart_ffmpeg, stop_ffmpeg + try: + from tflite_runtime.interpreter import Interpreter + except ModuleNotFoundError: +- from tensorflow.lite.python.interpreter import Interpreter ++ from ai_edge_litert.interpreter import Interpreter + + diff --git a/pkgs/by-name/fr/frigate/package.nix b/pkgs/by-name/fr/frigate/package.nix index 2ecb7c5b655d..84b51095aa9e 100644 --- a/pkgs/by-name/fr/frigate/package.nix +++ b/pkgs/by-name/fr/frigate/package.nix @@ -38,11 +38,6 @@ let hash = "sha256-95xtUzzIxxvDtpHX/5uCHnTQTB8Fc08DZGUOR/SdKLs="; }; }); - onnxruntime = super.onnxruntime.override (old: { - onnxruntime = old.onnxruntime.override (old: { - withFullProtobuf = true; - }); - }); }; }; python3Packages = python.pkgs; @@ -89,6 +84,7 @@ python3Packages.buildPythonApplication rec { hash = "sha256-1+n0n0yCtjfAHkXzsZdIF0iCVdPGmsG7l8/VTqBVEjU="; }) ./ffmpeg.patch + ./ai-edge-litert.patch ]; postPatch = '' @@ -132,6 +128,7 @@ python3Packages.buildPythonApplication rec { # docker/main/requirements.txt scikit-build # docker/main/requirements-wheel.txt + ai-edge-litert aiofiles aiohttp appdirs @@ -180,7 +177,6 @@ python3Packages.buildPythonApplication rec { slowapi starlette starlette-context - tensorflow-bin titlecase transformers tzlocal diff --git a/pkgs/by-name/gr/grype/package.nix b/pkgs/by-name/gr/grype/package.nix index 349b3281ff64..4ceb101757d9 100644 --- a/pkgs/by-name/gr/grype/package.nix +++ b/pkgs/by-name/gr/grype/package.nix @@ -11,13 +11,13 @@ buildGoModule (finalAttrs: { pname = "grype"; - version = "0.104.4"; + version = "0.105.0"; src = fetchFromGitHub { owner = "anchore"; repo = "grype"; tag = "v${finalAttrs.version}"; - hash = "sha256-XuB3eUBtyi23Wd3l8iuaN4rVw9/0/XNDBee8/m6swZo="; + hash = "sha256-+8fCQ/9S4qwPfq/XM5G7LdNl8VQvBxIl67RMqlB6rUI="; # populate values that require us to use git. By doing this in postFetch we # can delete .git afterwards and maintain better reproducibility of the src. leaveDotGit = true; @@ -32,7 +32,7 @@ buildGoModule (finalAttrs: { proxyVendor = true; - vendorHash = "sha256-toxkblzuAO/IYgKuvpmp5yc70KtFx6wiW2mkkO5owMY="; + vendorHash = "sha256-dYtTYkSVIO5k9kkodhIUWrlNXfQNCUjTUwz4+n6IMtY="; nativeBuildInputs = [ installShellFiles ]; diff --git a/pkgs/by-name/ja/jarowinkler-cpp/package.nix b/pkgs/by-name/ja/jarowinkler-cpp/package.nix deleted file mode 100644 index 80333b4dd390..000000000000 --- a/pkgs/by-name/ja/jarowinkler-cpp/package.nix +++ /dev/null @@ -1,42 +0,0 @@ -{ - lib, - stdenv, - fetchFromGitHub, - cmake, - catch2_3, -}: - -stdenv.mkDerivation rec { - pname = "jarowinkler-cpp"; - version = "1.0.2"; - - src = fetchFromGitHub { - owner = "maxbachmann"; - repo = "jarowinkler-cpp"; - rev = "v${version}"; - hash = "sha256-GuwDSCYTfSwqTnzZSft3ufVSKL7255lVvbJhBxKxjJw="; - }; - - nativeBuildInputs = [ - cmake - ]; - - cmakeFlags = lib.optionals doCheck [ - "-DJARO_WINKLER_BUILD_TESTING=ON" - ]; - - nativeCheckInputs = [ - catch2_3 - ]; - - doCheck = true; - - meta = { - description = "Fast Jaro and Jaro-Winkler distance"; - homepage = "https://github.com/maxbachmann/jarowinkler-cpp"; - changelog = "https://github.com/maxbachmann/jarowinkler-cpp/blob/${src.rev}/CHANGELOG.md"; - license = lib.licenses.mit; - maintainers = with lib.maintainers; [ dotlambda ]; - platforms = lib.platforms.unix; - }; -} diff --git a/pkgs/by-name/li/libmesode/package.nix b/pkgs/by-name/li/libmesode/package.nix deleted file mode 100644 index b016c47fb849..000000000000 --- a/pkgs/by-name/li/libmesode/package.nix +++ /dev/null @@ -1,61 +0,0 @@ -{ - lib, - stdenv, - fetchFromGitHub, - autoreconfHook, - libtool, - openssl, - expat, - pkg-config, - check, -}: - -stdenv.mkDerivation rec { - pname = "libmesode"; - version = "0.10.1"; - - src = fetchFromGitHub { - owner = "profanity-im"; - repo = "libmesode"; - rev = version; - sha256 = "1bxnkhrypgv41qyy1n545kcggmlw1hvxnhwihijhhcf2pxd2s654"; - }; - - nativeBuildInputs = [ - autoreconfHook - pkg-config - ]; - buildInputs = [ - openssl - expat - libtool - check - ]; - - dontDisableStatic = true; - - doCheck = true; - - meta = { - description = "Fork of libstrophe (https://github.com/strophe/libstrophe) for use with Profanity XMPP Client"; - longDescription = '' - Reasons for forking: - - - Remove Windows support - - Support only one XML Parser implementation (expat) - - Support only one SSL implementation (OpenSSL) - - This simplifies maintenance of the library when used in Profanity. - Whilst Profanity will run against libstrophe, libmesode provides extra - TLS functionality such as manual SSL certificate verification. - ''; - homepage = "https://github.com/profanity-im/libmesode/"; - license = with lib.licenses; [ - gpl3Only - mit - ]; - platforms = lib.platforms.unix; - broken = stdenv.hostPlatform.isDarwin; - maintainers = with lib.maintainers; [ devhell ]; - }; -} diff --git a/pkgs/by-name/ma/mattermost/package.nix b/pkgs/by-name/ma/mattermost/package.nix index 5382a883c3c1..4f26bb650e71 100644 --- a/pkgs/by-name/ma/mattermost/package.nix +++ b/pkgs/by-name/ma/mattermost/package.nix @@ -20,8 +20,8 @@ # # Ensure you also check ../mattermostLatest/package.nix. regex = "^v(10\\.11\\.[0-9]+)$"; - version = "10.11.9"; - srcHash = "sha256-e7itz3VcjSwXGTA+Dn0g5CmQzpnquQ6GmWNdvwrhaQo="; + version = "10.11.10"; + srcHash = "sha256-do7g5B/rs9JPT2JS718xi3CmaFEXAmmcM/yJi+R/q2Y="; vendorHash = "sha256-Lsw/cvl98JdVmzWr85lAv/JMcTmZZZ4ALLunFLNcrro="; npmDepsHash = "sha256-p9dq31qw0EZDQIl2ysKE38JgDyLA6XvSv+VtHuRh+8A="; lockfileOverlay = '' diff --git a/pkgs/by-name/mo/mongodb-compass/package.nix b/pkgs/by-name/mo/mongodb-compass/package.nix index 90a203a609f4..ca8716e4fb57 100644 --- a/pkgs/by-name/mo/mongodb-compass/package.nix +++ b/pkgs/by-name/mo/mongodb-compass/package.nix @@ -40,7 +40,7 @@ let pname = "mongodb-compass"; - version = "1.48.2"; + version = "1.49.0"; selectSystem = attrs: @@ -55,9 +55,9 @@ let } }"; hash = selectSystem { - x86_64-linux = "sha256-6plLkjeFyXnYVTRY9hnnlKRRk0/pqIE7uQ/ftht6MB4="; - x86_64-darwin = "sha256-kVIYeo4YmEGUA+9jUMQ+tm3C504yCdFSTprUMZmXCxI="; - aarch64-darwin = "sha256-dJD7efN/sfLwxJz1myYneAKdnVdEcNzSth5CzcVoGsM="; + x86_64-linux = "sha256-XbVgFYkamZWCVcik3Hh0MiuwCHCi2NDKusT/CRO+q0E="; + x86_64-darwin = "sha256-mqnVYJ1wsC1qekEM9CYkZ05DTKHTDUHnoVytm/5QMw4="; + aarch64-darwin = "sha256-fVnW4mygJOgpqIHlO2qjMt9zdQaVBqFLKX4CL31KvXg="; }; }; diff --git a/pkgs/by-name/mo/mongosh/package.nix b/pkgs/by-name/mo/mongosh/package.nix index 4c925831bd69..28d85142b5e1 100644 --- a/pkgs/by-name/mo/mongosh/package.nix +++ b/pkgs/by-name/mo/mongosh/package.nix @@ -7,16 +7,16 @@ buildNpmPackage.override { nodejs = nodejs_22; } (finalAttrs: { pname = "mongosh"; - version = "2.5.10"; + version = "2.6.0"; src = fetchFromGitHub { owner = "mongodb-js"; repo = "mongosh"; tag = "v${finalAttrs.version}"; - hash = "sha256-N1uAIgEX44RSFJTivOpASKiab+Jr0N0Mo+olt000uK4="; + hash = "sha256-JoHTHqBx7CKcpEzn82qK4Mp8zGzw4o/iYMhZAw6gpV0="; }; - npmDepsHash = "sha256-/8qw9dVPHAuyQZWdDq+jhP7NMBwTbvMqv/PtwXJEQuo="; + npmDepsHash = "sha256-PgH5r2E94fKj5dhEDP6h68UoRq3KPvJuYdM1oAGuWXo="; patches = [ ./disable-telemetry.patch diff --git a/pkgs/by-name/no/nofi/package.nix b/pkgs/by-name/no/nofi/package.nix deleted file mode 100644 index 14521470e79d..000000000000 --- a/pkgs/by-name/no/nofi/package.nix +++ /dev/null @@ -1,36 +0,0 @@ -{ - lib, - rustPlatform, - fetchFromGitHub, - dbus, - pkg-config, -}: - -rustPlatform.buildRustPackage rec { - pname = "nofi"; - version = "0.2.4"; - - src = fetchFromGitHub { - owner = "ellsclytn"; - repo = "nofi"; - rev = "v${version}"; - hash = "sha256-hQYIcyNCxb8qVpseNsmjyPxlwbMxDpXeZ+H1vpv62rQ="; - }; - - cargoHash = "sha256-dWqMwS0TgspZqlpi8hhwtA7sbqGunw0FIqjJXOTiFKA="; - - nativeBuildInputs = [ pkg-config ]; - buildInputs = [ dbus ]; - - meta = { - description = "Interruption-free notification system for Linux"; - homepage = "https://github.com/ellsclytn/nofi/"; - changelog = "https://github.com/ellsclytn/nofi/raw/v${version}/CHANGELOG.md"; - license = [ - lib.licenses.asl20 # or - lib.licenses.mit - ]; - mainProgram = "nofi"; - maintainers = [ lib.maintainers.magnetophon ]; - }; -} diff --git a/pkgs/by-name/rg/rgrc/package.nix b/pkgs/by-name/rg/rgrc/package.nix index 66fe5fd6dbbe..dbe720a55a82 100644 --- a/pkgs/by-name/rg/rgrc/package.nix +++ b/pkgs/by-name/rg/rgrc/package.nix @@ -10,16 +10,16 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "rgrc"; - version = "0.6.5"; + version = "0.6.6"; src = fetchFromGitHub { owner = "lazywalker"; repo = "rgrc"; tag = "v${finalAttrs.version}"; - hash = "sha256-OuNVX1whhJOMj2rX2yANyHie8dn9i5JAI29btOgNH38="; + hash = "sha256-01wZYHxE01GpvFo45Fx7VootmNf/PQsS5jRMBKM7SHY="; }; - cargoHash = "sha256-wQht/DJgTvnOIQ3u2Nz5jyUNhotDgA2/iXhb9ZElGI4="; + cargoHash = "sha256-EoFTZGHviwlvB1eVQS4F0/e0g7Lp9ZipsgEYbZfNwHA="; nativeBuildInputs = [ installShellFiles ]; diff --git a/pkgs/by-name/rq/rqbit/package.nix b/pkgs/by-name/rq/rqbit/package.nix index 490f232b3f78..0516e01b776c 100644 --- a/pkgs/by-name/rq/rqbit/package.nix +++ b/pkgs/by-name/rq/rqbit/package.nix @@ -6,7 +6,7 @@ pkg-config, openssl, buildNpmPackage, - nodejs_20, + nodejs, nix-update-script, }: let @@ -24,9 +24,7 @@ let rqbit-webui = buildNpmPackage { pname = "rqbit-webui"; - nodejs = nodejs_20; - - inherit version src; + inherit version src nodejs; sourceRoot = "${src.name}/crates/librqbit/webui"; diff --git a/pkgs/by-name/so/socalabs-papu/package.nix b/pkgs/by-name/so/socalabs-papu/package.nix index 8b4b06b2f221..31632fc4ee2c 100644 --- a/pkgs/by-name/so/socalabs-papu/package.nix +++ b/pkgs/by-name/so/socalabs-papu/package.nix @@ -30,13 +30,13 @@ }: stdenv.mkDerivation (finalAttrs: { pname = "socalabs-papu"; - version = "1.2.0"; + version = "1.2.2"; src = fetchFromGitHub { owner = "FigBug"; repo = "PAPU"; tag = "v${finalAttrs.version}"; - hash = "sha256-psSwQJwfCvsSgF72/K0WZQRqt0CoasVITLH69V4XcUg="; + hash = "sha256-8GM28Qt+wCc+r/6wWCh/msbIQJJqFii8ijkhuOLWfdc="; fetchSubmodules = true; }; diff --git a/pkgs/by-name/sy/syft/package.nix b/pkgs/by-name/sy/syft/package.nix index 5d75c3fa90db..603db600ccd9 100644 --- a/pkgs/by-name/sy/syft/package.nix +++ b/pkgs/by-name/sy/syft/package.nix @@ -8,13 +8,13 @@ buildGoModule rec { pname = "syft"; - version = "1.40.0"; + version = "1.40.1"; src = fetchFromGitHub { owner = "anchore"; repo = "syft"; tag = "v${version}"; - hash = "sha256-aU7i+bjOB6lM5/i/lDuncbCiCQdwkQxglgr4lawof1Q="; + hash = "sha256-zvLUvBaGI6HXzpsPJSZaF4ni6tbEdZizY7KNSpzYXUo="; # populate values that require us to use git. By doing this in postFetch we # can delete .git afterwards and maintain better reproducibility of the src. leaveDotGit = true; @@ -29,7 +29,7 @@ buildGoModule rec { # hash mismatch with darwin proxyVendor = true; - vendorHash = "sha256-W2Ea+2Pq2zPhVSWI/7NlG1/LeNfOE1kUnAB8Kp7AqgM="; + vendorHash = "sha256-xIy3cVGx8wJektv7b+3YtR2jIBDF920762y7Gsc22nI="; nativeBuildInputs = [ installShellFiles ]; diff --git a/pkgs/by-name/tu/turborepo-remote-cache/package.nix b/pkgs/by-name/tu/turborepo-remote-cache/package.nix new file mode 100644 index 000000000000..6a71337649e7 --- /dev/null +++ b/pkgs/by-name/tu/turborepo-remote-cache/package.nix @@ -0,0 +1,85 @@ +{ + lib, + stdenvNoCC, + nodejs-slim_24, + pnpm_10, + pnpmConfigHook, + jq, + fetchFromGitHub, + fetchPnpmDeps, + makeWrapper, + nix-update-script, +}: +stdenvNoCC.mkDerivation (finalAttrs: { + pname = "turborepo-remote-cache"; + version = "2.7.0"; + + src = fetchFromGitHub { + owner = "ducktors"; + repo = "turborepo-remote-cache"; + tag = "v${finalAttrs.version}"; + hash = "sha256-ySMZZ9rhVNkoJzz9g1ZxfnL67xGjN2WbirINJMKQqN4="; + }; + + pnpmDeps = fetchPnpmDeps { + inherit (finalAttrs) pname version src; + pnpm = pnpm_10; + fetcherVersion = 3; + hash = "sha256-i8kXC9bRit9S1TPV9uixCkkn3KahRu/hhBeDyHm6MBc="; + }; + + nativeBuildInputs = [ + nodejs-slim_24 + pnpmConfigHook + pnpm_10 + jq + makeWrapper + ]; + + postPatch = '' + # Replace build script to skip linting + jq '.scripts.build = "tsc -p ./tsconfig.json"' package.json > package.json.tmp + mv package.json.tmp package.json + + # Remove prepare script since we don't need git hooks + jq 'del(.scripts.prepare)' package.json > package.json.tmp + mv package.json.tmp package.json + ''; + + buildPhase = '' + runHook preBuild + pnpm build + pnpm prune --prod + # Clean up broken symlinks left behind by `pnpm prune` + # https://github.com/pnpm/pnpm/issues/3645 + find node_modules -xtype l -delete + # Remove non-deterministic files + rm node_modules/.modules.yaml + runHook postBuild + ''; + + installPhase = '' + runHook preInstall + + appdir="$out/lib/turborepo-remote-cache" + mkdir -p "$appdir" "$out/bin" + + cp -r dist node_modules "$appdir"/ + + makeWrapper ${nodejs-slim_24}/bin/node "$out/bin/turborepo-remote-cache" \ + --add-flags "$appdir/dist/index.js" \ + --set NODE_PATH "$appdir/node_modules" + + runHook postInstall + ''; + + passthru.updateScript = nix-update-script { }; + + meta = { + homepage = "https://github.com/ducktors/turborepo-remote-cache"; + description = "This project is an open-source implementation of the Turborepo custom remote cache server."; + license = lib.licenses.mit; + mainProgram = "turborepo-remote-cache"; + maintainers = with lib.maintainers; [ humemm ]; + }; +}) diff --git a/pkgs/by-name/wl/wlc/package.nix b/pkgs/by-name/wl/wlc/package.nix index d83c1863dbb8..06866b932ae9 100644 --- a/pkgs/by-name/wl/wlc/package.nix +++ b/pkgs/by-name/wl/wlc/package.nix @@ -6,12 +6,12 @@ python3.pkgs.buildPythonPackage rec { pname = "wlc"; - version = "1.16.1"; + version = "1.17.1"; pyproject = true; src = fetchPypi { inherit pname version; - hash = "sha256-gTVt5cxz8tk63mnTZAtzcYdy4m0NVR0y6xjmVICw7pg="; + hash = "sha256-FtxJ1clfvJCggg4h9Lzwq4S4KyejJxppjrB3i7Jiy/Y="; }; build-system = with python3.pkgs; [ setuptools ]; diff --git a/pkgs/development/compilers/dotnet/default.nix b/pkgs/development/compilers/dotnet/default.nix index 9e1f248e61cd..1519f5562271 100644 --- a/pkgs/development/compilers/dotnet/default.nix +++ b/pkgs/development/compilers/dotnet/default.nix @@ -100,71 +100,77 @@ let # combine an SDK with the runtime/packages from a base SDK combineSdk = - base: overlay: - if (overlay.runtime.version != base.runtime.version) then - throw "combineSdk: unable to combine ${overlay.name} with ${base.name} because runtime versions don't match (${overlay.runtime.version} != ${base.runtime.version})" + base: fallback: + if (fallback.runtime.version != base.runtime.version) then + throw "combineSdk: unable to combine ${fallback.name} with ${base.name} because runtime versions don't match (${fallback.runtime.version} != ${base.runtime.version})" + else if base.meta.broken then + fallback else - pkgs.callPackage ./wrapper.nix { } "sdk" ( - (pkgs.combinePackages [ - base.runtime - base.aspnetcore - (overlay.overrideAttrs (old: { - passthru = old.passthru // { - inherit (base) - packages - targetPackages - ; - }; - })) - ]).unwrapped.overrideAttrs - (old: { - name = overlay.unwrapped.name; - # resolve symlinks so DOTNET_ROOT is self-contained - postBuild = '' - mv "$out"/share/dotnet{,~} - cp -Lr "$out"/share/dotnet{~,} - rm -r "$out"/share/dotnet~ - '' - + old.postBuild; - passthru = - old.passthru - // ( - let - # if only overlay has a working ILCompiler, use it - hostRid = pkgs.systemToDotnetRid base.stdenv.hostPlatform.system; - hasILCompiler = base.hasILCompiler || overlay.hasILCompiler; - packageName = "runtime.${hostRid}.Microsoft.DotNet.ILCompiler"; - packages = - if !base.hasILCompiler && overlay.hasILCompiler then - lib.filter (x: x.pname != packageName) base.packages - ++ lib.filter (x: x.pname == packageName) overlay.packages - else - base.packages; - in - { - inherit hasILCompiler packages; + let + withBaseRuntimes = + if fallback.version == base.version then + base.unwrapped + else + (pkgs.combinePackages [ + base.runtime + base.aspnetcore + fallback + ]).unwrapped.overrideAttrs + (old: { + name = fallback.unwrapped.name; + # resolve symlinks so DOTNET_ROOT is self-contained + postBuild = '' + mv "$out"/share/dotnet{,~} + cp -Lr "$out"/share/dotnet{~,} + rm -r "$out"/share/dotnet~ + '' + + old.postBuild; + passthru = old.passthru // { inherit (base) - targetPackages runtime aspnetcore ; - inherit (overlay.unwrapped) + inherit (fallback.unwrapped) pname version ; - } - ); - }) - ); + }; + }); + + withFallbackPackages = withBaseRuntimes.overrideAttrs (old: { + passthru = + old.passthru + // ( + let + hostRid = pkgs.systemToDotnetRid base.stdenv.hostPlatform.system; + hasILCompiler = base.hasILCompiler || fallback.hasILCompiler; + packageName = "runtime.${hostRid}.Microsoft.DotNet.ILCompiler"; + mergePackages = + a: b: + let + names = lib.genAttrs' a (p: lib.nameValuePair p.pname null); + in + a ++ lib.filter (p: !lib.hasAttr p.pname names) b; + packages = mergePackages base.packages fallback.packages; + targetPackages = lib.mapAttrs ( + name: value: mergePackages value fallback.targetPackages.${name} + ) base.targetPackages; + in + { + inherit hasILCompiler packages targetPackages; + } + ); + }); + in + pkgs.callPackage ./wrapper.nix { } "sdk" withFallbackPackages; in pkgs // rec { # use binary SDK here to avoid downgrading feature band - sdk_8_0_1xx = if !pkgs.dotnet_8.vmr.meta.broken then pkgs.dotnet_8.sdk else pkgs.sdk_8_0_1xx-bin; - sdk_9_0_1xx = if !pkgs.dotnet_9.vmr.meta.broken then pkgs.dotnet_9.sdk else pkgs.sdk_9_0_1xx-bin; - sdk_10_0_1xx = - if !pkgs.dotnet_10.vmr.meta.broken then pkgs.dotnet_10.sdk else pkgs.sdk_10_0_1xx-bin; + sdk_8_0_1xx = combineSdk pkgs.dotnet_8.sdk pkgs.sdk_8_0_1xx-bin; + sdk_9_0_1xx = combineSdk pkgs.dotnet_9.sdk pkgs.sdk_9_0_1xx-bin; + sdk_10_0_1xx = combineSdk pkgs.dotnet_10.sdk pkgs.sdk_10_0_1xx-bin; # source-built SDK only exists for _1xx feature band # https://github.com/dotnet/source-build/issues/3667 sdk_8_0_4xx = combineSdk sdk_8_0_1xx pkgs.sdk_8_0_4xx-bin; @@ -172,9 +178,10 @@ pkgs sdk_8_0 = sdk_8_0_4xx; sdk_9_0 = sdk_9_0_3xx; sdk_10_0 = sdk_10_0_1xx; - sdk_8_0-source = sdk_8_0_1xx; - sdk_9_0-source = sdk_9_0_1xx; - sdk_10_0-source = sdk_10_0_1xx; + sdk_8_0-source = if !pkgs.dotnet_8.vmr.meta.broken then pkgs.dotnet_8.sdk else pkgs.sdk_8_0_1xx-bin; + sdk_9_0-source = if !pkgs.dotnet_9.vmr.meta.broken then pkgs.dotnet_9.sdk else pkgs.sdk_9_0_1xx-bin; + sdk_10_0-source = + if !pkgs.dotnet_10.vmr.meta.broken then pkgs.dotnet_10.sdk else pkgs.sdk_10_0_1xx-bin; runtime_8_0 = sdk_8_0.runtime; runtime_9_0 = sdk_9_0.runtime; runtime_10_0 = sdk_10_0.runtime; diff --git a/pkgs/development/compilers/dotnet/packages.nix b/pkgs/development/compilers/dotnet/packages.nix index ea526b2212a5..6be556fe204c 100644 --- a/pkgs/development/compilers/dotnet/packages.nix +++ b/pkgs/development/compilers/dotnet/packages.nix @@ -94,8 +94,10 @@ let (mkPackage "Microsoft.DotNet.ILCompiler" runtime.version) (mkPackage "Microsoft.NET.ILLink.Tasks" runtime.version) (mkPackage "Microsoft.NETCore.App.Crossgen2.${hostRid}" runtime.version) - (mkPackage "runtime.${hostRid}.Microsoft.DotNet.ILCompiler" runtime.version) ] + ++ lib.optional vmr.hasILCompiler ( + mkPackage "runtime.${hostRid}.Microsoft.DotNet.ILCompiler" runtime.version + ) ++ lib.optionals (lib.versionOlder runtime.version "9") [ (mkPackage "Microsoft.NETCore.DotNetHost" runtime.version) (mkPackage "Microsoft.NETCore.DotNetHostPolicy" runtime.version) @@ -114,6 +116,9 @@ let (mkPackage "runtime.${targetRid}.Microsoft.NETCore.DotNetHost" runtime.version) (mkPackage "runtime.${targetRid}.Microsoft.NETCore.DotNetHostPolicy" runtime.version) (mkPackage "runtime.${targetRid}.Microsoft.NETCore.DotNetHostResolver" runtime.version) + ] + ++ lib.optionals (lib.versionAtLeast runtime.version "10") [ + (mkPackage "Microsoft.NETCore.App.Runtime.NativeAOT.${targetRid}" runtime.version) ]; }; diff --git a/pkgs/development/compilers/dotnet/update.sh b/pkgs/development/compilers/dotnet/update.sh index 132ea56874bc..2be0a8843ba9 100755 --- a/pkgs/development/compilers/dotnet/update.sh +++ b/pkgs/development/compilers/dotnet/update.sh @@ -128,6 +128,12 @@ aspnetcore_packages () { Microsoft.AspNetCore.App.Ref ) + if versionAtLeast "$version" 10; then + pkgs+=( + Microsoft.AspNetCore.App.Internal.Assets + ) + fi + generate_package_list "$version" ' ' "${pkgs[@]}" } diff --git a/pkgs/development/compilers/dotnet/versions/10.0.nix b/pkgs/development/compilers/dotnet/versions/10.0.nix index b5afc79b4c03..ab60243c61b8 100644 --- a/pkgs/development/compilers/dotnet/versions/10.0.nix +++ b/pkgs/development/compilers/dotnet/versions/10.0.nix @@ -14,6 +14,11 @@ let version = "10.0.2"; hash = "sha512-MeDkxsB9ir694B2z0nIG7ZZ6DISLmbU7aOwCusO6AadYjitxjv+e9TuY1Y0ijwuYNjxukBIj45nF/fCEg6CGHw=="; }) + (fetchNupkg { + pname = "Microsoft.AspNetCore.App.Internal.Assets"; + version = "10.0.2"; + hash = "sha512-v9Au9ZSo3ZOe77StttCPCtOZkY7xSFXSyyWMR9Y0Kx3ZKegVp4zg7TJwz4osTgQp7EKyXlbDpvjUbgly51XbmA=="; + }) (fetchNupkg { pname = "Microsoft.NETCore.DotNetAppHost"; version = "10.0.2"; diff --git a/pkgs/development/compilers/dotnet/wrapper.nix b/pkgs/development/compilers/dotnet/wrapper.nix index e4cf6e158f71..1e66c4dbd0de 100644 --- a/pkgs/development/compilers/dotnet/wrapper.nix +++ b/pkgs/development/compilers/dotnet/wrapper.nix @@ -33,6 +33,7 @@ stdenvNoCC.mkDerivation (finalAttrs: { license maintainers platforms + broken ; }; diff --git a/pkgs/development/python-modules/ai-edge-litert/default.nix b/pkgs/development/python-modules/ai-edge-litert/default.nix new file mode 100644 index 000000000000..7a9e3c35bf3f --- /dev/null +++ b/pkgs/development/python-modules/ai-edge-litert/default.nix @@ -0,0 +1,87 @@ +{ + autoPatchelfHook, + buildPythonPackage, + fetchurl, + lib, + python, + pythonAtLeast, + stdenv, + + # dependencies + backports-strenum, + flatbuffers, + numpy, + protobuf, + tqdm, + typing-extensions, + + # optional-dependencies + lark, + ml-dtypes, +}: + +let + release = builtins.fromJSON (builtins.readFile ./release.json); + platforms = release.src; + platform = + platforms.${stdenv.hostPlatform.system} + or (throw "ai-edge-litert: unsupported platform (${stdenv.hostPlatform.system})"); + pythonMajorMinor = lib.versions.majorMinor python.version; + source = + platform.${pythonMajorMinor} + or (throw "ai-edge-litert: unsupported python version (${pythonMajorMinor})"); +in + +buildPythonPackage { + pname = "ai-edge-litert"; + version = release.version; + format = "wheel"; + + src = fetchurl { + inherit (source) + url + hash + ; + }; + + nativeBuildInputs = [ autoPatchelfHook ]; + + dependencies = [ + backports-strenum + flatbuffers + numpy + protobuf + tqdm + typing-extensions + ]; + + optional-dependencies = { + model-utils = [ + lark + ml-dtypes + # TODO :xdsl + ]; + # TODO: npu-sdk + }; + + pythonRemoveDeps = lib.optionals (pythonAtLeast "3.12") [ + # https://github.com/google-ai-edge/LiteRT/pull/5298 + "backports.strenum" + ]; + + pythonImportsCheck = [ + "ai_edge_litert" + "ai_edge_litert.interpreter" + ]; + + passthru.updateScript = ./update.py; + + meta = { + description = "LiteRT is for mobile and embedded devices"; + downloadPage = "https://github.com/google-ai-edge/LiteRT"; + homepage = "https://www.tensorflow.org/lite/"; + license = lib.licenses.asl20; + platforms = lib.attrNames platforms; + maintainers = with lib.maintainers; [ hexa ]; + }; +} diff --git a/pkgs/development/python-modules/ai-edge-litert/release.json b/pkgs/development/python-modules/ai-edge-litert/release.json new file mode 100644 index 000000000000..d21b94acfeb9 --- /dev/null +++ b/pkgs/development/python-modules/ai-edge-litert/release.json @@ -0,0 +1,49 @@ +{ + "version": "2.1.0", + "src": { + "aarch64-linux": { + "3.10": { + "url": "https://files.pythonhosted.org/packages/a5/7a/6ea77fe405d76dcd1a95fceccd1018293603f551bf3645a382ef1fd470eb/ai_edge_litert-2.1.0-cp310-cp310-manylinux_2_27_aarch64.whl", + "hash": "sha256-eAZzWROFxGRqqCs42qLu2IvCY0bhqvvp0Nt/BJPWq1Q=" + }, + "3.11": { + "url": "https://files.pythonhosted.org/packages/82/e7/73fff29c7a95a4f35953a027bdb174dd9ac08adbe8c2c322dee26d8f1d3f/ai_edge_litert-2.1.0-cp311-cp311-manylinux_2_27_aarch64.whl", + "hash": "sha256-krJNJQf8z1aAwm5xLBViZtz2Sokt85Id1C9KfSZSdGI=" + }, + "3.12": { + "url": "https://files.pythonhosted.org/packages/61/f6/1aeccf3034f95ec680a2e25f33582d4adf02c30b3462357511d529a2cad2/ai_edge_litert-2.1.0-cp312-cp312-manylinux_2_27_aarch64.whl", + "hash": "sha256-4Gt9sF08WCT9S1biMY9oWN73GHgM2QMYYmtKqY23WDw=" + }, + "3.13": { + "url": "https://files.pythonhosted.org/packages/9e/b2/dde0f8043eb26f237c5958e44334d62fa90496fa51438f9c5179dec72d4c/ai_edge_litert-2.1.0-cp313-cp313-manylinux_2_27_aarch64.whl", + "hash": "sha256-eoB6MjbIz1ZeIxtuwzG+zjo/WhfDwl+I8+N8/oZo+NA=" + }, + "3.9": { + "url": "https://files.pythonhosted.org/packages/30/8b/531b230a5377b2253eff8235f10e72489bc207f7e5ed6e531670495e4fd4/ai_edge_litert-2.1.0-cp39-cp39-manylinux_2_27_aarch64.whl", + "hash": "sha256-qe3jwpMVGnSt+hK6yLjOh+wB3Fhuw86hIqxxRlDIQb8=" + } + }, + "x86_64-linux": { + "3.10": { + "url": "https://files.pythonhosted.org/packages/20/4a/5f7848c8d21df432f44ebd36097406f66d98762295a4f11239f1d913f347/ai_edge_litert-2.1.0-cp310-cp310-manylinux_2_27_x86_64.whl", + "hash": "sha256-0FSis6ZeLCtFcahO0zul2ojp0Xhy/YdTwXc/+3g1HLE=" + }, + "3.11": { + "url": "https://files.pythonhosted.org/packages/0d/d1/032cd1300a9b40da97e9f93781b3c2c5f104c22157695a3bb5bd5531821f/ai_edge_litert-2.1.0-cp311-cp311-manylinux_2_27_x86_64.whl", + "hash": "sha256-3PfXk3SrRnzsGfLtrdO+skOtF4M/jFrVm/dnEr8USbE=" + }, + "3.12": { + "url": "https://files.pythonhosted.org/packages/bb/16/0aface4ec3554304487d6436938684023c054828b4334f114f7db303b27a/ai_edge_litert-2.1.0-cp312-cp312-manylinux_2_27_x86_64.whl", + "hash": "sha256-SNfm6BuqNYHmtIkgpzq4lzAcxIqluJq9012fBt9jLUo=" + }, + "3.13": { + "url": "https://files.pythonhosted.org/packages/96/c7/53b1f2627dbb0b307c1637e5f2cdbdc5a5f4ffecbebe75c8977d46590b6a/ai_edge_litert-2.1.0-cp313-cp313-manylinux_2_27_x86_64.whl", + "hash": "sha256-QeJJDL8dJmZj1FEllzEXC4Gqpwt9/vbXGIaX5lxxLJU=" + }, + "3.9": { + "url": "https://files.pythonhosted.org/packages/85/b7/efd39c318ae7f73bd3de247a93501f1d748e60979ecd97c794e7a4a1d671/ai_edge_litert-2.1.0-cp39-cp39-manylinux_2_27_x86_64.whl", + "hash": "sha256-QicA/OOs8HK8DVjXhj7BZjHwix2t3vyHwAjebkzaMWc=" + } + } + } +} \ No newline at end of file diff --git a/pkgs/development/python-modules/ai-edge-litert/update.py b/pkgs/development/python-modules/ai-edge-litert/update.py new file mode 100755 index 000000000000..e792c3a06443 --- /dev/null +++ b/pkgs/development/python-modules/ai-edge-litert/update.py @@ -0,0 +1,99 @@ +#!/usr/bin/env nix-shell +#!nix-shell -i python -p "python3.withPackages (ps: [ ps.httpx ] )" + +import json +import httpx +import re +import subprocess +from pathlib import Path +from typing import Dict +from collections import defaultdict + + +def get_metadata(package) -> Dict: + response = httpx.get( + f"https://pypi.org/pypi/{package}/json", + headers={"user-agent": "nixpkgs/pypi-updater/unstable"}, + ) + return response.json() + + +def get_hash(url) -> str: + result = subprocess.run(["nix-prefetch-url", url], stdout=subprocess.PIPE) + base32_hash = result.stdout.decode().strip() + result = subprocess.run( + ["nix", "hash", "to-sri", "--type", "sha256", base32_hash], + stdout=subprocess.PIPE, + ) + sri_hash = result.stdout.decode().strip() + return sri_hash + + +def get_platform(platform: str) -> str: + result = re.match(r"^(?Pmacosx|manylinux)[\d+_]+(?Px86_64|aarch64)", platform) + if not result: + raise RuntimeError(f"Unable to parse platform string: {platform}") + + target = { + "macosx": "darwin", + "manylinux": "linux", + }[result.group("target")] + + arch = result.group("arch") + + return f"{arch}-{target}" + +def get_python_version(python: str) -> str: + result = re.match(r"^cp(?P\d)(?P\d+)$", python) + if not result: + raise RuntimeError(f"Unable to disect python compat tag: {python}") + + return f"{result.group('major')}.{result.group('minor')}" + + +def main(package: str): + metadata = get_metadata(package) + + info = metadata.get("info") + if info is None: + raise RuntimeError("Package metadata has no info attribute") + + version = info.get("version") + assert not info.get("yanked"), ( + f"Latest release was yanked: {info.get('yanked_reason')}" + ) + releases = metadata["releases"][version] + + out = { + "version": version, + "src": defaultdict(dict), + } + for release in releases: + if release.get("packagetype") != "bdist_wheel": + # the package expects the binary wheels + continue + + print(json.dumps(release, indent=2)) + + filename = release.get("filename") + result = re.match( + rf"(?P\w+)-{re.escape(version)}-(?P\w+)-(?P\w+)-(?P\w+)\.whl$", + filename, + ) + if not result: + raise RuntimeError(f"Unable to disect wheel filename: {filename}") + + platform = get_platform(result.group("platform")) + python_version = get_python_version(release["python_version"]) + + out["src"][platform][python_version] = { + "url": release.get("url"), + "hash": get_hash(release.get("url")), + } + + with open(Path(__file__).with_name("release.json"), "w") as fd: + json.dump(out, fd, indent=2) + + +if __name__ == "__main__": + main("ai-edge-litert") diff --git a/pkgs/development/python-modules/openai/default.nix b/pkgs/development/python-modules/openai/default.nix index 85a14ba9ac0f..645dcca9dd8a 100644 --- a/pkgs/development/python-modules/openai/default.nix +++ b/pkgs/development/python-modules/openai/default.nix @@ -51,14 +51,14 @@ buildPythonPackage rec { pname = "openai"; - version = "2.11.0"; + version = "2.15.0"; pyproject = true; src = fetchFromGitHub { owner = "openai"; repo = "openai-python"; tag = "v${version}"; - hash = "sha256-f4d6gz4W04NPu43u0ovORzvF8ZW7oIYO8DJIqUGIEdE="; + hash = "sha256-FmOmWtkp+Pe3pICi0uvzsb1nsP4M4yc/34U3Bd2q/KE="; }; postPatch = ''substituteInPlace pyproject.toml --replace-fail "hatchling==1.26.3" "hatchling"''; diff --git a/pkgs/development/python-modules/wassima/default.nix b/pkgs/development/python-modules/wassima/default.nix index a4ca9ab252c2..e5db5328abd6 100644 --- a/pkgs/development/python-modules/wassima/default.nix +++ b/pkgs/development/python-modules/wassima/default.nix @@ -8,14 +8,14 @@ buildPythonPackage rec { pname = "wassima"; - version = "2.0.3"; + version = "2.0.4"; pyproject = true; src = fetchFromGitHub { owner = "jawah"; repo = "wassima"; tag = version; - hash = "sha256-tkA6U0SqzivR4tHPu7BKawlqoYfkBFgt5ZcV9kOMKzI="; + hash = "sha256-6tNmJwnOtl+luN1qgu93LXEfBZ0oieEpLa9Q9N6Gsag="; }; build-system = [ hatchling ]; diff --git a/pkgs/tools/inputmethods/fcitx5/fcitx5-chinese-addons.nix b/pkgs/tools/inputmethods/fcitx5/fcitx5-chinese-addons.nix index 774771e95100..07be73d31bfc 100644 --- a/pkgs/tools/inputmethods/fcitx5/fcitx5-chinese-addons.nix +++ b/pkgs/tools/inputmethods/fcitx5/fcitx5-chinese-addons.nix @@ -2,6 +2,7 @@ lib, stdenv, fetchurl, + fetchpatch, fetchFromGitHub, cmake, extra-cmake-modules, @@ -50,6 +51,15 @@ stdenv.mkDerivation rec { fcitx5-lua ]; + patches = [ + # Without this patch, setting ENABLE_CLOUDPINYIN to off would fail to build + (fetchpatch { + name = "cloudpinyin-disable-build"; + url = "https://github.com/fcitx/fcitx5-chinese-addons/commit/024fff9c8587ca2fb01905e9a25df838e7d99da2.patch"; + hash = "sha256-Mo5l8tsn1JQxTFHxOZfQRmbCeWZHLyxfn2Qwv/gQXGA="; + }) + ]; + prePatch = '' ln -s ${pyStroke} modules/pinyinhelper/$(stripHash ${pyStroke}) ln -s ${pyTable} modules/pinyinhelper/$(stripHash ${pyTable}) diff --git a/pkgs/tools/package-management/nix/default.nix b/pkgs/tools/package-management/nix/default.nix index f9e53596053c..6a7315cd589d 100644 --- a/pkgs/tools/package-management/nix/default.nix +++ b/pkgs/tools/package-management/nix/default.nix @@ -197,6 +197,20 @@ lib.makeExtensible ( nix_2_32 = addTests "nix_2_32" self.nixComponents_2_32.nix-everything; + nixComponents_2_33 = nixDependencies.callPackage ./modular/packages.nix rec { + version = "2.33.1"; + inherit (self.nix_2_32.meta) teams; + otherSplices = generateSplicesForNixComponents "nixComponents_2_33"; + src = fetchFromGitHub { + owner = "NixOS"; + repo = "nix"; + tag = version; + hash = "sha256-TVKn52SoKq8mMyW/x3NPPskGVurFdnGGV0DGvnL0gak="; + }; + }; + + nix_2_33 = addTests "nix_2_33" self.nixComponents_2_33.nix-everything; + nixComponents_git = nixDependencies.callPackage ./modular/packages.nix rec { version = "2.34pre20251217_${lib.substring 0 8 src.rev}"; inherit teams; @@ -211,7 +225,7 @@ lib.makeExtensible ( git = addTests "git" self.nixComponents_git.nix-everything; - latest = self.nix_2_32; + latest = self.nix_2_33; # Read ./README.md before bumping a major release stable = addFallbackPathsCheck self.nix_2_31; diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index dd9ba3ff6253..8aefaf41f759 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -808,6 +808,7 @@ mapAliases { jami-client = throw "'jami-client' has been renamed to/replaced by 'jami'"; # Converted to throw 2025-10-27 jami-client-qt = throw "'jami-client-qt' has been renamed to/replaced by 'jami-client'"; # Converted to throw 2025-10-27 jami-daemon = throw "'jami-daemon' has been renamed to/replaced by 'jami.daemon'"; # Converted to throw 2025-10-27 + jarowinkler-cpp = throw "'jarowinkler-cpp' has been removed because it was deprecated and archived upstream. Consider using 'rapidfuzz-cpp' instead"; # Added 2026-01-15 jdk23 = throw "OpenJDK 23 was removed as it has reached its end of life"; # Added 2025-11-04 jdk23_headless = throw "OpenJDK 23 was removed as it has reached its end of life"; # Added 2025-11-04 jdk24 = throw "OpenJDK 24 was removed as it has reached its end of life"; # Added 2025-10-04 @@ -895,6 +896,7 @@ mapAliases { libkkc = throw "'libkkc' has been removed due to lack of maintenance. Consider using anthy instead"; # Added 2025-08-28 libkkc-data = throw "'libkkc-data' has been removed as it depended on libkkc which was removed"; # Added 2025-08-28 liblinphone = throw "'liblinphone' has been moved to 'linphonePackages.liblinphone'"; # Added 2025-09-20 + libmesode = throw "'libmesode' has been removed because it was deprecated and archived upstream. Consider using 'libstrophe' instead"; # Added 2026-01-15 libmp3splt = throw "'libmp3splt' has been removed due to lack of maintenance upstream."; # Added 2025-05-17 libmusicbrainz3 = throw "libmusicbrainz3 has been removed as it was obsolete and unused"; # Added 2025-09-16 libmusicbrainz5 = libmusicbrainz; # Added 2025-09-16 @@ -1238,6 +1240,7 @@ mapAliases { nixosTest = throw "'nixosTest' has been renamed to/replaced by 'testers.nixosTest'"; # Converted to throw 2025-10-27 nixStable = throw "'nixStable' has been renamed to/replaced by 'nixVersions.stable'"; # Converted to throw 2025-10-27 nm-tray = throw "'nm-tray' has been removed, as it only works with Plasma 5"; # Added 2025-08-30 + nofi = throw "'nofi' has been removed due to being archived upstream."; # Added 2026-01-16 nomacs-qt6 = nomacs; # Added 2025-08-30 norouter = throw "norouter has been removed because it has been marked as broken since at least November 2024."; # Added 2025-09-29 notary = throw "'notary' has been removed due to being archived upstream. Consider using 'notation' instead."; # Added 2025-11-13 diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 759ae0c51e3e..1ed705affa04 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -156,6 +156,8 @@ self: super: with self; { ahocorasick-rs = callPackage ../development/python-modules/ahocorasick-rs { }; + ai-edge-litert = callPackage ../development/python-modules/ai-edge-litert { }; + aigpy = callPackage ../development/python-modules/aigpy { }; ailment = callPackage ../development/python-modules/ailment { }; @@ -1715,7 +1717,7 @@ self: super: with self; { backoff = callPackage ../development/python-modules/backoff { }; backports-asyncio-runner = - if pythonAtLeast "3.11" then + if pythonAtLeast "3.12" then null else callPackage ../development/python-modules/backports-asyncio-runner { }; @@ -1730,7 +1732,11 @@ self: super: with self; { backports-shutil-which = callPackage ../development/python-modules/backports-shutil-which { }; - backports-strenum = callPackage ../development/python-modules/backports-strenum { }; + backports-strenum = + if pythonAtLeast "3.11" then + null + else + callPackage ../development/python-modules/backports-strenum { }; backports-tarfile = callPackage ../development/python-modules/backports-tarfile { };