anchor.diff:  
     optionsJSON = pkgs.runCommand "options.json"
       { meta.description = "List of NixOS options in JSON format";
  -      buildInputs = [ pkgs.brotli pythonMD ];
  +      buildInputs = [
  +        pkgs.brotli
  +        (let
  +          self = (pkgs.python3Minimal.override {
  +            inherit self;
  +            includeSiteCustomize = true;
  +           });
  +         in self.withPackages (p: [ p.mistune_2_0 ]))
  +      ];
         options = builtins.toFile "options.json"
           (builtins.unsafeDiscardStringContext (builtins.toJSON optionsNix));
  -      # convert markdown to docbook in its own derivation to cache the
  -      # conversion results. the conversion is surprisingly expensive.
  -      baseJSON =
  -        if baseOptionsJSON != null
  -        then
  -          pkgs.runCommand "base-json-md-converted" {
  -            buildInputs = [ pythonMD ];
  -          } ''
  -            python ${./mergeJSON.py} ${baseOptionsJSON} <(echo '{}') > $out
  -          ''
  -        else null;
       }
       ''
         # Export list of options in different format.
  
positive.code:           else ''
              python ${./mergeJSON.py} \
                ${lib.optionalString warningsAreErrors "--warnings-are-errors"} \
                $baseJSON $options \
                > $dst/options.json
            ''
        }
  
negative.code: 
    optionsNix = builtins.listToAttrs (map (o: { name = o.name; value = removeAttrs o ["name" "visible" "internal"]; }) optionsList);
  
  in rec {
    inherit optionsNix;
  
  