anchor.diff:  , categories ? "Application;Other;"
   , startupNotify ? null
   , extraEntries ? null
  +, fileValidation ? true # whether to validate resulting desktop file.
   }:
   
   let
  
positive.code: in
  runCommandLocal "${name}.desktop" {}
    ''
      mkdir -p $out/share/applications
      cat > $out/share/applications/${name}.desktop <<EOF
      [Desktop Entry]
      Type=${type}
      Exec=${exec}
  
negative.code: { lib, runCommandLocal, desktop-file-utils }:
  
  { name
  , type ? "Application"
  , exec
  