I recently wanted to try out (aider)[https://aider.chat], and ran into a problem that I continually run into: how do I install one-off, experimental software into my environment, without being a nix master, or spending an extreme amount of time on every new package.

In this case, it is a new python package available in pip. It isn’t available in nixpkgs, and isn’t nixified. pip2nix doesn’t work on arm64 Macs (bug here)[https://github.com/nix-community/pip2nix/issues/88], so I can’t use that to try and create a flake that works with this package. It isn’t using poetry, so poetry2nix is out.

How are you dealing with this problem? Are you all experts in nix, and writing flakes for every piece of software that you want to play around with? Do you have a “dirty” part of your environment that you install this kind of stuff into? (I looked into using pipx to install this, however that (also has a bug)[https://github.com/NixOS/nixpkgs/issues/171429] in nixpkgs.)

Thoughts?

  • thejevans
    link
    fedilink
    English
    4
    edit-2
    1 year ago

    How about this. I just tested this out on my NixOS machine.

    nix-shell -p poetry
    poetry new aider-playground
    cd aider-playground
    poetry add aider-chat
    # I needed to better specify the python version in pyproject.toml here for scipy, but the error message told me exactly how to specify it.
    poetry shell
    aider demo.py
    

    This should give you quick access to aider to play around with it.