It has been requested to make the default install of WxT 4.0.x extremely minimal by default.

This is because some people want to use WxT as just a headless site and won't need a bunch of modules enabled by default.

Ideally we should have the profile install just virtually nothing except our performance fixes, theme and few mandatory modules such as localization.

Importantly there are a few things we MUST make sure of:

  1. We don't break backwards compatibility with sites using full suite of tools
  2. An extensible way to enable the extra features a la carte
  3. Ensure each module in wxt_ext explicitly state their dependencies

I have pushed everything to 4.0.x branch so please try it out!

WxT Profile

The following is now what is enabled in the profile (WxT) itself

name: 'WxT'
description: 'A Drupal distribution created to leverage the Web Experience Toolkit.'
type: profile
core_version_requirement: '^8.8 || ^9'
distribution:
  name: WxT

# Language
keep_english: true

# Required modules
install:
  # core
  - big_pipe
  - dynamic_page_cache
  - inline_form_errors
  - node
  - path
  - text
  - user
  # core (multilingual)
  - config_translation
  - content_translation
  - language
  - locale
  # wxt
  - wxt_admin
  - wxt_core
  - wxt_library

themes:
  - claro
  - wxt_bootstrap

WxT Admin

The following is now what is enabled in WxT Admin (wxt_admin) itself

name: 'WxT Admin'
description: 'Installs default configuration for administrative tasks.'
type: module
core_version_requirement: '^8.8 || ^9'
package: WxT

# Required modules
dependencies:
  - admin_toolbar:admin_toolbar
  - admin_toolbar_tools:admin_toolbar_tools
  - admin_toolbar_links_access_filter:admin_toolbar_links_access_filter

WxT Core

The following is now what is enabled in WxT Core (wxt_core) itself

name: 'WxT Core'
description: 'Provides core configuration.'
type: module
core_version_requirement: '^8.8 || ^9'
package: WxT

# Required modules
dependencies:
  - block_class:block_class
  - button_link:button_link
  - config_rewrite:config_rewrite
  - content_moderation:content_moderation
  - diff:diff
  - drupal:block_content
  - drupal:image
  - drupal:layout_discovery
  - embed:embed
  - entity_block:entity_block
  - entity_embed:entity_embed
  - field_group:field_group
  - linkit:linkit
  - pathauto:pathauto
  - menu_block:menu_block
  - menu_breadcrumb:menu_breadcrumb
  - token:token
  - token_filter:token_filter
  - url_embed:url_embed
  - views_bootstrap:views_bootstrap

configure: wxt4032404.config

WxT Library

The following is now what is enabled in WxT Library (wxt_library) itself

name: 'WxT Library'
description: 'Registers WxT Boostrap as a library.'
type: module
core_version_requirement: ^8 || ^9
package: WxT
configure: wxt_library.admin

# Required modules
dependencies:
  - drupal:language

# Required libraries
libraries:
  - wxt_library/wet-boew
  - wxt_library/wet-boew-dev

WxT Translation

The following is now what is enabled in WxT Translation (wxt_translation) itself

name: 'WxT Translation'
description: 'Contains default configuration and additional functionality to interact with entity translation.'
type: module
core_version_requirement: '^8.8 || ^9'
package: WxT

# Required modules
dependencies:
  - drupal:config_translation
  - drupal:content_translation

WxT Extend

All of the additional contrib modules and Lightning integration have been moved into the WxT Extend (wxt_ext) suite of modules which can now be installed a la carte for fresh installations via the GUI or passed as flags via Drush (will also have an ALL flag).

wxt_extension_configure_form.select_all='TRUE'

Additionally in order to provide a list of optional enabled extensions during install that can be checked all that any module now has to do is provide a modulename.wxt_extension.yml file in their root and they will be picked as installable during the profile install.

I am making sure these adjustments will not break existing sites and am testing some sites I have access to now. I will try to get this all done and vetted before the end of the weekend, as well as document what each module does.

Here is the commit which does all of this functionality and move around some of the info.yml logic to the wxt_ext suite of modules.

https://github.com/drupalwxt/wxt/commit/d7b95f38c670c9ae5af166f5b5fc8313...

wxt_ext

CommentFileSizeAuthor
#7 wxt_ext.png695.15 KBsylus

Comments

sylus created an issue. See original summary.

sylus’s picture

Issue summary: View changes
sylus’s picture

Version: 8.x-3.x-dev » 4.0.x-dev
sylus’s picture

Status: Active » Needs work
sylus’s picture

sylus’s picture

N/A

sylus’s picture

Issue summary: View changes
StatusFileSize
new695.15 KB
sylus’s picture

Issue summary: View changes
sylus’s picture

Issue summary: View changes
sylus’s picture

Issue summary: View changes
sylus’s picture

Issue summary: View changes
sylus’s picture

Issue summary: View changes
sylus’s picture

Status: Needs work » Needs review
sylus’s picture

Issue summary: View changes
sylus’s picture

Issue summary: View changes
sylus’s picture

Status: Needs review » Fixed
sylus’s picture

Issue summary: View changes
sylus’s picture

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.