!rWxyQqNqMUDLECdsIf:blad.is

Poetry2nix

330 Members
https://github.com/nix-community/poetry2nix62 Servers

Load older messages


SenderMessageTime
8 May 2022
@semmulder2:matrix.orgsemmulder2 joined the room.12:33:38
@semmulder2:matrix.orgsemmulder2

Hi all! I'm working on a PR to fix this issue: https://github.com/nix-community/poetry2nix/issues/613. But I'm running into something I don't know how to solve. To address this ticket I need to adjust a SetupHook to format a TOML file. Since there don't seem to be standalone TOML formatters out there I am planning on using https://pypi.org/project/toml/ or https://github.com/sdispater/tomlkit. However, adding that library as a dependency to the SetupHook like so:

makeSetupHook
{
  name = "remove-path-dependencies.sh";
  deps = [ python.pythonForBuild.pkgs.toml ];
  substitutions = {
    inherit pythonInterpreter;
    pyprojectPatchScript = "${./pyproject-without-special-deps.py}";
    fields = [ "path" ];
    kind = "path";
  };
} ./remove-special-dependencies.sh

seems to result in nix-build getting stuck in a loop during instantiation of the derivations. I guess this has something to do with pythonForBuild and some bootstrapping stuff, but I'm unsure how to proceed. Does anyone have an idea?

12:33:42
@semmulder2:matrix.orgsemmulder2

Figured it out:

      dontRemoveSpecialDependencies = map (p: p.pname) (
        python.pythonForBuild.pkgs.requiredPythonModules (with python.pythonForBuild.pkgs; [
          tomlkit
          packaging
          poetry-core
        ]));
...
      nativeBuildInputs = [
        pythonPackages.poetry2nixFixupHook
      ]
      ++ lib.optional (!isSource && (getManyLinuxDeps fileInfo.name).str != null) autoPatchelfHook
      ++ lib.optionals (format == "pyproject" && ! lib.elem name dontRemoveSpecialDependencies) [
        pythonPackages.removePathDependenciesHook
        pythonPackages.removeGitDependenciesHook
      ];
14:40:12
9 May 2022
@adis:blad.isadisbladis
In reply to @landau:matrix.org

my default.nix:

{ pkgs ? import <nixpkgs> {} }:
let
  poetry2nix_repo = fetchGit {
    url = "https://github.com/nix-community/poetry2nix.git";
    ref = "master";
    rev = "96e3794e5d4d48e7f85d0dfcee90256a3a65475b";
  };
  poetry2nix = import poetry2nix_repo {
    inherit pkgs;
    poetry = pkgs.poetry;
  };
  zulipEnv = poetry2nix.mkPoetryEnv {
    projectDir = ./.;
    preferWheels = true;
    python = pkgs.python310;
  };
in zulipEnv.env
Could you point me to the repo this is in?
08:11:25
@landau:matrix.orgrhti haven't committed anything to git (and github) yet08:26:17
@landau:matrix.orgrht

but this is a snippet of my pyproject.toml:

[tool.poetry.dependencies]
python = "^3.10"
mypy = "^0.940"
08:27:11
@adis:blad.isadisbladis Right, the culprit here is a combination of preferWheels and the patch being applied regardless 08:37:25
@landau:matrix.orgrhtok let me try without wheels08:37:43
@adis:blad.isadisbladis It takes a while to build mypy as it's doing some native compilation using mypyc 08:38:42
@adis:blad.isadisbladis
In reply to @landau:matrix.org
ok let me try without wheels
I've fixed it on poetry2nix master
08:38:59
@landau:matrix.orgrhtok, let me try master instead08:39:13
@adis:blad.isadisbladisSo that we don't apply the patch in the case of a wheel08:39:26
@landau:matrix.orgrhtappreciate the fix. this means a lot!08:39:31
@landau:matrix.orgrhtit works!08:43:39
@adis:blad.isadisbladisGreat!08:44:00
10 May 2022
@plato:matrix.orgplato joined the room.07:00:37
@plato:matrix.orgplato I have a package that depends on platformdirs. This uses hatchling, which I could inject into platformdirs' buildInputs via overrideAttrs, however, it apparently also uses hatch-vcs. If I add self.hatch-vcs Nix tells me it doesn't know this. Do I have to package this separately? 07:02:12
@plato:matrix.orgplato Hm, platformdirs has requires = ["hatchling>=0.22.0", "hatch-vcs"] in the pyproject.toml 07:57:22
@artturin:matrix.orgArtturin
In reply to @plato:matrix.org
I have a package that depends on platformdirs. This uses hatchling, which I could inject into platformdirs' buildInputs via overrideAttrs, however, it apparently also uses hatch-vcs. If I add self.hatch-vcs Nix tells me it doesn't know this. Do I have to package this separately?
update poetry2nix to the latest version
13:27:52
@artturin:matrix.orgArtturinhttps://github.com/nix-community/poetry2nix/commit/8cfd980262181bd3ef15899708ceeb2e3f33958b13:27:55
@artturin:matrix.orgArtturinprobably fixed your issue13:28:02
12 May 2022
@vengmark2:matrix.orgl0b0I've tried working around https://github.com/nix-community/poetry2nix/issues/624 by upgrading to latest poetry2nix, but now I'm running into a probably more serious issue: "ImportError: /nix/store/ybkkrhdwdj227kr20vk8qnzqnmj7a06x-glibc-2.34-115/lib/libpthread.so.0: version `GLIBC_PRIVATE' not found (required by /nix/store/9bh3986bpragfjmr32gay8p95k91q4gy-glibc-2.33-47/lib/librt.so.1)". Any tips for how to proceed with either poetry2nix version?01:30:30
@vengmark2:matrix.orgl0b0The original code: https://github.com/linz/emergency-management-tools/pull/801:34:55
@plato:matrix.orgplatoI'm trying to use poetry2nix with a project that uses pyqt5 and am getting some errors relating to linked libraries. Anyone else using pyqt5?06:27:52
@plato:matrix.orgplato (Errors like error: auto-patchelf could not satisfy dependency libxkbcommon.so.0 wanted by /nix/store/365y9czw9gmk9q1lb63axfvd54ba3p8b-python3.9-pyqt5-qt5-5.15.2/lib/python3.9/site-packages/PyQt5/Qt5/plugins/xcbglintegrations/libqxcb-egl-integration.so) 06:28:08
@plato:matrix.orgplatoI've opened an issue for it here https://github.com/nix-community/poetry2nix/issues/63106:53:03
@adis:blad.isadisbladis l0b0: https://github.com/nix-community/poetry2nix/issues/628 is a "fun" one 10:29:48
@adis:blad.isadisbladisI had to bring out the BFG https://github.com/nix-community/poetry2nix/pull/634/files#diff-0f2ad087132a9d4858ae71477b3ba763c501f62ca3b529e5f1bf5d360d988c2d10:30:10
@vengmark2:matrix.orgl0b0 adisbladis: Thanks for fixing that! On a related note, how often are poetry2nix changes upstreamed to nixpkgs? 21:07:34
@vengmark2:matrix.orgl0b0 Re. https://github.com/nix-community/poetry2nix/issues/624, I've tried a few different things now (using mkShell and adding cc.lib to propagatedBuildInputs, using self.gdal and pkgs.gdal_2 instead of pkgs.gdal), and all fail in inscrutable ways. Not sure what I'm doing wrong, and whether any of these should be reported as bugs. 21:17:27

Show newer messages


Back to Room ListRoom Version: 6