Set of expressions to run angr
on Nix/NixOS.
Many packages in angr
's dependency tree are not available in past releases.
In consequence, it is necessary to use the unstable
channel (more info about channels).
Note that unstable
may lag behind the master
branch of NixOS/nixpkgs (see status.nixos.org);
In that case, if you cannot wait for it, you can always use a local fork of nixpkgs
...
This repository has been made part of the Nix User Repository (see details, documentation, and installation guide).
With NUR set-up, angr
can be made available to a nix-shell
with the following:
nix-shell -p 'python3.withPackages(ps: with ps; [ nur.repos.angr.python3Packages.angr ])'
git clone git@github.com:angr/nixpkgs.git angr-nixpkgs
export ANGR_NIXPKGS="$(pwd)"
nix-shell --arg ANGR_NIXPKGS_PATH "$ANGR_NIXPKGS"
- For a more "persistent" solution, add
export ANGR_NIXPKGS="$(pwd)/angr-nixpkgs"
to your shell configuration file. - To stay up-to-date, you will have to fetch and rebase your local repository manually.
In all this, please keep in mind that angr is a large project being frantically worked on by a very small group of overworked students. It's open source, with a typical open source support model (i.e., pray for the best). 1
That being said, you are more than welcome to open issues, and even submit pull requests; Feedback appreciated!
1 Source: https://angr.io . ↩