poetry2nix
direnv
poetry2nix | direnv | |
---|---|---|
21 | 159 | |
731 | 11,734 | |
3.6% | 1.2% | |
9.7 | 8.7 | |
4 days ago | 20 days ago | |
Nix | Go | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
poetry2nix
-
Things I've learned about building CLI tools in Python
How about converting it to Nix derivation?
https://github.com/nix-community/poetry2nix
-
Poetry2nix: mismatch cryptography sha256 but unable to modify
This looks really strange because I do not know how to solve it and also because it looks like the sha256 that I am setting is not the one that Nix will match. I read also https://github.com/nix-community/poetry2nix/issues/413 but I was not able to solve the problem.
-
As if there weren't enough packaging tools already: mitsuhiko/rye: an experimental alternative to poetry/pip/pipenv/venv/virtualenv/pdm/hatch/…
There's a project that does this with using Nix: https://github.com/takeda/nix-cde (this is a wrapper around https://github.com/nix-community/poetry2nix)
-
Issue building pycairo in python flake
{ description = "Application packaged using poetry2nix"; inputs.flake-utils.url = "github:numtide/flake-utils"; inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; inputs.poetry2nix = { url = "github:nix-community/poetry2nix"; inputs.nixpkgs.follows = "nixpkgs"; }; outputs = { self, nixpkgs, flake-utils, poetry2nix }: flake-utils.lib.eachDefaultSystem (system: let # see https://github.com/nix-community/poetry2nix/tree/master#api for more functions and examples. inherit (poetry2nix.legacyPackages.${system}) mkPoetryEnv; pkgs = import nixpkgs {inherit system;}; python = pkgs.python310; pythonEnv = mkPoetryEnv { inherit python; projectDir = ./.; preferWheels = true; }; in { #packages.default = mkPoetryEnv { # projectDir = ./.; # python = pkgs.python310; #}; devShells.default = pkgs.mkShell { buildInputs = [pythonEnv]; packages = [ poetry2nix.packages.${system}.poetry pkgs.cairo pkgs.pkg-config pkgs.gobject-introspection pkgs.tk ]; }; }); }
-
Setting up Stabe Diffusion on NixOS
A cleaner way might be to use https://github.com/nix-community/poetry2nix which can load poetry.lock inside Nix. I still need to try it for torch, but it does seem like a clean way to use it.
- Ask HN: Is anyone successfully self-hosting Firefox Sync?
-
How do I install dependencies for a python application
The README for poetry2nix (https://github.com/nix-community/poetry2nix) seems to indicate that all extras should be enabled by default.
-
how to install Python packages not yet in the Nix repo?
if it's for a project you're working on, i'd recommend just using poetry2nix
- What is the point of containers in prod if one can use Nix everywhere?
-
Issue when installing python packages
poetry2nix is another popular option.
direnv
-
Show HN: Dotenv, if it is a Unix utility
I think direnv already does a good job in this space, and it's already available in your package manager.
https://direnv.net/
-
Mise is a polyglot tool version manager
I switched from asdf to mise after a comment on lobste.rs[1] suggested I do so a few months ago, and I have been very happy with it.
It sands off some of asdf's sharp UI edges and provides a somewhat larger but still reasonable feature set; I've also replaced most of my direnv[2] usage with it.
The mise -> asdf comparison page is useful[3]
1: https://lobste.rs/s/66uxbj/how_love_homebrew#c_mvmsjp
2: https://direnv.net/
3: https://mise.jdx.dev/dev-tools/comparison-to-asdf.html
-
Nix-direnv is a quality of life improvement
I also made the export diff configurable, motivated by this post: https://github.com/direnv/direnv/pull/1233
- Direnv – Unclutter Your .profile
-
Conditional Git Configuration
Nice.
For years I've been using [direnv](https://direnv.net/) for this, setting environment variables which git picks up. This looks like a more feature complete equivalent, although to be honest I only really need switching of committer email and the SSH key used.
- FLaNK 25 December 2023
-
Development Environments with Guix, similar to devenv.sh
Direnv, for the uninitiated, loads and unloads environment variables when directories are entered and exited. Under every project folder there is a `$PROJ_DIR/.envrc` which contains:
-
Emacs Advent Calendar 9: devdocs, code-cells, dREPL, etc.
buffer-env: A pure-Elisp version of the direnv utility. Useful to make Emacs aware of Python virtualenvs (which, judging by the questions posted here, is unfortunately still a complication for a lot of people). Similar to (and inspired by) envrc, but doesn't require the direnv program.
-
golang cli vs env var in windows?
You can look at direnv to see this in action as they wrote shell hooks that get loaded into the shell profile and are executed on every prompt. https://direnv.net/
-
Nix Survival Mode: macOS upgrades won't break Nix anymore
Yes, most Nix users employ https://direnv.net or the equivalent for your IDE of choice. Emacs for instance has https://github.com/purcell/envrc which set per-buffer variables.
What are some alternatives?
mach-nix - Create highly reproducible python environments
spaceship-prompt - :rocket::star: Minimalistic, powerful and extremely customizable Zsh prompt
flake-utils-plus - Use Nix flakes without any fluff.
Pipenv - Python Development Workflow for Humans.
nixos-generators - Collection of image builders [maintainer=@Lassulus]
lorri - Your project's nix-env
age - A simple, modern and secure encryption tool (and Go library) with small explicit keys, no config options, and UNIX-style composability.
Home Manager using Nix - Manage a user environment using Nix [maintainer=@rycee]
spack - A flexible package manager that supports multiple versions, configurations, platforms, and compilers.
Neovim-from-scratch - 📚 A Neovim config designed from scratch to be understandable
nix - Nix, the purely functional package manager
Poetry - Python packaging and dependency management made easy