- Edited
2.) I am doing that but presumably its not recommended to do that in artiq-master but we still run artiq master and the repository etc is still in the artiq-master install directory? If artiq-master is run from a terminal that is not in the nix develop/shell how is it exposed to the packages?
For example:
running artiq_ctlmgr in the ubuntu terminal
vs running artiq_ctlmgr in the nix-develop shell/terminal
3.) With respect to the installs. I am still a bit lost. While you helped me get it working (thank you). I am not sure that my understanding has increased. Here is another attempt (pypylon for basler cameras) at installing a github repository that is not in nix pkgs.
`
{
inputs.extrapkg.url = "git+https://git.m-labs.hk/M-Labs/artiq-extrapkg.git";
inputs.miniconf.url = "github:quartiq/miniconf";
inputs.pypylon = {url = github.com/basler/pypylon ;flake = false; };
outputs = { self, extrapkg, miniconf,pypylon }:
let
pkgs = extrapkg.pkgs;
artiq = extrapkg.packages.x86_64-linux;
pylon = pkgs.python3Packages.buildPythonPackage rec {
name = "pypylon";
src = pypylon.url;
format = "pyproject";
nativeBuildInputs = [ pkgs.python3Packages.setuptools pkgs.python3Packages.swig pkgs.python3Packages.wheel pkgs.python3Packages.lief pkgs.python3Packages.darwin];
};
in {
devShells.x86_64-linux.default = pkgs.mkShell {
name = "artiq-env";
packages = [
# ========================================
# EDIT BELOW
# ========================================
(pkgs.python3.withPackages(ps: [
# List desired Python packages here.
artiq.artiq
#ps.paramiko # needed if and only if flashing boards remotely (artiq_flash -H)
artiq.flake8-artiq
artiq.dax
artiq.dax-applets
# The NixOS package collection contains many other packages that you may find
# interesting. Here are some examples:
ps.pandas
ps.numpy
ps.scipy
ps.spyder
pypylon
#ps.numba
ps.matplotlib
ps.jupyterlab
# or if you need Qt (will recompile):
#(ps.matplotlib.override { enableQt = true; })
ps.bokeh
ps.cirq
#ps.qiskit
]))
miniconf.packages.x86_64-linux.miniconf-mqtt-py
#artiq.korad_ka3005p
#artiq.novatech409b
# List desired non-Python packages here
artiq.openocd-bscanspi # needed if and only if flashing boards
# Other potentially interesting non-Python packages from the NixOS package collection:
#pkgs.gtkwave
#pkgs.spyder
#pkgs.R
#pkgs.julia
# ========================================
# EDIT ABOVE
# ========================================
];
};
};
nixConfig = { # work around https://github.com/NixOS/nix/issues/6771
extra-trusted-public-keys = "nixbld.m-labs.hk-1:5aSRVA5b320xbNvu30tqxVPXpld73bhtOeH6uAjRyHc=";
extra-substituters = "https://nixbld.m-labs.hk";
};
}
`