Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

322
Views
Cómo anular globalmente un pythonPackage en nix

Estoy tratando de anular un paquete de python (uvloop) globalmente, en nix, de modo que el negro vea la anulación.

Las pruebas de uvloop (paquete de python) fallan porque estoy trabajando detrás de un firewall. Puedo construir cosas que usen uvloop editando la derivación de nixpkgs directamente (ugh) para establecer doCheck = false .

Estoy tratando de codificar esto en una superposición, pero sin éxito: se lee la superposición (por ejemplo, los errores de sintaxis causan fallas), pero nada de lo que hago en la superposición detiene la ejecución de las pruebas.

Intenté seguir los consejos de https://nixos.wiki/wiki/Overlays , https://nixos.org/manual/nixpkgs/stable/#how-to-override-a-python-package-using-overlays y ¿Cómo usar python personalizado con paquetes existentes - derivación nix? (superponiendo python usando packageOverrides; con pythonOverrides; y con y sin usar overridePythonAttrs); tanto para python3 como para python39; pero sin éxito.

P.ej,

 self: super: { python3 = super.python3.override { packageOverrides = pyself: pysuper: { uvloop = pysuper.uvloop.overrideAttrs (_: { doCheck = false; }); }; }; }

Para obtener puntos de bonificación, me gustaría lograr esto para todas las instancias del paquete python uvloop, no solo el de 3.9, pero aceptaré cualquier ayuda que pueda obtener.

Gracias,

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Lo siguiente funcionó para mí. Aplica un parche a twitch-chat-downloader (aplicación de Python) y un parche a twitch-python (biblioteca de Python utilizada por twitch-chat-downloader). nix-env -iA nixpkgs.twitch-chat-downloader instaló una copia parcheada de twitch-chat-downloader que utiliza una copia parcheada de twitch-python.

 { packageOverrides = pkgs: { python3 = pkgs.python3.override { packageOverrides = python-self: python-super: { twitch-python = python-super.twitch-python.overrideAttrs (attrs: { patches = (attrs.patches or []) ++ [ ./twitch-allow-no-token.patch ]; }); }; }; twitch-chat-downloader = pkgs.twitch-chat-downloader.overrideAttrs (attrs: { patches = (attrs.patches or []) ++ [ ./twitch-chat-downloader-no-oauth.patch ]; }); }; }
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!