diff --git a/nixos/tests/k3s/default.nix b/nixos/tests/k3s/default.nix index 5240f029139f..8d4203c1fb79 100644 --- a/nixos/tests/k3s/default.nix +++ b/nixos/tests/k3s/default.nix @@ -8,7 +8,7 @@ let n: _: lib.strings.hasPrefix "k3s_" n && (builtins.tryEval pkgs.${n}).success ) pkgs; in -lib.recurseIntoAttrs { +{ airgap-images = lib.mapAttrs ( _: k3s: import ./airgap-images.nix { inherit system pkgs k3s; } ) allK3s; diff --git a/nixos/tests/stalwart-mail.nix b/nixos/tests/stalwart-mail.nix index cfc0d3bb1c5b..f5503c0cec19 100644 --- a/nixos/tests/stalwart-mail.nix +++ b/nixos/tests/stalwart-mail.nix @@ -48,9 +48,20 @@ in session.auth.directory = "'in-memory'"; storage.directory = "in-memory"; + storage.data = "rocksdb"; + storage.fts = "rocksdb"; + storage.blob = "rocksdb"; + storage.lookup = "rocksdb"; + session.rcpt.directory = "'in-memory'"; queue.outbound.next-hop = "'local'"; + store."rocksdb" = { + type = "rocksdb"; + path = "/var/lib/stalwart-mail/data"; + compression = "lz4"; + }; + directory."in-memory" = { type = "memory"; principals = [ @@ -116,6 +127,12 @@ in main.wait_for_open_port(143) main.succeed("test-smtp-submission") + + # restart stalwart to test rocksdb compaction of existing database + main.succeed("systemctl restart stalwart-mail.service") + main.wait_for_open_port(587) + main.wait_for_open_port(143) + main.succeed("test-imap-read") ''; diff --git a/pkgs/applications/editors/vscode/extensions/default.nix b/pkgs/applications/editors/vscode/extensions/default.nix index 9d8ad86b2c16..655a7ec80105 100644 --- a/pkgs/applications/editors/vscode/extensions/default.nix +++ b/pkgs/applications/editors/vscode/extensions/default.nix @@ -260,8 +260,8 @@ let mktplcRef = { name = "ng-template"; publisher = "Angular"; - version = "20.0.0"; - hash = "sha256-87SImzcGbwvf9xtdbD3etqaWe6fMVeCKc+f8qTyFnUA="; + version = "20.0.1"; + hash = "sha256-N+2uNX1gXGHAvkx2aff9DfB7vji8bXNLt86yaSYt0o0="; }; meta = { changelog = "https://marketplace.visualstudio.com/items/Angular.ng-template/changelog"; @@ -1587,8 +1587,8 @@ let # semver scheme, contrary to preview versions which are listed on # the VSCode Marketplace and use a calver scheme. We should avoid # using preview versions, because they expire after two weeks. - version = "17.1.0"; - hash = "sha256-WPSMf1yLXSDqImpMTxn1eXcSrimVSVjjaXDzFMQ/l0E="; + version = "17.1.1"; + hash = "sha256-hlhq4bR3v0AqI3lxilgNEgjjEEBVL0xfvIWbV/Ronh4="; }; meta = { changelog = "https://marketplace.visualstudio.com/items/eamodio.gitlens/changelog"; diff --git a/pkgs/applications/networking/cluster/terraform-providers/providers.json b/pkgs/applications/networking/cluster/terraform-providers/providers.json index 425aa25cb713..60182c6a0aa6 100644 --- a/pkgs/applications/networking/cluster/terraform-providers/providers.json +++ b/pkgs/applications/networking/cluster/terraform-providers/providers.json @@ -1,4 +1,13 @@ { + "_assert": { + "hash": "sha256-ngHxzV7lRg6pOtyNTdCv3ToRK/vO016Vp2mlh7QT8Rc=", + "homepage": "https://registry.terraform.io/providers/hashicorp/assert", + "owner": "hashicorp", + "repo": "terraform-provider-assert", + "rev": "v0.16.0", + "spdx": "MPL-2.0", + "vendorHash": "sha256-nHaBNYCKfTvaDnz2SeexM2cyNVK5ThPYn4rnGEw7Wi0=" + }, "aci": { "hash": "sha256-NS5q6ElCGEGSceOCIVudKE6m6EzXMV/3HGHHXwYopOA=", "homepage": "https://registry.terraform.io/providers/CiscoDevNet/aci", diff --git a/pkgs/applications/networking/instant-messengers/discord/linux.nix b/pkgs/applications/networking/instant-messengers/discord/linux.nix index bf94609409a8..be1542797e95 100644 --- a/pkgs/applications/networking/instant-messengers/discord/linux.nix +++ b/pkgs/applications/networking/instant-messengers/discord/linux.nix @@ -66,6 +66,10 @@ moonlight, withTTS ? true, enableAutoscroll ? false, + # Disabling this would normally break Discord. + # The intended use-case for this is when SKIP_HOST_UPDATE is enabled via other means, + # for example if a settings.json is linked declaratively (e.g., with home-manager). + disableUpdates ? true, }: assert lib.assertMsg ( !(withMoonlight && withVencord) @@ -180,7 +184,7 @@ stdenv.mkDerivation rec { ${lib.strings.optionalString enableAutoscroll "--add-flags \"--enable-blink-features=MiddleClickAutoscroll\""} \ --prefix XDG_DATA_DIRS : "${gtk3}/share/gsettings-schemas/${gtk3.name}/" \ --prefix LD_LIBRARY_PATH : ${libPath}:$out/opt/${binaryName} \ - --run "${lib.getExe disableBreakingUpdates}" + ${lib.strings.optionalString disableUpdates "--run ${lib.getExe disableBreakingUpdates}"} ln -s $out/opt/${binaryName}/${binaryName} $out/bin/ # Without || true the install would fail on case-insensitive filesystems diff --git a/pkgs/by-name/de/deno/package.nix b/pkgs/by-name/de/deno/package.nix index 4bd1e5794f7d..3b0ac1600533 100644 --- a/pkgs/by-name/de/deno/package.nix +++ b/pkgs/by-name/de/deno/package.nix @@ -21,17 +21,17 @@ let in rustPlatform.buildRustPackage (finalAttrs: { pname = "deno"; - version = "2.3.3"; + version = "2.3.5"; src = fetchFromGitHub { owner = "denoland"; repo = "deno"; tag = "v${finalAttrs.version}"; - hash = "sha256-KfgxKmxkF5/BrAsXkpmyWXV2H+vwX31dnzQORtt3A90="; + hash = "sha256-ASP+1EuGLU9BBY7iBer92AbnVEeQc4nwtOEyULlvc2w="; }; useFetchCargoVendor = true; - cargoHash = "sha256-DWODuTslGvx9PHUMsxY+MS15IcECcq7Ne7IUEovWoa0="; + cargoHash = "sha256-XJy7+cARYEX8tAPXLHJnEwXyZIwPaqhM7ZUzoem1Wo0="; postPatch = '' # Use patched nixpkgs libffi in order to fix https://github.com/libffi/libffi/pull/857 diff --git a/pkgs/by-name/ha/hamrs-pro/package.nix b/pkgs/by-name/ha/hamrs-pro/package.nix index ccdff2aefdb8..009cc7cc193e 100644 --- a/pkgs/by-name/ha/hamrs-pro/package.nix +++ b/pkgs/by-name/ha/hamrs-pro/package.nix @@ -8,29 +8,29 @@ let pname = "hamrs-pro"; - version = "2.37.1"; + version = "2.38.0"; throwSystem = throw "Unsupported system: ${stdenvNoCC.hostPlatform.system}"; srcs = { x86_64-linux = fetchurl { url = "https://hamrs-dist.s3.amazonaws.com/hamrs-pro-${version}-linux-x86_64.AppImage"; - hash = "sha256-kLYgqRH+RpyitUSZVoZFfqVsrJjTXeZp80ILHGQmGTk="; + hash = "sha256-G9zap1AaPZepIajZHbUDMODJ7l+7JSD8oJq7EecmE+M="; }; aarch64-linux = fetchurl { url = "https://hamrs-dist.s3.amazonaws.com/hamrs-pro-${version}-linux-arm64.AppImage"; - hash = "sha256-BKS7xPzVoIUToqEbtI+8t4Gf7HvZSWhzfXmToghFPEk="; + hash = "sha256-eVt2ciWFTKJdV0YoQyU98DD90aMUoOWTqzbZ/s0G+0E="; }; x86_64-darwin = fetchurl { url = "https://hamrs-dist.s3.amazonaws.com/hamrs-pro-${version}-mac-x64.dmg"; - hash = "sha256-gejyYoW7VcR0ILD/PSwFGC2tzLiiR2vjEsErBxbvJ3o="; + hash = "sha256-ggWnB5QcJM9bsOyyVe9dSvOU63hr8heWQTE6ncPgriU="; }; aarch64-darwin = fetchurl { url = "https://hamrs-dist.s3.amazonaws.com/hamrs-pro-${version}-mac-arm64.dmg"; - hash = "sha256-Hi/t5ShfhUFw0aEzb2XIhOIppXg04qnq8tl3LKNH3qQ="; + hash = "sha256-s8Ly1UYBy0EzUCKUCJxx1PcxVQe2gkeuXDudqnSuYjE="; }; }; diff --git a/pkgs/by-name/io/iosevka/package.nix b/pkgs/by-name/io/iosevka/package.nix index 78f4152180ca..612124426426 100644 --- a/pkgs/by-name/io/iosevka/package.nix +++ b/pkgs/by-name/io/iosevka/package.nix @@ -56,16 +56,16 @@ assert (extraParameters != null) -> set != null; buildNpmPackage rec { pname = "Iosevka${toString set}"; - version = "33.2.3"; + version = "33.2.4"; src = fetchFromGitHub { owner = "be5invis"; repo = "iosevka"; rev = "v${version}"; - hash = "sha256-dCHJYGZYTvjDtM2V+NdwXNxHg4kkcVAQD0G3DPtu5ps="; + hash = "sha256-1QxM9PWZirAKIdd/kzHLDStXbkxTGr0q8GQSER2NEXc="; }; - npmDepsHash = "sha256-eqWf5d9uCMkvDNPlICUt7QVT+2WsU0u+TE14ZraWXXE="; + npmDepsHash = "sha256-1XRbwd1x7ofQGnEth7U8QAHX92QDHMm4OmQAQgZZLTw="; nativeBuildInputs = [ diff --git a/pkgs/by-name/k9/k9s/package.nix b/pkgs/by-name/k9/k9s/package.nix index 1cb90107f913..65fe7bbd0b97 100644 --- a/pkgs/by-name/k9/k9s/package.nix +++ b/pkgs/by-name/k9/k9s/package.nix @@ -12,13 +12,13 @@ buildGoModule rec { pname = "k9s"; - version = "0.50.5"; + version = "0.50.6"; src = fetchFromGitHub { owner = "derailed"; repo = "k9s"; rev = "v${version}"; - hash = "sha256-hh00R0PCqhAUlwFps40CQ+hc6p2634WEGqNjX1mi/J8="; + hash = "sha256-cL7OD9OtkVx325KcANU8FudcOk6HMct6ve2p0qSkEoc="; }; ldflags = [ @@ -33,7 +33,7 @@ buildGoModule rec { proxyVendor = true; - vendorHash = "sha256-g2tS1EpmG+Wba3kF9cH83JAG6EhKK4LrASGUSFtYYY8="; + vendorHash = "sha256-dATWFH5XKicdP8sftGGm2zopTef189MJWd9AM/Gxsjw="; # TODO investigate why some config tests are failing doCheck = !(stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64); @@ -75,6 +75,7 @@ buildGoModule rec { markus1189 bryanasdev000 qjoly + devusb ]; }; } diff --git a/pkgs/by-name/mi/midisheetmusic/package.nix b/pkgs/by-name/mi/midisheetmusic/package.nix index 211e012b7e8a..b5cce6f2adaf 100644 --- a/pkgs/by-name/mi/midisheetmusic/package.nix +++ b/pkgs/by-name/mi/midisheetmusic/package.nix @@ -3,14 +3,33 @@ stdenv, fetchurl, mono, - dotnetPackages, + mkNugetDeps, makeWrapper, + makeFontsConf, gtk2, cups, timidity, }: let + deps = mkNugetDeps { + name = "midisheetmusic-deps"; + nugetDeps = + { fetchNuGet }: + [ + (fetchNuGet { + pname = "NUnit.Console"; + version = "3.0.1"; + hash = "sha256-FkzpEk12msmUp5I05ZzlGiG+UInoYhBmar/vB5Gt4H8="; + }) + (fetchNuGet { + pname = "NUnit"; + version = "2.6.4"; + hash = "sha256-Kkft3QO9T5WwsvyPRNGT2nut7RS7OWArDjIYxvwA8qU="; + }) + ]; + }; + version = "2.6"; in stdenv.mkDerivation { @@ -22,7 +41,6 @@ stdenv.mkDerivation { sha256 = "05c6zskj50g29f51lx8fvgzsi3f31z01zj6ssjjrgr7jfs7ak70p"; }; - nativeCheckInputs = (with dotnetPackages; [ NUnitConsole ]); nativeBuildInputs = [ mono makeWrapper @@ -31,25 +49,32 @@ stdenv.mkDerivation { buildPhase = '' for i in Classes/MidiPlayer.cs Classes/MidiSheetMusic.cs do - substituteInPlace $i --replace "/usr/bin/timidity" "${timidity}/bin/timidity" + substituteInPlace $i --replace-fail "/usr/bin/timidity" "${timidity}/bin/timidity" done ./build.sh ''; - # include missing file with unit tests for building - # switch from mono nunit dll to standalone dll otherwise mono compiler barks - # run via nunit3 console, because mono nunit console wants access $HOME + doCheck = true; + checkPhase = '' + # Resolves the warning "Fontconfig error: No writable cache directories" + export XDG_CACHE_HOME="$(mktemp -d)" + + # Adds one file with tests that's missing from compiliation + # Makes sure NUnit framework from NuGet can be found substituteInPlace UnitTestDLL.csproj \ - --replace "" '' \ - --replace nunit.framework.dll "${dotnetPackages.NUnit}/lib/dotnet/NUnit/nunit.framework.dll" + --replace-fail '' '' \ + --replace-fail 'nunit.framework.dll' '${deps}/share/nuget/packages/nunit/2.6.4/lib/nunit.framework.dll' ./build_unit_test.sh - nunit3-console bin/Debug/UnitTest.dll + + # 2 tests are still failing, we exclude them for now + mono ${deps}/share/nuget/packages/nunit.console/3.0.1/tools/nunit3-console.exe bin/Debug/UnitTest.dll \ + --where "test != 'MidiFileTest.TestChangeSoundTrack' && test != 'MidiFileTest.TestChangeSoundPerChannelTracks'" ''; - # 2 tests of 47 are still failing - doCheck = false; + # This fixes tests that fail because of missing fonts + FONTCONFIG_FILE = makeFontsConf { fontDirectories = [ ]; }; installPhase = '' mkdir -p $out/share/applications $out/share/pixmaps $out/bin @@ -69,12 +94,12 @@ stdenv.mkDerivation { --add-flags $out/bin/.MidiSheetMusic.exe ''; - meta = with lib; { + meta = { description = "Convert MIDI Files to Piano Sheet Music for two hands"; mainProgram = "midisheetmusic.mono.exe"; homepage = "http://midisheetmusic.com"; - license = licenses.gpl2; - maintainers = [ ]; - platforms = platforms.linux; + license = lib.licenses.gpl2; + maintainers = [ lib.maintainers.mdarocha ]; + platforms = lib.platforms.linux; }; } diff --git a/pkgs/by-name/ne/netbird/package.nix b/pkgs/by-name/ne/netbird/package.nix index 7585d07c79fa..8adbee3c88e9 100644 --- a/pkgs/by-name/ne/netbird/package.nix +++ b/pkgs/by-name/ne/netbird/package.nix @@ -31,13 +31,13 @@ let in buildGoModule (finalAttrs: { pname = "netbird"; - version = "0.45.1"; + version = "0.45.2"; src = fetchFromGitHub { owner = "netbirdio"; repo = "netbird"; tag = "v${finalAttrs.version}"; - hash = "sha256-55Vyhzt0WtJRq9CcH7mXw7cklAce/lvC1S+MBMDnMbo="; + hash = "sha256-lvulqneKFxmZ/EQDmQbx1SzsfZxLb8tGyLFJo8z9U0w="; }; vendorHash = "sha256-EVhtxYDinmid5C/3N8UGmCzWw1qIE3m0rXes4uFpcOM="; diff --git a/pkgs/by-name/ne/netron/package.nix b/pkgs/by-name/ne/netron/package.nix index 6d37b7073c9c..5269f9261f52 100644 --- a/pkgs/by-name/ne/netron/package.nix +++ b/pkgs/by-name/ne/netron/package.nix @@ -16,16 +16,16 @@ let in buildNpmPackage (finalAttrs: { pname = "netron"; - version = "8.3.4"; + version = "8.3.5"; src = fetchFromGitHub { owner = "lutzroeder"; repo = "netron"; tag = "v${finalAttrs.version}"; - hash = "sha256-P7lv0pnhrdU9zFwCzQYwYilq6qJ1UUaYgVDMiRZP5M8="; + hash = "sha256-YxvUUn8VWv5M6FvIHJCaXQl7PRGcZ8qSgrZ7K0+8iME="; }; - npmDepsHash = "sha256-gPRxgf4XTxIZIKTZbr07zzEJW1n0Waas+zms6Ap6RAY="; + npmDepsHash = "sha256-fsF40qUKUNXeqvdM1m/IEgnxRZrnGW/aOYS3oZKQNpk="; nativeBuildInputs = [ jq ]; diff --git a/pkgs/by-name/ny/nyan/package.nix b/pkgs/by-name/ny/nyan/package.nix index be3b8891c96a..6745f55cfaf2 100644 --- a/pkgs/by-name/ny/nyan/package.nix +++ b/pkgs/by-name/ny/nyan/package.nix @@ -20,9 +20,12 @@ stdenv.mkDerivation (finalAttrs: { hash = "sha256-BtvMZaQutcPqTSCN5gxYUU3CQTyCns1ldkcnjwJOFa8="; }; + strictDeps = true; + nativeBuildInputs = [ clang cmake + flex ]; buildInputs = [ diff --git a/pkgs/by-name/op/opshin/package.nix b/pkgs/by-name/op/opshin/package.nix index 73f663a60815..b5c8c8fcce65 100644 --- a/pkgs/by-name/op/opshin/package.nix +++ b/pkgs/by-name/op/opshin/package.nix @@ -4,9 +4,20 @@ python3, }: -python3.pkgs.buildPythonApplication rec { +let + python3' = python3.override { + self = python3; + packageOverrides = ( + final: prev: { + cbor2 = prev.cbor2WithoutCExtensions; + } + ); + }; +in + +python3'.pkgs.buildPythonApplication rec { pname = "opshin"; - version = "0.24.1"; + version = "0.24.2"; format = "pyproject"; @@ -14,10 +25,10 @@ python3.pkgs.buildPythonApplication rec { owner = "OpShin"; repo = "opshin"; tag = version; - hash = "sha256-+uuTEszA5p/qhvthM3Uje6yX3urbIUAKKfDZ4JXEYYQ="; + hash = "sha256-L0vWEXlghXssT9oUw5AYG3/4ALoB/NH90JV8Kdl2n30="; }; - propagatedBuildInputs = with python3.pkgs; [ + propagatedBuildInputs = with python3'.pkgs; [ setuptools poetry-core uplc @@ -28,11 +39,6 @@ python3.pkgs.buildPythonApplication rec { ordered-set ]; - pythonRelaxDeps = [ - "pluthon" - "uplc" - ]; - meta = with lib; { description = "Simple pythonic programming language for Smart Contracts on Cardano"; homepage = "https://opshin.dev"; diff --git a/pkgs/by-name/re/readest/package.nix b/pkgs/by-name/re/readest/package.nix index da4ba6109cf9..5f065bca0b18 100644 --- a/pkgs/by-name/re/readest/package.nix +++ b/pkgs/by-name/re/readest/package.nix @@ -20,13 +20,13 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "readest"; - version = "0.9.43"; + version = "0.9.51"; src = fetchFromGitHub { owner = "readest"; repo = "readest"; tag = "v${finalAttrs.version}"; - hash = "sha256-9ACeMGbOpa3Nh6NQIGckcI2oYNjtQ1pE4Zn++qcE0tM="; + hash = "sha256-UJ4H+pBR+EWr2O34WUmbF2rd3pTVssE/8b9iO9bbx7Y="; fetchSubmodules = true; }; @@ -39,7 +39,7 @@ rustPlatform.buildRustPackage (finalAttrs: { pnpmDeps = pnpm_9.fetchDeps { inherit (finalAttrs) pname version src; - hash = "sha256-ozRDNXWqg0CZ1IgU33C6yJu4e05010jsHeTdIVhB72M="; + hash = "sha256-Bd+7MHYBMo4N7UpwkXGmk4oQBbyBMJOtnv6iTVQgn64="; }; pnpmRoot = "../.."; @@ -60,7 +60,8 @@ rustPlatform.buildRustPackage (finalAttrs: { --replace-fail '"Readest"' '"readest"' jq 'del(.plugins."deep-link")' src-tauri/tauri.conf.json | sponge src-tauri/tauri.conf.json substituteInPlace src/services/constants.ts \ - --replace-fail "autoCheckUpdates: true" "autoCheckUpdates: false" + --replace-fail "autoCheckUpdates: true" "autoCheckUpdates: false" \ + --replace-fail "telemetryEnabled: true" "telemetryEnabled: false" ''; nativeBuildInputs = [ diff --git a/pkgs/by-name/ru/ruff/package.nix b/pkgs/by-name/ru/ruff/package.nix index c78d0bb75bbd..625968ee98b0 100644 --- a/pkgs/by-name/ru/ruff/package.nix +++ b/pkgs/by-name/ru/ruff/package.nix @@ -16,19 +16,19 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "ruff"; - version = "0.11.11"; + version = "0.11.12"; src = fetchFromGitHub { owner = "astral-sh"; repo = "ruff"; tag = finalAttrs.version; - hash = "sha256-PPryfsdge0kOb7RyEkGl7c3pFucRzt0+9tACet3nDGM="; + hash = "sha256-5oLMhP4PKzZTp0ab+Fitq97GAVLV/GJmR2JH9IXlfuU"; }; cargoBuildFlags = [ "--package=ruff" ]; useFetchCargoVendor = true; - cargoHash = "sha256-LAEuoGTvSXXtx74t1OX+TaGxgvI8UAB3bM+fwiSfFws="; + cargoHash = "sha256-PIzR9d0O82M/b7HgmPigc2h8KwjSHi08vs3jAQyXbzs"; nativeBuildInputs = [ installShellFiles ]; diff --git a/pkgs/by-name/sn/snakemake/package.nix b/pkgs/by-name/sn/snakemake/package.nix index 8bece95eea5d..49f8200f1499 100644 --- a/pkgs/by-name/sn/snakemake/package.nix +++ b/pkgs/by-name/sn/snakemake/package.nix @@ -10,14 +10,14 @@ python3Packages.buildPythonApplication rec { pname = "snakemake"; - version = "9.5.0"; + version = "9.5.1"; pyproject = true; src = fetchFromGitHub { owner = "snakemake"; repo = "snakemake"; tag = "v${version}"; - hash = "sha256-rZTx/ZDAaZ579u7ef18qlTUtg1ieWd9sF9UXvEOyLMk="; + hash = "sha256-cSFqPSLeM7hw1bxQZ2FhlHUP+O3iyrwBz4+Jz90Zck8="; }; postPatch = '' diff --git a/pkgs/by-name/st/stalwart-mail/package.nix b/pkgs/by-name/st/stalwart-mail/package.nix index a6aea418ca01..1567814a12a4 100644 --- a/pkgs/by-name/st/stalwart-mail/package.nix +++ b/pkgs/by-name/st/stalwart-mail/package.nix @@ -9,6 +9,7 @@ sqlite, foundationdb, zstd, + rust-jemalloc-sys-unprefixed, stdenv, nix-update-script, nixosTests, @@ -18,6 +19,9 @@ stalwartEnterprise ? false, }: +let + rocksdbJemalloc = rocksdb.override { enableJemalloc = true; }; +in rustPlatform.buildRustPackage (finalAttrs: { pname = "stalwart-mail" + (lib.optionalString stalwartEnterprise "-enterprise"); version = "0.11.8"; @@ -29,6 +33,17 @@ rustPlatform.buildRustPackage (finalAttrs: { hash = "sha256-VqGosbSQxNeOS+kGtvXAmz6vyz5mJlXvKZM57B1Xue4="; }; + # rocksdb does not properly distinguish between pointers it has allocated itself + # and pointers which were passed in and might be registered with a different + # allocator, so we enable the unprefixed_malloc_on_supported_platforms to use + # jemalloc implicitly in the entire process. + postPatch = '' + for file in crates/main/Cargo.toml tests/Cargo.toml; do + substituteInPlace $file --replace-fail \ + 'jemallocator = "0.5.0"' 'jemallocator = { version = "0.5.0", features = ["unprefixed_malloc_on_supported_platforms"] }' + done + ''; + useFetchCargoVendor = true; cargoHash = "sha256-iheURWxO0cOvO+FV01l2Vmo0B+S2mXzue6mx3gapftQ="; @@ -43,6 +58,8 @@ rustPlatform.buildRustPackage (finalAttrs: { openssl sqlite zstd + rust-jemalloc-sys-unprefixed + rocksdbJemalloc ] ++ lib.optionals (stdenv.hostPlatform.isLinux && withFoundationdb) [ foundationdb ]; # Issue: https://github.com/stalwartlabs/mail-server/issues/1104 @@ -63,8 +80,8 @@ rustPlatform.buildRustPackage (finalAttrs: { env = { OPENSSL_NO_VENDOR = true; ZSTD_SYS_USE_PKG_CONFIG = true; - ROCKSDB_INCLUDE_DIR = "${rocksdb}/include"; - ROCKSDB_LIB_DIR = "${rocksdb}/lib"; + ROCKSDB_INCLUDE_DIR = "${rocksdbJemalloc}/include"; + ROCKSDB_LIB_DIR = "${rocksdbJemalloc}/lib"; }; postInstall = '' @@ -151,7 +168,7 @@ rustPlatform.buildRustPackage (finalAttrs: { __darwinAllowLocalNetworking = true; passthru = { - inherit rocksdb; # make used rocksdb version available (e.g., for backup scripts) + rocksdb = rocksdbJemalloc; # make used rocksdb version available (e.g., for backup scripts) webadmin = callPackage ./webadmin.nix { }; updateScript = nix-update-script { }; tests.stalwart-mail = nixosTests.stalwart-mail; diff --git a/pkgs/by-name/sw/sweet/package.nix b/pkgs/by-name/sw/sweet/package.nix index 51763fb1b974..77dc46c06e07 100644 --- a/pkgs/by-name/sw/sweet/package.nix +++ b/pkgs/by-name/sw/sweet/package.nix @@ -30,56 +30,56 @@ lib.checkListOfEnum "${pname}: color variants" colorVariantList colorVariants stdenvNoCC.mkDerivation (finalAttrs: { inherit pname; - version = "5.0"; + version = "6.0"; srcs = [ (fetchurl { url = "https://github.com/EliverLara/Sweet/releases/download/v${finalAttrs.version}/Sweet-Ambar-Blue-Dark-v40.tar.xz"; - hash = "sha256-fCCkkEYr4XPnP5aPrs3HAwIwM/Qb0NFY8Rf1ABu0ygY="; + hash = "sha256-LufK9MexE6YMuVniyfcNNaPfVLBMHnNmWBBNnGA2nUo="; }) (fetchurl { url = "https://github.com/EliverLara/Sweet/releases/download/v${finalAttrs.version}/Sweet-Ambar-Blue-Dark.tar.xz"; - hash = "sha256-xMAqUsol1FPeFoq8KLTmKCeZMF34FDAjhiagsRmjGT8="; + hash = "sha256-J0YOADP4FXKYMl/Nn70clD3h7Y5LtlTfWV9VLsWL9yo="; }) (fetchurl { url = "https://github.com/EliverLara/Sweet/releases/download/v${finalAttrs.version}/Sweet-Ambar-Blue-v40.tar.xz"; - hash = "sha256-JlpomJ8Ao4bJFJbCDliRtxNckEG3LzINBqhWzfTARJs="; + hash = "sha256-HH9oZQ+F1nFhIJyP9d9W2CL+mA0bolq5GiNQtKQgrZk="; }) (fetchurl { url = "https://github.com/EliverLara/Sweet/releases/download/v${finalAttrs.version}/Sweet-Ambar-Blue.tar.xz"; - hash = "sha256-HKJ/Ca5cy91kJZVEETyMcOcrgLliHF/S2rdBmWfKi08="; + hash = "sha256-2dcryd5Zj+Iu3R4jR++uJtyToGNoa1LtTpN1G6+kBRw="; }) (fetchurl { url = "https://github.com/EliverLara/Sweet/releases/download/v${finalAttrs.version}/Sweet-Ambar-v40.tar.xz"; - hash = "sha256-0LjARDbSPyQWN5nT97k2c//eebxhgStGYsebpNQn9+w="; + hash = "sha256-mpShu1fmBajl/wzlnu9zBWkskMlza5nEVS3u8Sh3b7s="; }) (fetchurl { url = "https://github.com/EliverLara/Sweet/releases/download/v${finalAttrs.version}/Sweet-Ambar.tar.xz"; - hash = "sha256-UjH4popJCqQ18HZUngsO6cE4axSAM7/EXwM8nHAdVS4="; + hash = "sha256-wcbJW6MUctGSM8GW1ouLvUCmdcDHQkjTw9h0foRBgTg="; }) (fetchurl { url = "https://github.com/EliverLara/Sweet/releases/download/v${finalAttrs.version}/Sweet-Dark-v40.tar.xz"; - hash = "sha256-4/e81slrkcO3WdrQ2atGHdZsErlzme4mRImfLvmGJnQ="; + hash = "sha256-aYPjnOEZMN9mPvnhK3eoCm1ybUxKPqPSoOL+kwsZsG4="; }) (fetchurl { url = "https://github.com/EliverLara/Sweet/releases/download/v${finalAttrs.version}/Sweet-Dark.tar.xz"; - hash = "sha256-Tv+xtUee1TIdRLlnP84aVfk+V6xgeeeICRZCdeSSjE8="; + hash = "sha256-Ej9p7/txrMhGUCyDTAEQHIS/pi92pfLrCV1L4HxWdZk="; }) (fetchurl { url = "https://github.com/EliverLara/Sweet/releases/download/v${finalAttrs.version}/Sweet-mars-v40.tar.xz"; - hash = "sha256-FmJoPeQ8iLA6X6lFawBqG8lviQXWBHG5lgQsZvU68BM="; + hash = "sha256-AKTNa6FHlPr1ZqlK5QYZzXRiPb5Nmzw2lTSNcWAtMAg="; }) (fetchurl { url = "https://github.com/EliverLara/Sweet/releases/download/v${finalAttrs.version}/Sweet-mars.tar.xz"; - hash = "sha256-bqL9jR8yPF9ZnEZ1O+P3/e6E59m+MY7mQNT3BhYVhu4="; + hash = "sha256-bCL/DqiQGiHR24aaPtPyJKAkk8X+DyMxYeYuFJBuK6Y="; }) (fetchurl { url = "https://github.com/EliverLara/Sweet/releases/download/v${finalAttrs.version}/Sweet-v40.tar.xz"; - hash = "sha256-Oesx/McKmTlqwJX8u6RrV3AtOIB73BQveD8slbD14js="; + hash = "sha256-1kHWoK9r3mRYIkizekVVYyFpWXU78BExKuNUsRB4uv4="; }) (fetchurl { url = "https://github.com/EliverLara/Sweet/releases/download/v${finalAttrs.version}/Sweet.tar.xz"; - hash = "sha256-m0tQHV/3UkDoOAmBZF6Nvugj6fEkmLbeLPdQ/IFkHOo="; + hash = "sha256-WzsquuUreT7b6TA6qGSYqGVrVWlIdQjlIdqWGMNJFpo="; }) ]; diff --git a/pkgs/by-name/ta/tailscale/package.nix b/pkgs/by-name/ta/tailscale/package.nix index 54b850dba942..057b4428ab4b 100644 --- a/pkgs/by-name/ta/tailscale/package.nix +++ b/pkgs/by-name/ta/tailscale/package.nix @@ -149,6 +149,9 @@ buildGoModule { # context deadline exceeded "TestPacketFilterFromNetmap" + + # flaky: https://github.com/tailscale/tailscale/issues/15348 + "TestSafeFuncHappyPath" ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ # syscall default route interface en0 differs from netstat diff --git a/pkgs/by-name/ud/udevCheckHook/package.nix b/pkgs/by-name/ud/udevCheckHook/package.nix index 261a503595ea..681b5d5f7a06 100644 --- a/pkgs/by-name/ud/udevCheckHook/package.nix +++ b/pkgs/by-name/ud/udevCheckHook/package.nix @@ -2,15 +2,16 @@ lib, makeSetupHook, systemdMinimal, - udev, stdenv, }: let # udev rules can only be checked if systemd (specifically, 'udevadm') can be executed on build platform - # if udev is not available on hostPlatform, there is no point in checking rules - applyHook = - lib.meta.availableOn stdenv.hostPlatform udev - && lib.meta.availableOn stdenv.buildPlatform systemdMinimal; + # If cross-compiling linux -> non-linux, udev rules are still checked, even if they end up being unused. + # This is not a problem: + # - If there are no udev rules, the hook is a noop + # - If the udev rules are broken, they should be flagged as such + # - if rules are not needed on a target platform where they are broken, they should be deleted from package output + applyHook = lib.meta.availableOn stdenv.buildPlatform systemdMinimal; in makeSetupHook { name = "udev-check-hook"; diff --git a/pkgs/by-name/vs/vsce/package.nix b/pkgs/by-name/vs/vsce/package.nix index b98b8844994a..6c70a26d29a9 100644 --- a/pkgs/by-name/vs/vsce/package.nix +++ b/pkgs/by-name/vs/vsce/package.nix @@ -12,13 +12,13 @@ buildNpmPackage (finalAttrs: { pname = "vsce"; - version = "3.4.1"; + version = "3.4.2"; src = fetchFromGitHub { owner = "microsoft"; repo = "vscode-vsce"; rev = "v${finalAttrs.version}"; - hash = "sha256-ufSEKkLqP+D/D5l5teL82RsoVgIFhbyOVjnZfnecsKI="; + hash = "sha256-T3uboozO4YRA8qqu833pIFt4yzIYRBZQdm8nawEZo2s="; }; npmDepsHash = "sha256-J7ES/a6RHeTY1grdzgYu9ex7BOzadqng2/h2LlTZLns="; diff --git a/pkgs/by-name/wi/windsurf/info.json b/pkgs/by-name/wi/windsurf/info.json index a765700b327c..db9f6557b9de 100644 --- a/pkgs/by-name/wi/windsurf/info.json +++ b/pkgs/by-name/wi/windsurf/info.json @@ -1,20 +1,20 @@ { "aarch64-darwin": { - "version": "1.9.0", + "version": "1.9.2", "vscodeVersion": "1.99.1", - "url": "https://windsurf-stable.codeiumdata.com/darwin-arm64/stable/fbebfca390b10f7a152fd231f94606109d576e12/Windsurf-darwin-arm64-1.9.0.zip", - "sha256": "44706f90321bdc4c2a2320a03c79fdd01c911236daa4cc675c597851974a268c" + "url": "https://windsurf-stable.codeiumdata.com/darwin-arm64/stable/8cb7f313303c8b35844a56b6fe0f76e508261569/Windsurf-darwin-arm64-1.9.2.zip", + "sha256": "b3edf57d19fab5ceac0cd3daee3c54052e503b052efebad0b6bfeac3b9f5a979" }, "x86_64-darwin": { - "version": "1.9.0", + "version": "1.9.2", "vscodeVersion": "1.99.1", - "url": "https://windsurf-stable.codeiumdata.com/darwin-x64/stable/fbebfca390b10f7a152fd231f94606109d576e12/Windsurf-darwin-x64-1.9.0.zip", - "sha256": "ae398d597cd143144c2bdc8bf0a853a1c57b6de2c86c95087a4be5db78252e75" + "url": "https://windsurf-stable.codeiumdata.com/darwin-x64/stable/8cb7f313303c8b35844a56b6fe0f76e508261569/Windsurf-darwin-x64-1.9.2.zip", + "sha256": "227ed7b01b9f7637d126ef880b6e0c07daa263b0740e6394e32ad4ebedd05d78" }, "x86_64-linux": { - "version": "1.9.0", + "version": "1.9.2", "vscodeVersion": "1.99.1", - "url": "https://windsurf-stable.codeiumdata.com/linux-x64/stable/fbebfca390b10f7a152fd231f94606109d576e12/Windsurf-linux-x64-1.9.0.tar.gz", - "sha256": "941640e3514a5ee524943135b439219243adb288fec484712ebc2935173aa938" + "url": "https://windsurf-stable.codeiumdata.com/linux-x64/stable/8cb7f313303c8b35844a56b6fe0f76e508261569/Windsurf-linux-x64-1.9.2.tar.gz", + "sha256": "ee5a4ac38f9a2518a54429cb235bae76d74b3fff0f5947dbfc29738d78f28542" } } diff --git a/pkgs/by-name/ya/yazi/plugins/yatline-githead/default.nix b/pkgs/by-name/ya/yazi/plugins/yatline-githead/default.nix new file mode 100644 index 000000000000..fbd722c2732e --- /dev/null +++ b/pkgs/by-name/ya/yazi/plugins/yatline-githead/default.nix @@ -0,0 +1,23 @@ +{ + lib, + fetchFromGitHub, + mkYaziPlugin, +}: +mkYaziPlugin { + pname = "yatline-githead.yazi"; + version = "0-unstable-2025-05-31"; + + src = fetchFromGitHub { + owner = "imsi32"; + repo = "yatline-githead.yazi"; + rev = "f8f969e84c39ad4215334ea5012183a2a5a6160b"; + hash = "sha256-Cs8zSYtUfdCmKwIkJwQGyQNeSOmmpPvObCMnGm+32zg="; + }; + + meta = { + description = "githead.yazi with yatline.yazi support"; + homepage = "https://github.com/imsi32/yatline-githead.yazi"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ khaneliman ]; + }; +} diff --git a/pkgs/by-name/ya/yazi/plugins/yatline/default.nix b/pkgs/by-name/ya/yazi/plugins/yatline/default.nix index 372e58d51d73..8df8e9e55860 100644 --- a/pkgs/by-name/ya/yazi/plugins/yatline/default.nix +++ b/pkgs/by-name/ya/yazi/plugins/yatline/default.nix @@ -5,13 +5,13 @@ }: mkYaziPlugin { pname = "yatline.yazi"; - version = "0-unstable-2025-04-22"; + version = "0-unstable-2025-05-31"; src = fetchFromGitHub { owner = "imsi32"; repo = "yatline.yazi"; - rev = "2ecf715d33866e5f8a63af25f6a242821746ddb7"; - hash = "sha256-l4IrdALlgKd1USxE2+bD0Lkw3DgBoQDBxgxevrFhytU="; + rev = "4872af0da53023358154c8233ab698581de5b2b2"; + hash = "sha256-7uk8QXAlck0/4bynPdh/m7Os2ayW1UXbELmusPqRmf4="; }; meta = { diff --git a/pkgs/by-name/ye/yetris/package.nix b/pkgs/by-name/ye/yetris/package.nix index c22401849db8..d460242a8af8 100644 --- a/pkgs/by-name/ye/yetris/package.nix +++ b/pkgs/by-name/ye/yetris/package.nix @@ -17,6 +17,15 @@ stdenv.mkDerivation (finalAttrs: { hash = "sha256-k9CXXIaDk1eAtRBEj0VCfE+D1FtmIDX3niubAdrfjqw="; }; + postPatch = '' + substituteInPlace src/Game/Entities/RotationSystemSRS.cpp \ + --replace-fail 'char' 'signed char' + substituteInPlace src/Game/Entities/PieceDefinitions.cpp \ + --replace-fail 'char' 'signed char' + substituteInPlace src/Game/Entities/PieceDefinitions.hpp \ + --replace-fail 'char' 'signed char' + ''; + buildInputs = [ ncurses ]; diff --git a/pkgs/development/beam-modules/ex_doc/default.nix b/pkgs/development/beam-modules/ex_doc/default.nix index 0aa06e6a2047..9638843ed8b7 100644 --- a/pkgs/development/beam-modules/ex_doc/default.nix +++ b/pkgs/development/beam-modules/ex_doc/default.nix @@ -14,12 +14,12 @@ let pname = "ex_doc"; - version = "0.38.1"; + version = "0.38.2"; src = fetchFromGitHub { owner = "elixir-lang"; repo = "${pname}"; rev = "v${version}"; - hash = "sha256-lsz+r/7Pre15qWOqla9j712I6HExyHfvBfupmKuePmI="; + hash = "sha256-Qv1vDfDGquWoem42IqA8lDiFWEtznT7ONIXSOCvn39g="; }; in mixRelease { diff --git a/pkgs/development/python-modules/aider-chat/default.nix b/pkgs/development/python-modules/aider-chat/default.nix index 4e7fcc9a01a9..54953304559a 100644 --- a/pkgs/development/python-modules/aider-chat/default.nix +++ b/pkgs/development/python-modules/aider-chat/default.nix @@ -126,7 +126,7 @@ let d.stopwords ]); - version = "0.83.2"; + version = "0.84.0"; aider-chat = buildPythonPackage { pname = "aider-chat"; inherit version; @@ -139,7 +139,7 @@ let owner = "Aider-AI"; repo = "aider"; tag = "v${version}"; - hash = "sha256-fVysmaB2jGS2XJlxyFIdJmQShzxz2q4TQf8zNuCT2GE="; + hash = "sha256-TOlqwJM9wIAURSimuh9mysYDwgH9AfFev8jY9elLNk8="; }; pythonRelaxDeps = true; diff --git a/pkgs/development/python-modules/cbor2/default.nix b/pkgs/development/python-modules/cbor2/default.nix index a3ed8ceea17f..a9fd9152666e 100644 --- a/pkgs/development/python-modules/cbor2/default.nix +++ b/pkgs/development/python-modules/cbor2/default.nix @@ -4,6 +4,8 @@ fetchPypi, pythonOlder, + withCExtensions ? true, + # build-system setuptools, setuptools-scm, @@ -39,6 +41,14 @@ buildPythonPackage rec { pytestCheckHook ]; + env = lib.optionalAttrs (!withCExtensions) { + CBOR2_BUILD_C_EXTENSION = "0"; + }; + + passthru = { + inherit withCExtensions; + }; + meta = with lib; { changelog = "https://github.com/agronholm/cbor2/releases/tag/${version}"; description = "Python CBOR (de)serializer with extensive tag support"; diff --git a/pkgs/development/python-modules/msmart-ng/default.nix b/pkgs/development/python-modules/msmart-ng/default.nix index 8d1983474e18..05ca5a840362 100644 --- a/pkgs/development/python-modules/msmart-ng/default.nix +++ b/pkgs/development/python-modules/msmart-ng/default.nix @@ -2,7 +2,6 @@ lib, buildPythonPackage, fetchFromGitHub, - fetchpatch2, # build-system setuptools, @@ -18,27 +17,16 @@ buildPythonPackage rec { pname = "msmart-ng"; - version = "2025.3.3"; + version = "2025.5.1"; pyproject = true; src = fetchFromGitHub { owner = "mill1000"; repo = "midea-msmart"; tag = version; - hash = "sha256-M8Gl6QXj0tRN7VFDhop47vINk8MeWSyCJ9bboo3j8Go="; + hash = "sha256-dZD93ZZiQLmWuMAR/nnYB7oGBBYr4YPEi+LdpSzweVc="; }; - patches = [ - (fetchpatch2 { - # Revert until setuptools - # implements support for . - name = "revert-pyproject-license-declaration-pep639-syntax.patch"; - url = "https://github.com/mill1000/midea-msmart/commit/e5d6a982135e497c251095e421d3de4686f36056.patch?full_index=1"; - hash = "sha256-+mxmFGZd04MZY2C5eo4k1lFoXsM8XyeJNazShnjAseE="; - revert = true; - }) - ]; - build-system = [ setuptools setuptools-scm diff --git a/pkgs/development/python-modules/pluthon/default.nix b/pkgs/development/python-modules/pluthon/default.nix index 21994bd0817e..47dd7fad00b0 100644 --- a/pkgs/development/python-modules/pluthon/default.nix +++ b/pkgs/development/python-modules/pluthon/default.nix @@ -12,7 +12,7 @@ buildPythonPackage rec { pname = "pluthon"; - version = "1.0.0"; + version = "1.1.0"; format = "pyproject"; @@ -20,7 +20,7 @@ buildPythonPackage rec { owner = "OpShin"; repo = "pluthon"; rev = version; - hash = "sha256-IYpkb/RXRu53HoeVKik7Jog5FyXwrWItrxSla9dN0s4="; + hash = "sha256-t8KWm2eBq6CzFPAWN9pgbpF62hvNNZWCpphJsY5T2OQ="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/pycardano/default.nix b/pkgs/development/python-modules/pycardano/default.nix index e5f164e9fe92..7b36de98ace2 100644 --- a/pkgs/development/python-modules/pycardano/default.nix +++ b/pkgs/development/python-modules/pycardano/default.nix @@ -25,7 +25,7 @@ }: let - cose_0_9_dev8 = cose.overridePythonAttrs (old: rec { + cose_0_9_dev8 = (cose.override { inherit cbor2; }).overridePythonAttrs (old: rec { version = "0.9.dev8"; src = ( old.src.override { @@ -38,14 +38,14 @@ let in buildPythonPackage rec { pname = "pycardano"; - version = "0.12.3"; + version = "0.14.0"; pyproject = true; src = fetchFromGitHub { owner = "Python-Cardano"; repo = "pycardano"; tag = "v${version}"; - hash = "sha256-jxgskdQ7Us+utndUgFYK7G2IW/e5QbeXytOsxQfFiJI="; + hash = "sha256-W5N254tND7mI0oR82YhMFWn4zVVs3ygYOqXOBMO3sXY="; }; build-system = [ @@ -88,5 +88,9 @@ buildPythonPackage rec { homepage = "https://github.com/Python-Cardano/pycardano"; license = lib.licenses.mit; maintainers = with lib.maintainers; [ t4ccer ]; + # https://github.com/Python-Cardano/pycardano/blob/v0.13.2/Makefile#L26-L39 + # cbor2 with C extensions fail tests due to differences in used sized vs unsized arrays + # more info: https://github.com/NixOS/nixpkgs/pull/402433#issuecomment-2916520286 + broken = cbor2.withCExtensions; # consider overriding cbor2 with cbor2WithoutCExtensions }; } diff --git a/pkgs/development/python-modules/pymupdf/default.nix b/pkgs/development/python-modules/pymupdf/default.nix index 0942ab73c432..86e0fbf6a7a0 100644 --- a/pkgs/development/python-modules/pymupdf/default.nix +++ b/pkgs/development/python-modules/pymupdf/default.nix @@ -6,6 +6,7 @@ fetchFromGitHub, fetchpatch, python, + toPythonModule, # build-system libclang, @@ -40,6 +41,8 @@ let enableBarcode = true; python3 = python; }; + mupdf-cxx-lib = toPythonModule (lib.getLib mupdf-cxx); + mupdf-cxx-dev = lib.getDev mupdf-cxx; in buildPythonPackage rec { pname = "pymupdf"; @@ -77,7 +80,7 @@ buildPythonPackage rec { gumbo ]; - propagatedBuildInputs = [ mupdf-cxx ]; + propagatedBuildInputs = [ mupdf-cxx-lib ]; env = { # force using system MuPDF (must be defined in environment and empty) @@ -85,14 +88,14 @@ buildPythonPackage rec { # Setup the name of the package away from the default 'libclang' PYMUPDF_SETUP_LIBCLANG = "clang"; # provide MuPDF paths - PYMUPDF_MUPDF_LIB = "${lib.getLib mupdf-cxx}/lib"; - PYMUPDF_MUPDF_INCLUDE = "${lib.getDev mupdf-cxx}/include"; + PYMUPDF_MUPDF_LIB = "${mupdf-cxx-lib}/lib"; + PYMUPDF_MUPDF_INCLUDE = "${mupdf-cxx-dev}/include"; }; # TODO: manually add mupdf rpath until upstream fixes it postInstall = lib.optionalString stdenv.hostPlatform.isDarwin '' for lib in */*.so $out/${python.sitePackages}/*/*.so; do - install_name_tool -add_rpath ${lib.getLib mupdf-cxx}/lib "$lib" + install_name_tool -add_rpath ${mupdf-cxx-lib}/lib "$lib" done ''; diff --git a/pkgs/development/python-modules/uplc/default.nix b/pkgs/development/python-modules/uplc/default.nix index dd8e8cbea634..e9a2874b17c0 100644 --- a/pkgs/development/python-modules/uplc/default.nix +++ b/pkgs/development/python-modules/uplc/default.nix @@ -8,14 +8,16 @@ setuptools, poetry-core, frozendict, + cbor2WithoutCExtensions, cbor2, rply, pycardano, + uplc, }: buildPythonPackage rec { pname = "uplc"; - version = "1.0.7"; + version = "1.0.10"; format = "pyproject"; @@ -23,7 +25,7 @@ buildPythonPackage rec { owner = "OpShin"; repo = "uplc"; tag = version; - hash = "sha256-xK2k0XLybWqyP5Qa2Oby8YBgiiswR++yVK7NPgpdSa0="; + hash = "sha256-Owo4W4jChrdYnz11BbWQdm2SiwFwOJlqjYutuRyjpxs="; }; propagatedBuildInputs = [ @@ -37,8 +39,17 @@ buildPythonPackage rec { python-secp256k1-cardano ]; + # Support cbor2 without C extensions + postPatch = lib.optionalString (!cbor2.withCExtensions) '' + substituteInPlace uplc/ast.py --replace-fail 'from _cbor2' 'from cbor2' + ''; + pythonImportsCheck = [ "uplc" ]; + passthru.tests.withoutCExtensions = uplc.override { + cbor2 = cbor2WithoutCExtensions; + }; + meta = with lib; { description = "Python implementation of untyped plutus language core"; homepage = "https://github.com/OpShin/uplc"; diff --git a/pkgs/development/python-modules/uv/default.nix b/pkgs/development/python-modules/uv/default.nix index 726a861372db..2ab81cf60602 100644 --- a/pkgs/development/python-modules/uv/default.nix +++ b/pkgs/development/python-modules/uv/default.nix @@ -1,36 +1,45 @@ { buildPythonPackage, - installShellFiles, - rustPlatform, - pkgs, - versionCheckHook, + hatchling, + lib, + uv, }: buildPythonPackage { - inherit (pkgs.uv) + inherit (uv) pname version src - cargoDeps meta - cargoBuildFlags - postInstall - versionCheckProgramArg ; + pyproject = true; - postPatch = '' - substituteInPlace python/uv/_find_uv.py \ - --replace-fail '"""Return the uv binary path."""' "return '$out/bin/uv'" + build-system = [ hatchling ]; + + postPatch = + # Do not rely on path lookup at runtime to find the uv binary. + # Use the propagated binary instead. + '' + substituteInPlace python/uv/_find_uv.py \ + --replace-fail '"""Return the uv binary path."""' "return '${lib.getExe uv}'" + '' + # Sidestep the maturin build system in favour of reusing the binary already built by nixpkgs, + # to avoid rebuilding the uv binary for every active python package set. + + '' + substituteInPlace pyproject.toml \ + --replace-fail 'requires = ["maturin>=1.0,<2.0"]' 'requires = ["hatchling"]' \ + --replace-fail 'build-backend = "maturin"' 'build-backend = "hatchling.build"' + + cat >> pyproject.toml <