Problem/Motivation
Installing Educare on a plain Drupal CMS base fails. Educare is cloned from Varbase Starter and inherits both of its blockers. Diagnosed and fixed in Varbase Starter #3617241; this issue applies the same fix here.
Blocker 1 — missing node.search_index view mode. drupal_cms_search imports core.entity_view_mode.node.search_index from the node module and then clones every default node view display into that mode. On Drupal 11.4 that view mode moved to the new search_node module, so the import silently no-ops (strict: false) and the clone targets a view mode that does not exist:
Error: Call to a member function getConfigDependencyName() on null in Drupal\Core\Entity\EntityDisplayBase->calculateDependencies() (line 302)
Educare cannot fix this in its own config/, because recipe dependencies are applied before the template's own config. The view mode has to come from a recipe that runs earlier.
Blocker 2 — the Canvas patch is discarded on Drupal CMS.
PHP Fatal error: Class Drupal\canvas_override\Storage\CanvasOverrideComponentTreeLoader cannot extend final class Drupal\canvas\Storage\ComponentTreeLoader
drupal/canvas 1.10.1 marks ComponentTreeLoader as final; drupal/canvas_override (via varbase_content_base) extends it. Varbase Patches ships the re-roll that removes final, which is why the same package versions install fine on a Varbase base. Here scripts/assets/drupal-cms.composer.json sets ignore-dependency-patches: ["drupal/*", "drupal/ai_context"], and the drupal/* wildcard discards every curated Varbase patch for every drupal/* package.
Steps to reproduce
- Build a Drupal CMS 2.1.3 project on Drupal 11.4.5.
- Run the wiring script and require this recipe.
- Install, from the browser installer or with
drush site:install drupal_cms_installer installer_site_template_form.add_ons=educare. - The install fatals on blocker 1; clearing that, it fatals on blocker 2.
Proposed resolution
- Depend on Varbase Search Base and list it before Drupal CMS Search in
recipe.yml. The view mode itself is added in #3617240. - Narrow
ignore-dependency-patchesinscripts/assets/drupal-cms.composer.jsonto just["drupal/ai_context"], which is the only entry that genuinely cannot resolve — it declares a patch path relative to the project root.
Verified with the equivalent change on Varbase Starter, on Drupal CMS 2.1.3 / Drupal 11.4.5: Installation complete, default theme applied, front page HTTP 200 anonymously, zero errors logged.
Remaining tasks
- ✅ Order Varbase Search Base before Drupal CMS Search
- ✅ Narrow the ignored dependency patches so the Canvas patch applies
- ❌ Verify a complete Educare install on a plain Drupal CMS base
- ❌ Code review by maintainers
- ✅ Release educare-1.0.0-alpha2
User interface changes
Educare can be picked in the Drupal CMS installer and completes successfully.
API changes
None.
Data model changes
Adds a dependency on the Varbase Search Base recipe.
Release notes snippet
Fixed installing Educare on a plain Drupal CMS base: ordered Varbase Search Base before Drupal CMS Search so the node search index view mode exists, and stopped discarding the curated Varbase Canvas patches.
Issue fork educare-3617242
Show commands
Start within a Git clone of the project using the version control instructions.
Or, if you do not have SSH keys set up on git.drupalcode.org:
Comments
Comment #3
rajab natshahComment #5
rajab natshah✅ Released educare-1.0.0-alpha2
Comment #6
rajab natshahComment #7
rajab natshah