Skip to content

cs_themes: "Simplified settings..." leads to an unusable page when no styles.d file is installed #13962

Description

@Fantu

Distribution

Debian 13 (trixie) / Debian unstable

Package version

cinnamon 6.6.9

Graphics hardware in use

n/a (not graphics related)

Frequency

Always

Bug description

On a distribution that ships no /usr/share/cinnamon/styles.d/*.styles file at all, the "Simplified settings..." button in the Themes module leads to a page that cannot do anything: the Style combo box only contains "Custom", and the Mixed/Dark/Light buttons are insensitive. The stack switcher is hidden on that page, so the only way out is the "Customize" button.

I understand from #12838 that shipping styles is considered the distribution's job, and this report is not about that: it's only about the UI offering a page that it already knows cannot work.

cs_themes.py in fact already handles the case at startup — when no variant is active it opens the advanced page directly:

GLib.idle_add(self.set_mode, "simplified" if self.active_variant is not None else "themes", True)

but the "Simplified settings..." button on the advanced page is created unconditionally, so the dead page is still one click away.

For context, Cinnamon itself shipped files/usr/share/cinnamon/styles.d/00_cinnamon.styles until it was removed in 13b1ad1 ("cs_themes: Blacklist Adwaita and HighContrast", 6.2), so on any distribution that does not ship its own styles file, self.styles is always empty.

Steps to reproduce

  1. Use a system with no /usr/share/cinnamon/styles.d/*.styles file installed (this is the case on Debian, where no package provides one).
  2. Open System Settings → Themes. It correctly opens on the advanced page.
  3. Click "Simplified settings...".
  4. The Style combo only offers "Custom" and the three appearance buttons are greyed out; nothing on the page can be used.

Expected behavior

When no valid style is available (self.styles empty), the "Simplified settings..." button should be hidden (or insensitive), consistently with the startup logic that already falls back to the advanced page. Users would then never reach a page that has nothing to offer.

Additional information

Reported on Debian as https://bugs.debian.org/1145996.

Related but different: #13752 (variants rejected because of the fields auto-generated for Spices themes) — that one is about styles that exist but are invalid, this one about no styles at all.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions