How to have multiple copies of Default theme?

AI-generated summary

In a support discussion titled “How to have multiple copies of Default theme?”, rahim123 asks whether it’s possible to install multiple instances of Discourse’s built-in “Default” theme — similar to how third-party themes (e.g., discourse-air) can be duplicated and updated automatically — without forking or using Git. merefield initially responds affirmatively, citing examples of multiple theme component installations, but rahim123 clarifies they mean full themes, not components. merefield insists their example includes full themes, and rahim123 reiterates the issue: the Default theme lacks an “Install” button in /admin/customize/themes, making duplication seem impossible while preserving upstream updates. rahim123 then shares a screenshot suggesting that creating a new named theme defaults to using the Default theme as a base. merefield simplifies the matter, explaining the Default theme is essentially a minimal repo with two files and that any theme can be duplicated — even exported and re-imported — and recommends managing copies via GitHub. Heliosurge confirms the process is straightforward: simply rename a duplicate (e.g., “Ghost2 Theme”) to install multiple copies. The consensus is that while the Default theme isn’t installable like external themes, it can be cloned via theme creation, and updates can be managed manually or via GitHub.

Hi there, when using additional installed themes with Discourse it is possible to install multiple copies of the same theme (i.e. https://github.com/discourse/discourse-air) with different names, and then configure different theme components for each copy of the theme to offer different user-selectable experiences. And when the installed theme gets updated upstream, both copies of the theme on my Discourse instance are automatically updated. But what if I want to offer multiple copies of the Discourse “Default” theme? I can’t seem to find a https://github.com/discourse/* repo for the “Default” theme. I know I can export/import a copy, but I want my copy to remain linked to upstream so it gets updated, and I don’t want to deal with git or forking.

Yes that works. For example on one of my sites I have a couple of themes and two installs of the Topic List Previews Theme Component which have different names and settings and are associated with a different Theme.

Hi Robert, thanks for the reply. Sorry I didn’t explain myself, I’m talking about multiple copies of the same full Theme such as the ones found in Theme - Discourse Meta, not Theme Components. It is possible to install multiple instances of the same add-on Theme, but since the Discourse “Default” Theme is not explicitly installed by the admin I don’t think it’s possible to have multiple instances of it.

My example includes two Themes.

Hi again, I’m referring to the Install button at /admin/customize/themes. It does not appear possible to install another instance of the Discourse “Default” theme while also maintaining its update dependence on upstream.

I think I figured it out. So when creating a new named Theme with this dialogue the base theme will be the Discourse “Default” one?

I think you are slightly over thinking this?

The default theme is just an empty shell of a Theme repo with two files, one in a folder :slight_smile:

Export it, inspect it?

And a Theme is not much more than a Theme Component with “false” in the component parameter …

You can definitely “install” multiple instances of a Theme.

I recommend managing one on GitHub.

It is very simple as Robert said

For example if I want to install “Ghost Theme” twice I simply edit the name of one

Ie Ghost2 Theme