Problem/Motivation
With Drupal CMS, and eventually site templates, there is a clear starting point for new Drupal users. We outlined in the Drupal core strategy (#3533440: Drupal Core strategy: July 2025 ) that core is for builders of those starting points but not as a thing that would be installed for new Drupal users in the first place. So the install profiles and/or recipes provided by core should align with that.
- This makes the standard profile in Drupal core less useful, especially assumptions about content types, node listing, commenting, default theme.
- The prominent presence of the minimal install profile at the start of installing Drupal is not good. It isn't a good starting point for most - the stark theme is too stark to actually use, you'd immediately have to install Claro or Gin and then some other modules, people are more likely to do this with drush than select minimal in the UI.
- Meanwhile Umami is also likely to be moved to contrib via #3523324: Deprecate and remove the Umami demonstration profile from core, make it a contributed site template, this leads towards having a single install profile/recipe to start from in core for almost all cases.
Steps to reproduce
Proposed resolution
Proposed META issue steps are in #3591027: [META] Remove use case specific elements from Standard and Node module. Always install with Standard. Keep Minimal for CLI use only..
Remaining tasks
Open a followup discussion about the future of the minimal install profile / recipe which will be hidden from the UI at least following this issue, but still available.
User interface changes
- A regular Drupal install will not prompt you for an install profile selection anymore.
- The default Drupal experience resulting from this install will not have assumptions about your use case (content types, commenting setup, node listing, frontend theme).
- Instead the default Drupal frontend experience will be suggesting next steps to pick a theme based on your use case. A compelling backend setup will be provided to configure the site on the UI (without assumptions of the use case that you need to undo).
Comments
Comment #2
joachim commentedNow that it's possible to install sites from configuration, I think this is even more important.
Because you can't install a site from configuration that's using the standard profile, because that has a hook_install() and install from configuration doesn't allow that.
However, installing your site from minimal is difficult, as described above: you need to spend time setting up all the basic blocks such as tabs and messages.
So when setting up a new site, you have the choice between:
- A. developers can install from the config, but you have to spend time doing fiddly block setup to begin with
- B. the standard Drupal admin UI is created for you, but install from config isn't available at all
Comment #3
berdirOne thing to not is that we might need a different way to assign uid 1 to the admin role then, because not being able to do so is going to clash with #540008: Add a container parameter that can remove the special behavior of UID#1
Comment #4
hchonovComment #5
joachim commentedAh yes:
But the latest patch at #540008: Add a container parameter that can remove the special behavior of UID#1 is setting the role in user_install(), so that should be ok?
Comment #6
joachim commentedOops!
Comment #7
aaronmchaleI would definitely agree with this, but a lot of discussion and work will be needed to identify what will things should be included in this.
One way we might be able to achieve this, and this is something I've thought for a while, is to completely deprecate the "standard" profile, and replace it with a few profiles targeted at specific scenarios (e.g. a blog profile would be a great example of this and give Drupal a way to directly complete with say WordPress *).
We can then use that to find commonality across all of these profiles.
* It also wouldn't be a huge challenge to implement in core, we basically have all of the building blocks for it in there: content types, fields, taxonomy, views, a nice front-end theme in the form of Olivero; We just need to put it all together into a blog focused profile.
Comment #8
catchNow that Drupal CMS exists, I think that we need to merge 'minimal' and 'standard' into essentially what the issue summary here suggests. There might be a newer issue discussing this but I can't find it right now.
e.g. core should ship with a single install profile (except it should be a recipe), that enables claro/gin and handful of other content types. If you want content types, you can install Drupal CMS, or a site template once those exists, or recipes from Drupal.org once those are browsable via project browser.
Comment #9
catchComment #10
gábor hojtsyI think #3541098: Merge the standard and minimal profiles into something in between may be roughly the same as this, the goals at least are very much overlapping :)
Comment #11
catchMarking #3541098: Merge the standard and minimal profiles into something in between as duplicate after a quick discussion with Gabor. The only difference here would be merging the two existing profiles into one instead of adding a third one, but I think given the end goal profile is the same, it's probably fine to re-purpose this issue.
Comment #13
gábor hojtsyWhat is the next step here? Is it technical or product? I mean do we want to define what that starter recipe is? I believe core already has recipes for what is equivalent of the standard profile, no? So its more about pairing that down and introducing that as the primary means to install Drupal rather than the profiles?
Comment #14
catchI think we need product manager sign-off on the general direction and also some of the scope.
We've got this in the issue summary:
For now we are trying to keep the standard profile + recipe in sync, I think we can do that for a while longer - so remove the content types from both.
Removing/deprecating the standard profile and replacing it with the standard recipe from the UI installer probably needs #3520028: Remove support for selecting install profiles via the UI installer as the first step.
There might be other things we want to do - should the standard profile still install Olivero or only have the admin theme? But I think we can discuss that in follow-ups, it won't block removing the content types just a further step in how minimal standard should be.
Comment #15
gábor hojtsyTotally agreed with the plans. Let's merge the two profiles to a recipe that is inbetween the two.
I'll open a followup for the content types (which is easy to implement).
Maybe someone can help open a followup for Olivero deprecation and removal which has the whole template process for extension removal.
Comment #16
mradcliffeI never use anything BUT minimal install profile on sites. I find it nice to be able to configure and tune the site (and apply recipes) from the bare minimum needed to run Drupal.
So I would like there to remain an option to install Drupal with the bare minimum needed to run Drupal whether this is an install profile or a recipeless install, it does not matter to me. And then I can build a web site how I want to build a web site based on recipes from there (or recipes via install).
Comment #17
gábor hojtsyI opened and worked on #3587118: Remove content types from the standard install profile and recipe today. It is down to one fail now, which raises a bunch of questions :) Reviews and help with that one fail are more than welcome :) Thanks!
Comment #18
gábor hojtsyI think we can do a lot to Standard to move it closer to Minimal without actually removing Minimal in the first place. We can postpone a decision on Minimal to later while still doing a lot of useful things to the initial Standard experience. Opened #3590801: Mark the minimal profile hidden in the UI (developers can still install with drush) as a middle ground for keeping the installer simple. This still allows us to continue simplifying the Standard profile / recipes. Updated the plan in the issue summary with issues opened since.
Comment #19
gábor hojtsyMade up a tag for this to maybe make it easier to follow.
Comment #20
gábor hojtsyActually decouple from Standard :D
Comment #21
gábor hojtsyOpened and added #3590816: [policy, no patch] Deprecate Olivero and move to contrib to the issue summary.
Comment #22
gábor hojtsyComment #23
gábor hojtsy@nicxvan raised in #3590801: Mark the minimal profile hidden in the UI (developers can still install with drush) that we started to execute this without closing this as fixed :) It is my mistake that I started to use this as a plan meta rather than close it as a policy agreed and open a plan meta. I think the main thing we agree on going years back in this issue is that "Standard" should be a baseline admin/builder experience that does not make assumptions about the site (content types, comments, theme, etc) but rather is a good baseline starting point. Whether w should remove minimal at the same time is the only remaining item that is still under discussion. I think we can achieve the experience improvements of paring Standard down wihile we put the removal of minimal profile to the side. While I think minimal is not practical for most builds, I can see the interest in keeping a "this is what is absolutely minimally required to run a functioning Drupal" alive in some form. But I think we can table that final part without blocking the work on making Standard usecase-less and more general and also making it a recipe only eventually not a profile AND recipe :)
This still has the "Needs release manager review" tag, so I'll let release managers say hopefully final words and then move the plan part of this issue to a plan from this policy :D Sorry :)
I updated the title for this slightly reduced scope. Also updated issue summary.
Comment #24
catchYeah I agree with #23.
Standard has always had a bit too much to start with for most sites - unless you actively go through and delete config and uninstall modules etc. and minimal always looks completely broken at least until you install Claro, but is also missing things like dynamic_page_cache that should really be on 99.99% of production sites. So neither of them are an easy starting point - you either have to immediately remove things or immediately add things to get to a good baseline.
What we end up with in the middle is a working admin area, but a blank slate for the front facing site - and for me that's a good companion to the multiple front-facing sites you can get from Drupal CMS.
I think this is a good thing to have (in site template world it would probably be an empty or nearly empty site template?) but fine if you have to install it via the cli. We can keep calling it 'minimal'. iirc the testing profile installs a couple of testing modules, so even that is not properly minimal. Also we should continue efforts for making minimal even more minimal (like splitting parts of system module out).
Comment #25
gábor hojtsyMoved proposed implementation issues to META for this. #3591027: [META] Remove use case specific elements from Standard and Node module. Always install with Standard. Keep Minimal for CLI use only.
Comment #26
gábor hojtsyImplementation for this is well underway (minimal is now not offered on install, default front page and content types, commenting and tagging are now removed from Standard). The main thing left is removing Olivero from the standard profile. So as a policy this should be marked fixed. #24 was adequate release manager feedback IMHO.
Comment #28
catchYes I think this is going in a very solid direction.