4 ms·
Cool stuff! Have you considered using Nix for this? That way you get even more reproducibility, because all the OS packages (including Python and Poetry) can be
by l0b0 5y ago
Cool stuff! Have you considered using Nix for this? That way you get even more reproducibility, because all the OS packages (including Python and Poetry) can be easily pinned. If you only use packages which are already in nixpkgs you won't even need Poetry for easy repro.
Example[1]
[1] https://github.com/linz/stac/blob/6a82e92432945777fbd49631b48de5d381e1a4c3/shell.nix https://github.com/linz/stac/blob/6a82e92432945777fbd49631b4...
- lvass 5y agoThis example is too impractical if you need arbitrary, pinned PyPI packages. Trying to have Poetry work with Nix has been so painful to me that I'd just rather use a FHS shim.
- l0b0 5y agoPoetry2nix[1] is good for that. A lot of packages unfortunately require overrides to work, but poetry2nix ships with a bunch of these by default. [1] https://github.com/nix-community/poetry2nix https://github.com/nix-community/poetry2nix
- rch 5y agoI switched to Nixpkgs earlier this year, after getting annoyed with other options for working with Java and Python (in particular). NixOS on servers, Nixpkgs-darwin instead of homebrew (mostly), and Nixpkgs on Fedora for a laptop. Solid results so far.