I'm trying to build gateware using a fork from the latest commit of artiq, however, the old gateware build instructions at https://m-labs.hk/artiq/manual-beta/developing.html are no longer correct. Following the instructions yields the following:

$ nix-shell -I artiqSrc=~/scratch/artiq ~/scratch/nix-scripts/artiq-fast/shell-dev.nix
...
trace: For ARTIQ 7+, use 'nix develop' on the flake instead.
error: assertion (((pkgs).lib.asserts.assertMsg  (! (((pkgs).lib.strings.versionAtLeast  (artiqpkgs).artiq.version)  "7.0")))  "For ARTIQ 7+, use 'nix develop' on the flake instead.") failed at /home/rabi/scratch/nix-scripts/artiq-fast/shell-dev.nix:7:3

The error message would appear helpful, however, the latest stable version of nix has no "develop" command, and besides I'm not 100% on what the "flake" is - is it flake.nix in the main artiq repository?

$ nix --version
nix (Nix) 2.3.15
$ nix develop
error: 'develop' is not a recognised command
Try 'nix --help' for more information.

Do I need to install nix from source to get access to nix develop? What else do I need to do to build gateware at the current state of ARTIQ 7?

This is all under Ubuntu 20.04.3 LTS.

    Just install nixUnstable and type nix develop in the ARTIQ git checkout.

    ljstephenson As hinted on the command line, you also need to add experimental-features = nix-command flakes to the local nix configuration (see the wiki).

    16 days later

    I am getting the following error after running nix-develop and python -m artiq.gateware.targets.kasli

    /etc/profile: line 16: /opt/Xilinx/Vivado/2020.1/settings64.sh: No such file or directory

    I am making use of Vivado/2019.1 installed in /opt
    I have had a look at /etc/profile file but there is no mention this directory

      han94ros I have had a look at /etc/profile file but there is no mention this directory

      Please read up on Nix FHS environments.