Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ruff: Build as a standalone without Python #358029

Merged
merged 1 commit into from
Dec 28, 2024

Conversation

adisbladis
Copy link
Member

Using buildPythonPackage make ruff propagate the Python used for the build, which might not be the same Python as you want in your development shell.

#350654 changed the ruff top-level attribute to be built with Python modules. This doesn't actually make much sense, we have versioned Python sets, and including just the one Python in the top-level package isn't helpful, and causes issues downstream related to PATH & PYTHONPATH.

See my related uv PR.

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 25.05 Release Notes (or backporting 24.11 and 25.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

Add a 👍 reaction to pull requests you find important.

Copy link
Contributor

@drupol drupol left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree with this.

@drupol drupol requested a review from GaetanLepage November 22, 2024 11:48
@GaetanLepage GaetanLepage requested a review from baloo November 22, 2024 13:58
Copy link
Member

@baloo baloo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just change your development shell expression to use python312.pkgs.ruff (or whichever version of python you might want) and not just ruff?
I'm not sure I follow the problem here.

The upstream project intends for ruff to be built using maturin. Here you're duplicating the build to make another one that won't use maturin.

@baloo
Copy link
Member

baloo commented Nov 22, 2024

If the purpose is to strip off propagation, you can do so in your nix-shell:

let
  pkgs = import <nixpkgs> {};
  ruff = pkgs.runCommandNoCC "ruff" {} ''
    mkdir -p $out/bin
    ln -s ${pkgs.ruff}/bin/ruff $out/bin
  '';

in
  pkgs.mkShell {
    buildInputs = [ ruff  ];
}
$ nix-shell --command 'env| grep -i python'
$

@drupol
Copy link
Contributor

drupol commented Nov 22, 2024

If the purpose is to strip off propagation, you can do so in your nix-shell

But this should be the default behaviour, don't you think?

@drupol drupol added the 2.status: merge conflict This PR has merge conflicts with the target branch label Nov 22, 2024
@baloo
Copy link
Member

baloo commented Nov 22, 2024

But this should be the default behaviour, don't you think?

Then you have to fix the behavior 1042 other packages.

$ git grep buildPythonApplication pkgs/by-name/ | wc -l
1043

@adisbladis adisbladis force-pushed the ruff-standalone branch 2 times, most recently from cc5ea3d to e1cd562 Compare November 23, 2024 05:03
@ofborg ofborg bot removed the 2.status: merge conflict This PR has merge conflicts with the target branch label Nov 23, 2024
@dwt
Copy link
Contributor

dwt commented Nov 26, 2024

@baloo Well, you have to start somewhere. Starting with popular packages that matter to you seems an apt strategy?

@baloo
Copy link
Member

baloo commented Nov 26, 2024

Well, the problem can be solved by using ruff.bin instead of ruff which doesn't bring in any python dependency or PYTHON_PATH (so you don't even need the runCommand wrapper like I suggested earlier).

@GaetanLepage
Copy link
Contributor

@adisbladis are you willing to finish this ?
It would be nice to be on the same page as uv.

@GaetanLepage
Copy link
Contributor

#361878 has been merged into master.
It should be possible to get this through now.

@GaetanLepage
Copy link
Contributor

nixpkgs-review result

Generated using nixpkgs-review.

Command: nixpkgs-review pr 358029


x86_64-linux

❌ 17 packages failed to build:
  • python312Packages.mypy-boto3-builder
  • python312Packages.mypy-boto3-builder.dist
  • python312Packages.pytest-examples
  • python312Packages.pytest-examples.dist
  • python312Packages.pytest-ruff
  • python312Packages.pytest-ruff.dist
  • python313Packages.marimo
  • python313Packages.marimo.dist
  • python313Packages.mypy-boto3-builder
  • python313Packages.mypy-boto3-builder.dist
  • python313Packages.pytest-examples
  • python313Packages.pytest-examples.dist
  • python313Packages.pytest-ruff
  • python313Packages.pytest-ruff.dist
  • python313Packages.python-lsp-ruff
  • python313Packages.python-lsp-ruff.dist
  • tests.testers.lycheeLinkCheck.network
✅ 40 packages built:
  • dmarc-metrics-exporter
  • dmarc-metrics-exporter.dist
  • maigret
  • maigret.dist
  • marimo (python312Packages.marimo)
  • marimo.dist (python312Packages.marimo.dist)
  • nbqa
  • nbqa.dist
  • nixpkgs-openjdk-updater
  • nixpkgs-openjdk-updater.dist
  • openapi-python-client
  • openapi-python-client.dist
  • python312Packages.ifcopenshell
  • python312Packages.pyhanko
  • python312Packages.pyhanko.dist
  • python312Packages.python-lsp-ruff
  • python312Packages.python-lsp-ruff.dist
  • python312Packages.ruff
  • python312Packages.ruff.dist
  • python312Packages.xhtml2pdf
  • python312Packages.xhtml2pdf.dist
  • python312Packages.xsdata
  • python312Packages.xsdata.dist
  • python313Packages.pyhanko
  • python313Packages.pyhanko.dist
  • python313Packages.ruff
  • python313Packages.ruff.dist
  • python313Packages.xhtml2pdf
  • python313Packages.xhtml2pdf.dist
  • python313Packages.xsdata
  • python313Packages.xsdata.dist
  • ruff
  • ruff-lsp
  • ruff-lsp.dist
  • tests.devShellTools.nixos
  • tests.testers.nixosTest-example
  • tests.testers.runNixOSTest-example
  • tests.trivial-builders.references
  • vunnel
  • vunnel.dist

aarch64-linux

❌ 17 packages failed to build:
  • python312Packages.mypy-boto3-builder
  • python312Packages.mypy-boto3-builder.dist
  • python312Packages.pytest-examples
  • python312Packages.pytest-examples.dist
  • python312Packages.pytest-ruff
  • python312Packages.pytest-ruff.dist
  • python313Packages.marimo
  • python313Packages.marimo.dist
  • python313Packages.mypy-boto3-builder
  • python313Packages.mypy-boto3-builder.dist
  • python313Packages.pytest-examples
  • python313Packages.pytest-examples.dist
  • python313Packages.pytest-ruff
  • python313Packages.pytest-ruff.dist
  • python313Packages.python-lsp-ruff
  • python313Packages.python-lsp-ruff.dist
  • tests.testers.lycheeLinkCheck.network
✅ 40 packages built:
  • dmarc-metrics-exporter
  • dmarc-metrics-exporter.dist
  • maigret
  • maigret.dist
  • marimo (python312Packages.marimo)
  • marimo.dist (python312Packages.marimo.dist)
  • nbqa
  • nbqa.dist
  • nixpkgs-openjdk-updater
  • nixpkgs-openjdk-updater.dist
  • openapi-python-client
  • openapi-python-client.dist
  • python312Packages.ifcopenshell
  • python312Packages.pyhanko
  • python312Packages.pyhanko.dist
  • python312Packages.python-lsp-ruff
  • python312Packages.python-lsp-ruff.dist
  • python312Packages.ruff
  • python312Packages.ruff.dist
  • python312Packages.xhtml2pdf
  • python312Packages.xhtml2pdf.dist
  • python312Packages.xsdata
  • python312Packages.xsdata.dist
  • python313Packages.pyhanko
  • python313Packages.pyhanko.dist
  • python313Packages.ruff
  • python313Packages.ruff.dist
  • python313Packages.xhtml2pdf
  • python313Packages.xhtml2pdf.dist
  • python313Packages.xsdata
  • python313Packages.xsdata.dist
  • ruff
  • ruff-lsp
  • ruff-lsp.dist
  • tests.devShellTools.nixos
  • tests.testers.nixosTest-example
  • tests.testers.runNixOSTest-example
  • tests.trivial-builders.references
  • vunnel
  • vunnel.dist

x86_64-darwin

⏩ 1 package marked as broken and skipped:
  • python312Packages.ifcopenshell
❌ 31 packages failed to build:
  • maigret
  • maigret.dist
  • python312Packages.mypy-boto3-builder
  • python312Packages.mypy-boto3-builder.dist
  • python312Packages.pyhanko
  • python312Packages.pyhanko.dist
  • python312Packages.pytest-examples
  • python312Packages.pytest-examples.dist
  • python312Packages.pytest-ruff
  • python312Packages.pytest-ruff.dist
  • python312Packages.xhtml2pdf
  • python312Packages.xhtml2pdf.dist
  • python313Packages.marimo
  • python313Packages.marimo.dist
  • python313Packages.mypy-boto3-builder
  • python313Packages.mypy-boto3-builder.dist
  • python313Packages.pyhanko
  • python313Packages.pyhanko.dist
  • python313Packages.pytest-examples
  • python313Packages.pytest-examples.dist
  • python313Packages.pytest-ruff
  • python313Packages.pytest-ruff.dist
  • python313Packages.python-lsp-ruff
  • python313Packages.python-lsp-ruff.dist
  • python313Packages.xhtml2pdf
  • python313Packages.xhtml2pdf.dist
  • tests.devShellTools.nixos
  • tests.testers.lycheeLinkCheck.network
  • tests.testers.nixosTest-example
  • tests.testers.runNixOSTest-example
  • tests.trivial-builders.references
✅ 25 packages built:
  • dmarc-metrics-exporter
  • dmarc-metrics-exporter.dist
  • marimo (python312Packages.marimo)
  • marimo.dist (python312Packages.marimo.dist)
  • nbqa
  • nbqa.dist
  • nixpkgs-openjdk-updater
  • nixpkgs-openjdk-updater.dist
  • openapi-python-client
  • openapi-python-client.dist
  • python312Packages.python-lsp-ruff
  • python312Packages.python-lsp-ruff.dist
  • python312Packages.ruff
  • python312Packages.ruff.dist
  • python312Packages.xsdata
  • python312Packages.xsdata.dist
  • python313Packages.ruff
  • python313Packages.ruff.dist
  • python313Packages.xsdata
  • python313Packages.xsdata.dist
  • ruff
  • ruff-lsp
  • ruff-lsp.dist
  • vunnel
  • vunnel.dist

aarch64-darwin

⏩ 1 package marked as broken and skipped:
  • python312Packages.ifcopenshell
❌ 31 packages failed to build:
  • maigret
  • maigret.dist
  • python312Packages.mypy-boto3-builder
  • python312Packages.mypy-boto3-builder.dist
  • python312Packages.pyhanko
  • python312Packages.pyhanko.dist
  • python312Packages.pytest-examples
  • python312Packages.pytest-examples.dist
  • python312Packages.pytest-ruff
  • python312Packages.pytest-ruff.dist
  • python312Packages.xhtml2pdf
  • python312Packages.xhtml2pdf.dist
  • python313Packages.marimo
  • python313Packages.marimo.dist
  • python313Packages.mypy-boto3-builder
  • python313Packages.mypy-boto3-builder.dist
  • python313Packages.pyhanko
  • python313Packages.pyhanko.dist
  • python313Packages.pytest-examples
  • python313Packages.pytest-examples.dist
  • python313Packages.pytest-ruff
  • python313Packages.pytest-ruff.dist
  • python313Packages.python-lsp-ruff
  • python313Packages.python-lsp-ruff.dist
  • python313Packages.xhtml2pdf
  • python313Packages.xhtml2pdf.dist
  • tests.devShellTools.nixos
  • tests.testers.lycheeLinkCheck.network
  • tests.testers.nixosTest-example
  • tests.testers.runNixOSTest-example
  • tests.trivial-builders.references
✅ 25 packages built:
  • dmarc-metrics-exporter
  • dmarc-metrics-exporter.dist
  • marimo (python312Packages.marimo)
  • marimo.dist (python312Packages.marimo.dist)
  • nbqa
  • nbqa.dist
  • nixpkgs-openjdk-updater
  • nixpkgs-openjdk-updater.dist
  • openapi-python-client
  • openapi-python-client.dist
  • python312Packages.python-lsp-ruff
  • python312Packages.python-lsp-ruff.dist
  • python312Packages.ruff
  • python312Packages.ruff.dist
  • python312Packages.xsdata
  • python312Packages.xsdata.dist
  • python313Packages.ruff
  • python313Packages.ruff.dist
  • python313Packages.xsdata
  • python313Packages.xsdata.dist
  • ruff
  • ruff-lsp
  • ruff-lsp.dist
  • vunnel
  • vunnel.dist

@GaetanLepage
Copy link
Contributor

Most darwin failures are not related and tackled in #367756.

@GaetanLepage GaetanLepage requested a review from baloo December 23, 2024 23:17
@GaetanLepage
Copy link
Contributor

nixpkgs-review result

Generated using nixpkgs-review.

Command: nixpkgs-review pr 358029


x86_64-linux

❌ 17 packages failed to build:
  • python312Packages.mypy-boto3-builder
  • python312Packages.mypy-boto3-builder.dist
  • python312Packages.pytest-examples
  • python312Packages.pytest-examples.dist
  • python312Packages.pytest-ruff
  • python312Packages.pytest-ruff.dist
  • python313Packages.marimo
  • python313Packages.marimo.dist
  • python313Packages.mypy-boto3-builder
  • python313Packages.mypy-boto3-builder.dist
  • python313Packages.pytest-examples
  • python313Packages.pytest-examples.dist
  • python313Packages.pytest-ruff
  • python313Packages.pytest-ruff.dist
  • python313Packages.python-lsp-ruff
  • python313Packages.python-lsp-ruff.dist
  • tests.testers.lycheeLinkCheck.network
✅ 40 packages built:
  • dmarc-metrics-exporter
  • dmarc-metrics-exporter.dist
  • maigret
  • maigret.dist
  • marimo (python312Packages.marimo)
  • marimo.dist (python312Packages.marimo.dist)
  • nbqa
  • nbqa.dist
  • nixpkgs-openjdk-updater
  • nixpkgs-openjdk-updater.dist
  • openapi-python-client
  • openapi-python-client.dist
  • python312Packages.ifcopenshell
  • python312Packages.pyhanko
  • python312Packages.pyhanko.dist
  • python312Packages.python-lsp-ruff
  • python312Packages.python-lsp-ruff.dist
  • python312Packages.ruff
  • python312Packages.ruff.dist
  • python312Packages.xhtml2pdf
  • python312Packages.xhtml2pdf.dist
  • python312Packages.xsdata
  • python312Packages.xsdata.dist
  • python313Packages.pyhanko
  • python313Packages.pyhanko.dist
  • python313Packages.ruff
  • python313Packages.ruff.dist
  • python313Packages.xhtml2pdf
  • python313Packages.xhtml2pdf.dist
  • python313Packages.xsdata
  • python313Packages.xsdata.dist
  • ruff
  • ruff-lsp
  • ruff-lsp.dist
  • tests.devShellTools.nixos
  • tests.testers.nixosTest-example
  • tests.testers.runNixOSTest-example
  • tests.trivial-builders.references
  • vunnel
  • vunnel.dist

aarch64-linux

❌ 17 packages failed to build:
  • python312Packages.mypy-boto3-builder
  • python312Packages.mypy-boto3-builder.dist
  • python312Packages.pytest-examples
  • python312Packages.pytest-examples.dist
  • python312Packages.pytest-ruff
  • python312Packages.pytest-ruff.dist
  • python313Packages.marimo
  • python313Packages.marimo.dist
  • python313Packages.mypy-boto3-builder
  • python313Packages.mypy-boto3-builder.dist
  • python313Packages.pytest-examples
  • python313Packages.pytest-examples.dist
  • python313Packages.pytest-ruff
  • python313Packages.pytest-ruff.dist
  • python313Packages.python-lsp-ruff
  • python313Packages.python-lsp-ruff.dist
  • tests.testers.lycheeLinkCheck.network
✅ 40 packages built:
  • dmarc-metrics-exporter
  • dmarc-metrics-exporter.dist
  • maigret
  • maigret.dist
  • marimo (python312Packages.marimo)
  • marimo.dist (python312Packages.marimo.dist)
  • nbqa
  • nbqa.dist
  • nixpkgs-openjdk-updater
  • nixpkgs-openjdk-updater.dist
  • openapi-python-client
  • openapi-python-client.dist
  • python312Packages.ifcopenshell
  • python312Packages.pyhanko
  • python312Packages.pyhanko.dist
  • python312Packages.python-lsp-ruff
  • python312Packages.python-lsp-ruff.dist
  • python312Packages.ruff
  • python312Packages.ruff.dist
  • python312Packages.xhtml2pdf
  • python312Packages.xhtml2pdf.dist
  • python312Packages.xsdata
  • python312Packages.xsdata.dist
  • python313Packages.pyhanko
  • python313Packages.pyhanko.dist
  • python313Packages.ruff
  • python313Packages.ruff.dist
  • python313Packages.xhtml2pdf
  • python313Packages.xhtml2pdf.dist
  • python313Packages.xsdata
  • python313Packages.xsdata.dist
  • ruff
  • ruff-lsp
  • ruff-lsp.dist
  • tests.devShellTools.nixos
  • tests.testers.nixosTest-example
  • tests.testers.runNixOSTest-example
  • tests.trivial-builders.references
  • vunnel
  • vunnel.dist

x86_64-darwin

⏩ 1 package marked as broken and skipped:
  • python312Packages.ifcopenshell
❌ 21 packages failed to build:
  • python312Packages.mypy-boto3-builder
  • python312Packages.mypy-boto3-builder.dist
  • python312Packages.pytest-examples
  • python312Packages.pytest-examples.dist
  • python312Packages.pytest-ruff
  • python312Packages.pytest-ruff.dist
  • python313Packages.marimo
  • python313Packages.marimo.dist
  • python313Packages.mypy-boto3-builder
  • python313Packages.mypy-boto3-builder.dist
  • python313Packages.pytest-examples
  • python313Packages.pytest-examples.dist
  • python313Packages.pytest-ruff
  • python313Packages.pytest-ruff.dist
  • python313Packages.python-lsp-ruff
  • python313Packages.python-lsp-ruff.dist
  • tests.devShellTools.nixos
  • tests.testers.lycheeLinkCheck.network
  • tests.testers.nixosTest-example
  • tests.testers.runNixOSTest-example
  • tests.trivial-builders.references
✅ 35 packages built:
  • dmarc-metrics-exporter
  • dmarc-metrics-exporter.dist
  • maigret
  • maigret.dist
  • marimo (python312Packages.marimo)
  • marimo.dist (python312Packages.marimo.dist)
  • nbqa
  • nbqa.dist
  • nixpkgs-openjdk-updater
  • nixpkgs-openjdk-updater.dist
  • openapi-python-client
  • openapi-python-client.dist
  • python312Packages.pyhanko
  • python312Packages.pyhanko.dist
  • python312Packages.python-lsp-ruff
  • python312Packages.python-lsp-ruff.dist
  • python312Packages.ruff
  • python312Packages.ruff.dist
  • python312Packages.xhtml2pdf
  • python312Packages.xhtml2pdf.dist
  • python312Packages.xsdata
  • python312Packages.xsdata.dist
  • python313Packages.pyhanko
  • python313Packages.pyhanko.dist
  • python313Packages.ruff
  • python313Packages.ruff.dist
  • python313Packages.xhtml2pdf
  • python313Packages.xhtml2pdf.dist
  • python313Packages.xsdata
  • python313Packages.xsdata.dist
  • ruff
  • ruff-lsp
  • ruff-lsp.dist
  • vunnel
  • vunnel.dist

aarch64-darwin

⏩ 1 package marked as broken and skipped:
  • python312Packages.ifcopenshell
❌ 21 packages failed to build:
  • python312Packages.mypy-boto3-builder
  • python312Packages.mypy-boto3-builder.dist
  • python312Packages.pytest-examples
  • python312Packages.pytest-examples.dist
  • python312Packages.pytest-ruff
  • python312Packages.pytest-ruff.dist
  • python313Packages.marimo
  • python313Packages.marimo.dist
  • python313Packages.mypy-boto3-builder
  • python313Packages.mypy-boto3-builder.dist
  • python313Packages.pytest-examples
  • python313Packages.pytest-examples.dist
  • python313Packages.pytest-ruff
  • python313Packages.pytest-ruff.dist
  • python313Packages.python-lsp-ruff
  • python313Packages.python-lsp-ruff.dist
  • tests.devShellTools.nixos
  • tests.testers.lycheeLinkCheck.network
  • tests.testers.nixosTest-example
  • tests.testers.runNixOSTest-example
  • tests.trivial-builders.references
✅ 35 packages built:
  • dmarc-metrics-exporter
  • dmarc-metrics-exporter.dist
  • maigret
  • maigret.dist
  • marimo (python312Packages.marimo)
  • marimo.dist (python312Packages.marimo.dist)
  • nbqa
  • nbqa.dist
  • nixpkgs-openjdk-updater
  • nixpkgs-openjdk-updater.dist
  • openapi-python-client
  • openapi-python-client.dist
  • python312Packages.pyhanko
  • python312Packages.pyhanko.dist
  • python312Packages.python-lsp-ruff
  • python312Packages.python-lsp-ruff.dist
  • python312Packages.ruff
  • python312Packages.ruff.dist
  • python312Packages.xhtml2pdf
  • python312Packages.xhtml2pdf.dist
  • python312Packages.xsdata
  • python312Packages.xsdata.dist
  • python313Packages.pyhanko
  • python313Packages.pyhanko.dist
  • python313Packages.ruff
  • python313Packages.ruff.dist
  • python313Packages.xhtml2pdf
  • python313Packages.xhtml2pdf.dist
  • python313Packages.xsdata
  • python313Packages.xsdata.dist
  • ruff
  • ruff-lsp
  • ruff-lsp.dist
  • vunnel
  • vunnel.dist

--fish <($bin/bin/ruff generate-shell-completion fish) \
--zsh <($bin/bin/ruff generate-shell-completion zsh)
'';
postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) ''
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: could use stdenv.hostPlatform.emulator buildPackages instead.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the tip ! Have I got it right ?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Almost, you don't need stdenv.buildPlatform.canExecute as a condition for it. You can look at how other packages do it.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh cool ! I removed the optionalString.

pkgs/by-name/ru/ruff/package.nix Outdated Show resolved Hide resolved
@GaetanLepage GaetanLepage force-pushed the ruff-standalone branch 2 times, most recently from d4873da to 5b27fe1 Compare December 24, 2024 02:45
@GaetanLepage
Copy link
Contributor

nixpkgs-review result

Generated using nixpkgs-review.

Command: nixpkgs-review pr 358029


x86_64-linux

❌ 17 packages failed to build:
  • python312Packages.mypy-boto3-builder
  • python312Packages.mypy-boto3-builder.dist
  • python312Packages.pytest-examples
  • python312Packages.pytest-examples.dist
  • python312Packages.pytest-ruff
  • python312Packages.pytest-ruff.dist
  • python313Packages.marimo
  • python313Packages.marimo.dist
  • python313Packages.mypy-boto3-builder
  • python313Packages.mypy-boto3-builder.dist
  • python313Packages.pytest-examples
  • python313Packages.pytest-examples.dist
  • python313Packages.pytest-ruff
  • python313Packages.pytest-ruff.dist
  • python313Packages.python-lsp-ruff
  • python313Packages.python-lsp-ruff.dist
  • tests.testers.lycheeLinkCheck.network
✅ 40 packages built:
  • dmarc-metrics-exporter
  • dmarc-metrics-exporter.dist
  • maigret
  • maigret.dist
  • marimo (python312Packages.marimo)
  • marimo.dist (python312Packages.marimo.dist)
  • nbqa
  • nbqa.dist
  • nixpkgs-openjdk-updater
  • nixpkgs-openjdk-updater.dist
  • openapi-python-client
  • openapi-python-client.dist
  • python312Packages.ifcopenshell
  • python312Packages.pyhanko
  • python312Packages.pyhanko.dist
  • python312Packages.python-lsp-ruff
  • python312Packages.python-lsp-ruff.dist
  • python312Packages.ruff
  • python312Packages.ruff.dist
  • python312Packages.xhtml2pdf
  • python312Packages.xhtml2pdf.dist
  • python312Packages.xsdata
  • python312Packages.xsdata.dist
  • python313Packages.pyhanko
  • python313Packages.pyhanko.dist
  • python313Packages.ruff
  • python313Packages.ruff.dist
  • python313Packages.xhtml2pdf
  • python313Packages.xhtml2pdf.dist
  • python313Packages.xsdata
  • python313Packages.xsdata.dist
  • ruff
  • ruff-lsp
  • ruff-lsp.dist
  • tests.devShellTools.nixos
  • tests.testers.nixosTest-example
  • tests.testers.runNixOSTest-example
  • tests.trivial-builders.references
  • vunnel
  • vunnel.dist

aarch64-linux

❌ 17 packages failed to build:
  • python312Packages.mypy-boto3-builder
  • python312Packages.mypy-boto3-builder.dist
  • python312Packages.pytest-examples
  • python312Packages.pytest-examples.dist
  • python312Packages.pytest-ruff
  • python312Packages.pytest-ruff.dist
  • python313Packages.marimo
  • python313Packages.marimo.dist
  • python313Packages.mypy-boto3-builder
  • python313Packages.mypy-boto3-builder.dist
  • python313Packages.pytest-examples
  • python313Packages.pytest-examples.dist
  • python313Packages.pytest-ruff
  • python313Packages.pytest-ruff.dist
  • python313Packages.python-lsp-ruff
  • python313Packages.python-lsp-ruff.dist
  • tests.testers.lycheeLinkCheck.network
✅ 40 packages built:
  • dmarc-metrics-exporter
  • dmarc-metrics-exporter.dist
  • maigret
  • maigret.dist
  • marimo (python312Packages.marimo)
  • marimo.dist (python312Packages.marimo.dist)
  • nbqa
  • nbqa.dist
  • nixpkgs-openjdk-updater
  • nixpkgs-openjdk-updater.dist
  • openapi-python-client
  • openapi-python-client.dist
  • python312Packages.ifcopenshell
  • python312Packages.pyhanko
  • python312Packages.pyhanko.dist
  • python312Packages.python-lsp-ruff
  • python312Packages.python-lsp-ruff.dist
  • python312Packages.ruff
  • python312Packages.ruff.dist
  • python312Packages.xhtml2pdf
  • python312Packages.xhtml2pdf.dist
  • python312Packages.xsdata
  • python312Packages.xsdata.dist
  • python313Packages.pyhanko
  • python313Packages.pyhanko.dist
  • python313Packages.ruff
  • python313Packages.ruff.dist
  • python313Packages.xhtml2pdf
  • python313Packages.xhtml2pdf.dist
  • python313Packages.xsdata
  • python313Packages.xsdata.dist
  • ruff
  • ruff-lsp
  • ruff-lsp.dist
  • tests.devShellTools.nixos
  • tests.testers.nixosTest-example
  • tests.testers.runNixOSTest-example
  • tests.trivial-builders.references
  • vunnel
  • vunnel.dist

x86_64-darwin

⏩ 1 package marked as broken and skipped:
  • python312Packages.ifcopenshell
❌ 21 packages failed to build:
  • python312Packages.mypy-boto3-builder
  • python312Packages.mypy-boto3-builder.dist
  • python312Packages.pytest-examples
  • python312Packages.pytest-examples.dist
  • python312Packages.pytest-ruff
  • python312Packages.pytest-ruff.dist
  • python313Packages.marimo
  • python313Packages.marimo.dist
  • python313Packages.mypy-boto3-builder
  • python313Packages.mypy-boto3-builder.dist
  • python313Packages.pytest-examples
  • python313Packages.pytest-examples.dist
  • python313Packages.pytest-ruff
  • python313Packages.pytest-ruff.dist
  • python313Packages.python-lsp-ruff
  • python313Packages.python-lsp-ruff.dist
  • tests.devShellTools.nixos
  • tests.testers.lycheeLinkCheck.network
  • tests.testers.nixosTest-example
  • tests.testers.runNixOSTest-example
  • tests.trivial-builders.references
✅ 35 packages built:
  • dmarc-metrics-exporter
  • dmarc-metrics-exporter.dist
  • maigret
  • maigret.dist
  • marimo (python312Packages.marimo)
  • marimo.dist (python312Packages.marimo.dist)
  • nbqa
  • nbqa.dist
  • nixpkgs-openjdk-updater
  • nixpkgs-openjdk-updater.dist
  • openapi-python-client
  • openapi-python-client.dist
  • python312Packages.pyhanko
  • python312Packages.pyhanko.dist
  • python312Packages.python-lsp-ruff
  • python312Packages.python-lsp-ruff.dist
  • python312Packages.ruff
  • python312Packages.ruff.dist
  • python312Packages.xhtml2pdf
  • python312Packages.xhtml2pdf.dist
  • python312Packages.xsdata
  • python312Packages.xsdata.dist
  • python313Packages.pyhanko
  • python313Packages.pyhanko.dist
  • python313Packages.ruff
  • python313Packages.ruff.dist
  • python313Packages.xhtml2pdf
  • python313Packages.xhtml2pdf.dist
  • python313Packages.xsdata
  • python313Packages.xsdata.dist
  • ruff
  • ruff-lsp
  • ruff-lsp.dist
  • vunnel
  • vunnel.dist

aarch64-darwin

⏩ 1 package marked as broken and skipped:
  • python312Packages.ifcopenshell
❌ 23 packages failed to build:
  • maigret
  • maigret.dist
  • python312Packages.mypy-boto3-builder
  • python312Packages.mypy-boto3-builder.dist
  • python312Packages.pytest-examples
  • python312Packages.pytest-examples.dist
  • python312Packages.pytest-ruff
  • python312Packages.pytest-ruff.dist
  • python313Packages.marimo
  • python313Packages.marimo.dist
  • python313Packages.mypy-boto3-builder
  • python313Packages.mypy-boto3-builder.dist
  • python313Packages.pytest-examples
  • python313Packages.pytest-examples.dist
  • python313Packages.pytest-ruff
  • python313Packages.pytest-ruff.dist
  • python313Packages.python-lsp-ruff
  • python313Packages.python-lsp-ruff.dist
  • tests.devShellTools.nixos
  • tests.testers.lycheeLinkCheck.network
  • tests.testers.nixosTest-example
  • tests.testers.runNixOSTest-example
  • tests.trivial-builders.references
✅ 33 packages built:
  • dmarc-metrics-exporter
  • dmarc-metrics-exporter.dist
  • marimo (python312Packages.marimo)
  • marimo.dist (python312Packages.marimo.dist)
  • nbqa
  • nbqa.dist
  • nixpkgs-openjdk-updater
  • nixpkgs-openjdk-updater.dist
  • openapi-python-client
  • openapi-python-client.dist
  • python312Packages.pyhanko
  • python312Packages.pyhanko.dist
  • python312Packages.python-lsp-ruff
  • python312Packages.python-lsp-ruff.dist
  • python312Packages.ruff
  • python312Packages.ruff.dist
  • python312Packages.xhtml2pdf
  • python312Packages.xhtml2pdf.dist
  • python312Packages.xsdata
  • python312Packages.xsdata.dist
  • python313Packages.pyhanko
  • python313Packages.pyhanko.dist
  • python313Packages.ruff
  • python313Packages.ruff.dist
  • python313Packages.xhtml2pdf
  • python313Packages.xhtml2pdf.dist
  • python313Packages.xsdata
  • python313Packages.xsdata.dist
  • ruff
  • ruff-lsp
  • ruff-lsp.dist
  • vunnel
  • vunnel.dist

@@ -0,0 +1,28 @@
{
buildPythonPackage,
pkgs,
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This effectively breaks cross-compilation.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
pkgs,
ruff,

baloo
baloo previously requested changes Dec 24, 2024
Copy link
Member

@baloo baloo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This breaks python3Packages.pytest-ruff which currently builds on master.

I think it requires the following patch:

diff --git a/pkgs/by-name/ru/ruff/package.nix b/pkgs/by-name/ru/ruff/package.nix
index 646ef93836f5..662b7409ec8e 100644
--- a/pkgs/by-name/ru/ruff/package.nix
+++ b/pkgs/by-name/ru/ruff/package.nix
@@ -26,14 +26,6 @@ rustPlatform.buildRustPackage rec {
     hash = "sha256-c5d2XaoEjCHWMdjTLD6CnwP8rpSXTUrmKSs0QWQ6UG0=";
   };

-  # Do not rely on path lookup at runtime to find the ruff binary
-  postPatch = ''
-    substituteInPlace python/ruff/__main__.py \
-      --replace-fail \
-        'ruff_exe = "ruff" + sysconfig.get_config_var("EXE")' \
-        'return "${placeholder "bin"}/bin/ruff"'
-  '';
-
   useFetchCargoVendor = true;
   cargoHash = "sha256-jbUjsIJRpkKYc+qHN8tkcZrcjPTFJfdCsatezzdX4Ss=";

diff --git a/pkgs/development/python-modules/ruff/default.nix b/pkgs/development/python-modules/ruff/default.nix
index 8d79eee66f4b..8f5efa9a240b 100644
--- a/pkgs/development/python-modules/ruff/default.nix
+++ b/pkgs/development/python-modules/ruff/default.nix
@@ -10,12 +10,19 @@ buildPythonPackage {
     pname
     version
     src
-    postPatch
     cargoDeps
     postInstall
     meta
     ;

+  # Do not rely on path lookup at runtime to find the ruff binary
+  postPatch = ''
+    substituteInPlace python/ruff/__main__.py \
+      --replace-fail \
+        'ruff_exe = "ruff" + sysconfig.get_config_var("EXE")' \
+        'return "${placeholder "out"}/bin/ruff"'
+  '';
+
   pyproject = true;

   nativeBuildInputs = [

(the python derivation does not carry a bin output)

@GaetanLepage
Copy link
Contributor

This breaks python3Packages.pytest-ruff which currently builds on master.

Good catch, thanks

Using `buildPythonPackage` make `ruff` propagate the Python used for the build, which might not be the same Python as you want in your development shell.

NixOS#350654 changed the ruff top-level attribute to be built with Python modules.
This doesn't actually make much sense, we have versioned Python sets, and including just the one Python in the top-level package isn't helpful, and causes issues downstream related to PATH & PYTHONPATH.

See my related [uv PR](NixOS#357113 (comment)).
@GaetanLepage
Copy link
Contributor

nixpkgs-review result

Generated using nixpkgs-review.

Command: nixpkgs-review pr 358029


x86_64-linux

❌ 5 packages failed to build:
  • python313Packages.marimo
  • python313Packages.marimo.dist
  • python313Packages.python-lsp-ruff
  • python313Packages.python-lsp-ruff.dist
  • tests.testers.lycheeLinkCheck.network
✅ 52 packages built:
  • dmarc-metrics-exporter
  • dmarc-metrics-exporter.dist
  • maigret
  • maigret.dist
  • marimo (python312Packages.marimo)
  • marimo.dist (python312Packages.marimo.dist)
  • nbqa
  • nbqa.dist
  • nixpkgs-openjdk-updater
  • nixpkgs-openjdk-updater.dist
  • openapi-python-client
  • openapi-python-client.dist
  • python312Packages.ifcopenshell
  • python312Packages.mypy-boto3-builder
  • python312Packages.mypy-boto3-builder.dist
  • python312Packages.pyhanko
  • python312Packages.pyhanko.dist
  • python312Packages.pytest-examples
  • python312Packages.pytest-examples.dist
  • python312Packages.pytest-ruff
  • python312Packages.pytest-ruff.dist
  • python312Packages.python-lsp-ruff
  • python312Packages.python-lsp-ruff.dist
  • python312Packages.ruff
  • python312Packages.ruff.dist
  • python312Packages.xhtml2pdf
  • python312Packages.xhtml2pdf.dist
  • python312Packages.xsdata
  • python312Packages.xsdata.dist
  • python313Packages.mypy-boto3-builder
  • python313Packages.mypy-boto3-builder.dist
  • python313Packages.pyhanko
  • python313Packages.pyhanko.dist
  • python313Packages.pytest-examples
  • python313Packages.pytest-examples.dist
  • python313Packages.pytest-ruff
  • python313Packages.pytest-ruff.dist
  • python313Packages.ruff
  • python313Packages.ruff.dist
  • python313Packages.xhtml2pdf
  • python313Packages.xhtml2pdf.dist
  • python313Packages.xsdata
  • python313Packages.xsdata.dist
  • ruff
  • ruff-lsp
  • ruff-lsp.dist
  • tests.devShellTools.nixos
  • tests.testers.nixosTest-example
  • tests.testers.runNixOSTest-example
  • tests.trivial-builders.references
  • vunnel
  • vunnel.dist

aarch64-linux

❌ 5 packages failed to build:
  • python313Packages.marimo
  • python313Packages.marimo.dist
  • python313Packages.python-lsp-ruff
  • python313Packages.python-lsp-ruff.dist
  • tests.testers.lycheeLinkCheck.network
✅ 52 packages built:
  • dmarc-metrics-exporter
  • dmarc-metrics-exporter.dist
  • maigret
  • maigret.dist
  • marimo (python312Packages.marimo)
  • marimo.dist (python312Packages.marimo.dist)
  • nbqa
  • nbqa.dist
  • nixpkgs-openjdk-updater
  • nixpkgs-openjdk-updater.dist
  • openapi-python-client
  • openapi-python-client.dist
  • python312Packages.ifcopenshell
  • python312Packages.mypy-boto3-builder
  • python312Packages.mypy-boto3-builder.dist
  • python312Packages.pyhanko
  • python312Packages.pyhanko.dist
  • python312Packages.pytest-examples
  • python312Packages.pytest-examples.dist
  • python312Packages.pytest-ruff
  • python312Packages.pytest-ruff.dist
  • python312Packages.python-lsp-ruff
  • python312Packages.python-lsp-ruff.dist
  • python312Packages.ruff
  • python312Packages.ruff.dist
  • python312Packages.xhtml2pdf
  • python312Packages.xhtml2pdf.dist
  • python312Packages.xsdata
  • python312Packages.xsdata.dist
  • python313Packages.mypy-boto3-builder
  • python313Packages.mypy-boto3-builder.dist
  • python313Packages.pyhanko
  • python313Packages.pyhanko.dist
  • python313Packages.pytest-examples
  • python313Packages.pytest-examples.dist
  • python313Packages.pytest-ruff
  • python313Packages.pytest-ruff.dist
  • python313Packages.ruff
  • python313Packages.ruff.dist
  • python313Packages.xhtml2pdf
  • python313Packages.xhtml2pdf.dist
  • python313Packages.xsdata
  • python313Packages.xsdata.dist
  • ruff
  • ruff-lsp
  • ruff-lsp.dist
  • tests.devShellTools.nixos
  • tests.testers.nixosTest-example
  • tests.testers.runNixOSTest-example
  • tests.trivial-builders.references
  • vunnel
  • vunnel.dist

x86_64-darwin

⏩ 1 package marked as broken and skipped:
  • python312Packages.ifcopenshell
❌ 11 packages failed to build:
  • python313Packages.marimo
  • python313Packages.marimo.dist
  • python313Packages.pytest-examples
  • python313Packages.pytest-examples.dist
  • python313Packages.python-lsp-ruff
  • python313Packages.python-lsp-ruff.dist
  • tests.devShellTools.nixos
  • tests.testers.lycheeLinkCheck.network
  • tests.testers.nixosTest-example
  • tests.testers.runNixOSTest-example
  • tests.trivial-builders.references
✅ 45 packages built:
  • dmarc-metrics-exporter
  • dmarc-metrics-exporter.dist
  • maigret
  • maigret.dist
  • marimo (python312Packages.marimo)
  • marimo.dist (python312Packages.marimo.dist)
  • nbqa
  • nbqa.dist
  • nixpkgs-openjdk-updater
  • nixpkgs-openjdk-updater.dist
  • openapi-python-client
  • openapi-python-client.dist
  • python312Packages.mypy-boto3-builder
  • python312Packages.mypy-boto3-builder.dist
  • python312Packages.pyhanko
  • python312Packages.pyhanko.dist
  • python312Packages.pytest-examples
  • python312Packages.pytest-examples.dist
  • python312Packages.pytest-ruff
  • python312Packages.pytest-ruff.dist
  • python312Packages.python-lsp-ruff
  • python312Packages.python-lsp-ruff.dist
  • python312Packages.ruff
  • python312Packages.ruff.dist
  • python312Packages.xhtml2pdf
  • python312Packages.xhtml2pdf.dist
  • python312Packages.xsdata
  • python312Packages.xsdata.dist
  • python313Packages.mypy-boto3-builder
  • python313Packages.mypy-boto3-builder.dist
  • python313Packages.pyhanko
  • python313Packages.pyhanko.dist
  • python313Packages.pytest-ruff
  • python313Packages.pytest-ruff.dist
  • python313Packages.ruff
  • python313Packages.ruff.dist
  • python313Packages.xhtml2pdf
  • python313Packages.xhtml2pdf.dist
  • python313Packages.xsdata
  • python313Packages.xsdata.dist
  • ruff
  • ruff-lsp
  • ruff-lsp.dist
  • vunnel
  • vunnel.dist

aarch64-darwin

⏩ 1 package marked as broken and skipped:
  • python312Packages.ifcopenshell
❌ 9 packages failed to build:
  • python313Packages.marimo
  • python313Packages.marimo.dist
  • python313Packages.python-lsp-ruff
  • python313Packages.python-lsp-ruff.dist
  • tests.devShellTools.nixos
  • tests.testers.lycheeLinkCheck.network
  • tests.testers.nixosTest-example
  • tests.testers.runNixOSTest-example
  • tests.trivial-builders.references
✅ 47 packages built:
  • dmarc-metrics-exporter
  • dmarc-metrics-exporter.dist
  • maigret
  • maigret.dist
  • marimo (python312Packages.marimo)
  • marimo.dist (python312Packages.marimo.dist)
  • nbqa
  • nbqa.dist
  • nixpkgs-openjdk-updater
  • nixpkgs-openjdk-updater.dist
  • openapi-python-client
  • openapi-python-client.dist
  • python312Packages.mypy-boto3-builder
  • python312Packages.mypy-boto3-builder.dist
  • python312Packages.pyhanko
  • python312Packages.pyhanko.dist
  • python312Packages.pytest-examples
  • python312Packages.pytest-examples.dist
  • python312Packages.pytest-ruff
  • python312Packages.pytest-ruff.dist
  • python312Packages.python-lsp-ruff
  • python312Packages.python-lsp-ruff.dist
  • python312Packages.ruff
  • python312Packages.ruff.dist
  • python312Packages.xhtml2pdf
  • python312Packages.xhtml2pdf.dist
  • python312Packages.xsdata
  • python312Packages.xsdata.dist
  • python313Packages.mypy-boto3-builder
  • python313Packages.mypy-boto3-builder.dist
  • python313Packages.pyhanko
  • python313Packages.pyhanko.dist
  • python313Packages.pytest-examples
  • python313Packages.pytest-examples.dist
  • python313Packages.pytest-ruff
  • python313Packages.pytest-ruff.dist
  • python313Packages.ruff
  • python313Packages.ruff.dist
  • python313Packages.xhtml2pdf
  • python313Packages.xhtml2pdf.dist
  • python313Packages.xsdata
  • python313Packages.xsdata.dist
  • ruff
  • ruff-lsp
  • ruff-lsp.dist
  • vunnel
  • vunnel.dist

@GaetanLepage GaetanLepage requested a review from baloo December 25, 2024 13:17
@GaetanLepage
Copy link
Contributor

@baloo is cross-compilation still broken ?

@wegank wegank added the 12.approvals: 1 This PR was reviewed and approved by one reputable person label Dec 26, 2024
@GaetanLepage
Copy link
Contributor

nixpkgs-review result

Generated using nixpkgs-review.

Command: nixpkgs-review pr 358029


x86_64-linux

❌ 4 packages failed to build:
  • python313Packages.marimo
  • python313Packages.marimo.dist
  • python313Packages.python-lsp-ruff
  • python313Packages.python-lsp-ruff.dist
✅ 53 packages built:
  • dmarc-metrics-exporter
  • dmarc-metrics-exporter.dist
  • maigret
  • maigret.dist
  • marimo (python312Packages.marimo)
  • marimo.dist (python312Packages.marimo.dist)
  • nbqa
  • nbqa.dist
  • nixpkgs-openjdk-updater
  • nixpkgs-openjdk-updater.dist
  • openapi-python-client
  • openapi-python-client.dist
  • python312Packages.ifcopenshell
  • python312Packages.mypy-boto3-builder
  • python312Packages.mypy-boto3-builder.dist
  • python312Packages.pyhanko
  • python312Packages.pyhanko.dist
  • python312Packages.pytest-examples
  • python312Packages.pytest-examples.dist
  • python312Packages.pytest-ruff
  • python312Packages.pytest-ruff.dist
  • python312Packages.python-lsp-ruff
  • python312Packages.python-lsp-ruff.dist
  • python312Packages.ruff
  • python312Packages.ruff.dist
  • python312Packages.xhtml2pdf
  • python312Packages.xhtml2pdf.dist
  • python312Packages.xsdata
  • python312Packages.xsdata.dist
  • python313Packages.mypy-boto3-builder
  • python313Packages.mypy-boto3-builder.dist
  • python313Packages.pyhanko
  • python313Packages.pyhanko.dist
  • python313Packages.pytest-examples
  • python313Packages.pytest-examples.dist
  • python313Packages.pytest-ruff
  • python313Packages.pytest-ruff.dist
  • python313Packages.ruff
  • python313Packages.ruff.dist
  • python313Packages.xhtml2pdf
  • python313Packages.xhtml2pdf.dist
  • python313Packages.xsdata
  • python313Packages.xsdata.dist
  • ruff
  • ruff-lsp
  • ruff-lsp.dist
  • tests.devShellTools.nixos
  • tests.testers.lycheeLinkCheck.network
  • tests.testers.nixosTest-example
  • tests.testers.runNixOSTest-example
  • tests.trivial-builders.references
  • vunnel
  • vunnel.dist

aarch64-linux

❌ 4 packages failed to build:
  • python313Packages.marimo
  • python313Packages.marimo.dist
  • python313Packages.python-lsp-ruff
  • python313Packages.python-lsp-ruff.dist
✅ 53 packages built:
  • dmarc-metrics-exporter
  • dmarc-metrics-exporter.dist
  • maigret
  • maigret.dist
  • marimo (python312Packages.marimo)
  • marimo.dist (python312Packages.marimo.dist)
  • nbqa
  • nbqa.dist
  • nixpkgs-openjdk-updater
  • nixpkgs-openjdk-updater.dist
  • openapi-python-client
  • openapi-python-client.dist
  • python312Packages.ifcopenshell
  • python312Packages.mypy-boto3-builder
  • python312Packages.mypy-boto3-builder.dist
  • python312Packages.pyhanko
  • python312Packages.pyhanko.dist
  • python312Packages.pytest-examples
  • python312Packages.pytest-examples.dist
  • python312Packages.pytest-ruff
  • python312Packages.pytest-ruff.dist
  • python312Packages.python-lsp-ruff
  • python312Packages.python-lsp-ruff.dist
  • python312Packages.ruff
  • python312Packages.ruff.dist
  • python312Packages.xhtml2pdf
  • python312Packages.xhtml2pdf.dist
  • python312Packages.xsdata
  • python312Packages.xsdata.dist
  • python313Packages.mypy-boto3-builder
  • python313Packages.mypy-boto3-builder.dist
  • python313Packages.pyhanko
  • python313Packages.pyhanko.dist
  • python313Packages.pytest-examples
  • python313Packages.pytest-examples.dist
  • python313Packages.pytest-ruff
  • python313Packages.pytest-ruff.dist
  • python313Packages.ruff
  • python313Packages.ruff.dist
  • python313Packages.xhtml2pdf
  • python313Packages.xhtml2pdf.dist
  • python313Packages.xsdata
  • python313Packages.xsdata.dist
  • ruff
  • ruff-lsp
  • ruff-lsp.dist
  • tests.devShellTools.nixos
  • tests.testers.lycheeLinkCheck.network
  • tests.testers.nixosTest-example
  • tests.testers.runNixOSTest-example
  • tests.trivial-builders.references
  • vunnel
  • vunnel.dist

x86_64-darwin

⏩ 1 package marked as broken and skipped:
  • python312Packages.ifcopenshell
❌ 9 packages failed to build:
  • python313Packages.marimo
  • python313Packages.marimo.dist
  • python313Packages.python-lsp-ruff
  • python313Packages.python-lsp-ruff.dist
  • tests.devShellTools.nixos
  • tests.testers.lycheeLinkCheck.network
  • tests.testers.nixosTest-example
  • tests.testers.runNixOSTest-example
  • tests.trivial-builders.references
✅ 47 packages built:
  • dmarc-metrics-exporter
  • dmarc-metrics-exporter.dist
  • maigret
  • maigret.dist
  • marimo (python312Packages.marimo)
  • marimo.dist (python312Packages.marimo.dist)
  • nbqa
  • nbqa.dist
  • nixpkgs-openjdk-updater
  • nixpkgs-openjdk-updater.dist
  • openapi-python-client
  • openapi-python-client.dist
  • python312Packages.mypy-boto3-builder
  • python312Packages.mypy-boto3-builder.dist
  • python312Packages.pyhanko
  • python312Packages.pyhanko.dist
  • python312Packages.pytest-examples
  • python312Packages.pytest-examples.dist
  • python312Packages.pytest-ruff
  • python312Packages.pytest-ruff.dist
  • python312Packages.python-lsp-ruff
  • python312Packages.python-lsp-ruff.dist
  • python312Packages.ruff
  • python312Packages.ruff.dist
  • python312Packages.xhtml2pdf
  • python312Packages.xhtml2pdf.dist
  • python312Packages.xsdata
  • python312Packages.xsdata.dist
  • python313Packages.mypy-boto3-builder
  • python313Packages.mypy-boto3-builder.dist
  • python313Packages.pyhanko
  • python313Packages.pyhanko.dist
  • python313Packages.pytest-examples
  • python313Packages.pytest-examples.dist
  • python313Packages.pytest-ruff
  • python313Packages.pytest-ruff.dist
  • python313Packages.ruff
  • python313Packages.ruff.dist
  • python313Packages.xhtml2pdf
  • python313Packages.xhtml2pdf.dist
  • python313Packages.xsdata
  • python313Packages.xsdata.dist
  • ruff
  • ruff-lsp
  • ruff-lsp.dist
  • vunnel
  • vunnel.dist

aarch64-darwin

⏩ 1 package marked as broken and skipped:
  • python312Packages.ifcopenshell
❌ 9 packages failed to build:
  • python313Packages.marimo
  • python313Packages.marimo.dist
  • python313Packages.python-lsp-ruff
  • python313Packages.python-lsp-ruff.dist
  • tests.devShellTools.nixos
  • tests.testers.lycheeLinkCheck.network
  • tests.testers.nixosTest-example
  • tests.testers.runNixOSTest-example
  • tests.trivial-builders.references
✅ 47 packages built:
  • dmarc-metrics-exporter
  • dmarc-metrics-exporter.dist
  • maigret
  • maigret.dist
  • marimo (python312Packages.marimo)
  • marimo.dist (python312Packages.marimo.dist)
  • nbqa
  • nbqa.dist
  • nixpkgs-openjdk-updater
  • nixpkgs-openjdk-updater.dist
  • openapi-python-client
  • openapi-python-client.dist
  • python312Packages.mypy-boto3-builder
  • python312Packages.mypy-boto3-builder.dist
  • python312Packages.pyhanko
  • python312Packages.pyhanko.dist
  • python312Packages.pytest-examples
  • python312Packages.pytest-examples.dist
  • python312Packages.pytest-ruff
  • python312Packages.pytest-ruff.dist
  • python312Packages.python-lsp-ruff
  • python312Packages.python-lsp-ruff.dist
  • python312Packages.ruff
  • python312Packages.ruff.dist
  • python312Packages.xhtml2pdf
  • python312Packages.xhtml2pdf.dist
  • python312Packages.xsdata
  • python312Packages.xsdata.dist
  • python313Packages.mypy-boto3-builder
  • python313Packages.mypy-boto3-builder.dist
  • python313Packages.pyhanko
  • python313Packages.pyhanko.dist
  • python313Packages.pytest-examples
  • python313Packages.pytest-examples.dist
  • python313Packages.pytest-ruff
  • python313Packages.pytest-ruff.dist
  • python313Packages.ruff
  • python313Packages.ruff.dist
  • python313Packages.xhtml2pdf
  • python313Packages.xhtml2pdf.dist
  • python313Packages.xsdata
  • python313Packages.xsdata.dist
  • ruff
  • ruff-lsp
  • ruff-lsp.dist
  • vunnel
  • vunnel.dist

@GaetanLepage
Copy link
Contributor

Merging as it seems to work fine.

@GaetanLepage GaetanLepage merged commit d4feb3f into NixOS:master Dec 28, 2024
41 of 42 checks passed
@@ -0,0 +1,28 @@
{
buildPythonPackage,
pkgs,
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
pkgs,
ruff,

}:

buildPythonPackage {
inherit (pkgs.ruff)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
inherit (pkgs.ruff)
inherit (ruff)

ruff = toPythonModule (pkgs.ruff.override {
python3Packages = self;
});
ruff = callPackage ../development/python-modules/ruff { };
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
ruff = callPackage ../development/python-modules/ruff { };
ruff = callPackage ../development/python-modules/ruff {
inherit (pkgs) ruff;
};

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants