How do I manage a mix of menu and custom breadcrumbs? I have a site where I need breadcrumbs to be generated in a couple of different ways:


Based on the menu path (Menu Breadcrumb)
Based on custom rules (was thinking Custom Breadcrumb but it doesnt exist anymore)


How can I effectively enable breadcrumb rules for nodes that I don't want Menu Breadcrumb to control? Do I have to create my own Breadcrumb builder class? Can I blow away $breadcrumb in hook_system_breadcrumb_alter and do new Breadcrumb() to do exactly what I want?
Do I have to create my own Breadcrumb builder class?


Yes, there are many places where you can modify breadcrumbs, but this is the only straightforward way. The custom breadcrumbs should have a priority higher than 1010 (the priority of the breadcrumb builder of Menu Breadcrumbs), so that nodes that follow rules you put in applies() of the BreadCrumbBuilder class can't be controlled by Menu Breadcrumbs.


  How do I set the priority (asked in the comments)?


The priority is set in the service definition, example from the Menu Breadcrumb module:

menu_breadcrumb.services.yml:

services:
  menu_breadcrumb.breadcrumb.default:
    class: Drupal\menu_breadcrumb\MenuBasedBreadcrumbBuilder
    arguments: ['@config.factory', '@menu.active_trail', '@plugin.manager.menu.link', '@router.admin_context', '@title_resolver', '@request_stack', '@language_manager', '@entity_type.manager']
    tags:
      # The priority must be higher than core taxonomy builder (priority: 1002)
      # see https://www.drupal.org/node/1495510
      - { name: breadcrumb_builder, priority: 1010 }


(which is also where you have to look when you want to override an existing breadcrumb builder, you can see here what was considered concerning the taxonomy breadcrumbs)