* The major motivation is that Stabilizer ( since f1f15aca65 ) now contains multiple binaries, and the filenames of the generated ELFs (e.g. `dual-iir`, `lockin-internal`) do not necessarily contain the project name as a substring.
artiq: add dependency jsonschema
Support for resolution of https://github.com/m-labs/artiq/issues/1474
Co-authored-by: Stephan Maka <sm@m-labs.hk>
Reviewed-on: M-Labs/nix-scripts#38
Co-Authored-By: Astro <sm@m-labs.hk>
Co-Committed-By: Astro <sm@m-labs.hk>
Fixes https://github.com/m-labs/artiq-comtools/issues/7.
Basically, python subprocesses can't see all installed python packages
in a python environment because it uses the wrong Python exe (i.e. it
doesn't use the wrapped exe). This patches the PATH in the binary
wrappers (e.g. */bin/artiq_session) to include the correct python path.
Changes "name = '...-${version}" -> "pname = '...'" syntax everywhere
that is easy.
This matches current best nixpkgs convention.
The nixpkgs standard derivation will convert this to name =
"${pname}-${version}" automatically.
This also has the added benefit of adding the version to the filepath
for several packages that didn't have it before.
The only remaining files are ./artiq-full/extras.nix &
./artiq-fast/pkgs/python-deps.nix.
extras.nix had a
semi-confusing function that I didn't want to mess with.