anchor.diff:      ++ optional enableEchonest   pythonPackages.pyechonest
       ++ optional enableLastfm     pythonPackages.pylast
       ++ optional enableMpd        pythonPackages.mpd
  +    ++ optional enableReplaygain pythonPackages.audiotools
       ++ optional enableThumbnails pythonPackages.pyxdg
  -    ++ optional enableReplaygain pythonPackages.audiotools
       ++ optional enableWeb        pythonPackages.flask;
   
     buildInputs = with pythonPackages; [
  
positive.code:   };
  
    pluginsWithoutDeps = [
      "bench" "bpd" "bpm" "bucket" "convert" "cue" "duplicates" "embedart" "freedesktop"
      "fromfilename" "filefilter" "ftintitle" "fuzzy" "ihate" "importadded" "importfeeds"
      "info" "inline" "keyfinder" "lyrics" "mbcollection" "mbsync" "missing"
      "permissions" "play" "plexupdate" "random" "rewrite" "scrub" "smartplaylist"
      "spotify" "the" "types" "zero"
    ];
  
    enabledOptionalPlugins = attrNames (filterAttrs (_: id) optionalPlugins);
  
negative.code: assert enableFetchart    -> pythonPackages.responses      != null;
  assert enableLastfm      -> pythonPackages.pylast         != null;
  assert enableMpd         -> pythonPackages.mpd            != null;
  assert enableReplaygain  -> pythonPackages.audiotools     != null;
  assert enableThumbnails  -> pythonPackages.pyxdg          != null;
  assert enableWeb         -> pythonPackages.flask          != null;
  
  with stdenv.lib;
  