anchor.diff:            nix-channel --update
           fi
   
  -        echo "setting configuration"
  +        echo "setting configuration from EC2 user data"
           cp "$userData" /etc/nixos/configuration.nix
         else
  -        echo "user-data does not appear to be a nix expression; ignoring"
  +        echo "user data does not appear to be a Nix expression; ignoring"
  +        exit
         fi
       else
  -      echo "failed to fetch user-data"
  +      echo "failed to fetch user data"
  +      exit
       fi
  -
  -    type -f nixos-rebuild
   
       nixos-rebuild switch
     '';
  
positive.code:   bootScript = pkgs.writeScript "bootscript.sh" ''
      #!${pkgs.stdenv.shell} -eux
  
      echo "attempting to fetch configuration from user-data..."
  
      export PATH=${config.nix.package}/bin:${pkgs.wget}/bin:${pkgs.systemd}/bin:${pkgs.gnugrep}/bin:${pkgs.gnused}/bin:${config.system.build.nixos-rebuild}/bin:$PATH
      export NIX_PATH=/nix/var/nix/profiles/per-user/root/channels/nixos:nixos-config=/etc/nixos/configuration.nix:/nix/var/nix/profiles/per-user/root/channels
  
negative.code:     wget -q --wait=1 --tries=0 --retry-connrefused -O - http://169.254.169.254/2011-01-01/user-data > "$userData"
  
      if [[ $? -eq 0 ]]; then
  
        # If the user-data looks like it could be a nix expression,
        # copy it over. Also, look for a magic three-hash comment and set
        # that as the channel.
  