anchor.diff:  , enableE300 ? true
   , enableE320 ? true
   }:
  -
  -# You need these udev rules to not have to run as root (copied from
  -# ${uhd}/share/uhd/utils/uhd-usrp.rules):
  -#
  -#   SUBSYSTEMS=="usb", ATTRS{idVendor}=="fffe", ATTRS{idProduct}=="0002", MODE:="0666"
  -#   SUBSYSTEMS=="usb", ATTRS{idVendor}=="2500", ATTRS{idProduct}=="0002", MODE:="0666"
   
   let
     onOffBool = b: if b then "ON" else "OFF";
  
positive.code:   # https://files.ettus.com/manual_archive/v3.15.0.0/html/page_build_guide.html#build_instructions_unix_arm
    patches = if stdenv.isAarch32 then ./neon.patch else null;
  
    postPhases = [ "installFirmware" "removeInstalledTests" ];
  
    # UHD expects images in `$CMAKE_INSTALL_PREFIX/share/uhd/images`
    installFirmware = ''
  
negative.code:   # -DENABLE_TESTS=ON installs the tests, we don't need them in the output
    removeInstalledTests = ''
      rm -r $out/lib/uhd/tests
    '';
  
    # Moves the udev rules to the standard location, needed only if utils are
    # enabled
    moveUdevRules = ''
      mkdir -p $out/lib/udev/rules.d
      mv $out/lib/uhd/utils/uhd-usrp.rules $out/lib/udev/rules.d/
    '';
  
    meta = with stdenv.lib; {
  