Skip to content

[Bug]: Can't set disable-user-theming with occ in V32 #56016

@bjalbor

Description

@bjalbor

⚠️ This issue respects the following points: ⚠️

Bug description

Setting the theming option with

occ theming:config disable-user-theming 1 (same with on, true, yes, etc.)

results in a string type in Database:

+---------+----------------------+-------------+------+------+
| appid   | configkey            | configvalue | type | lazy |
+---------+----------------------+-------------+------+------+
| theming | disable-user-theming | 1           |    4 |    0 |
+---------+----------------------+-------------+------+------+

which will fail on next Request with Exception "message":"conflict with value type from database" in nextcloud.log giving an Internal Server Error in Browser.

Reason seems, that function function getValueBool in lib/private/AppConfig.php expects type 32 in Database. Unfortunately the command occ theming:config lacks an option to explicitly set type bool.

Steps to reproduce

  1. Fresh install
  2. Set option `disable-user-theming' to true (or false or anything else) using command occ

Expected behavior

Same as having set the option via UI, which results in database entry

+---------+----------------------+-------------+------+------+
| appid   | configkey            | configvalue | type | lazy |
+---------+----------------------+-------------+------+------+
| theming | disable-user-theming | 1           |   32 |    0 |
+---------+----------------------+-------------+------+------+

Nextcloud Server version

32

Operating system

Debian/Ubuntu

PHP engine version

PHP 8.3

Web server

Apache (supported)

Database engine version

MariaDB

Is this bug present after an update or on a fresh install?

Fresh Nextcloud Server install

Are you using the Nextcloud Server Encryption module?

None

What user-backends are you using?

  • Default user-backend (database)
  • LDAP/ Active Directory
  • SSO - SAML
  • Other

Configuration report

n/a

List of activated Apps

n/a

Nextcloud Signing status

No errors have been found.

Nextcloud Logs

{"reqId":"B0bqY3ba6wrih6cGhHRd","level":3,"time":"2025-10-26T15:36:35+00:00","remoteAddr":"172.18.0.1","user":"ncadmin","app":"core","method":"GET","url":"/apps/files/","message":"conflict with value type from database","userAgent":"Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:144.0) Gecko/20100101 Firefox/144.0","version":"32.0.1.2","exception":{"Exception":"OCP\\Exceptions\\AppConfigTypeConflictException","Message":"conflict with value type from database","Code":0,"Trace":[{"file":"/var/www/html/lib/private/AppConfig.php","line":427,"function":"getTypedValue","class":"OC\\AppConfig","type":"->","args":["theming","disable-user-theming","false",false,32]},{"file":"/var/www/html/apps/theming/lib/ThemingDefaults.php","line":526,"function":"getValueBool","class":"OC\\AppConfig","type":"->","args":["theming","disable-user-theming"]},{"file":"/var/www/html/apps/theming/lib/ThemingDefaults.php","line":180,"function":"isUserThemingDisabled","class":"OCA\\Theming\\ThemingDefaults","type":"->","args":[]},{"file":"/var/www/html/lib/public/Defaults.php","line":182,"function":"getColorPrimary","class":"OCA\\Theming\\ThemingDefaults","type":"->","args":[]},{"file":"/var/www/html/core/templates/layout.guest.php","line":29,"function":"getColorPrimary","class":"OCP\\Defaults","type":"->","args":[]},{"file":"/var/www/html/lib/private/Template/Base.php","line":140,"args":["/var/www/html/core/templates/layout.guest.php"],"function":"include"},{"file":"/var/www/html/lib/private/Template/Base.php","line":113,"function":"load","class":"OC\\Template\\Base","type":"->","args":["/var/www/html/lib/private/App/../../../core/templates/layout.guest.php",null]},{"file":"/var/www/html/lib/private/Template/Template.php","line":112,"function":"fetchPage","class":"OC\\Template\\Base","type":"->","args":[null]},{"file":"/var/www/html/lib/private/Template/Template.php","line":142,"function":"fetchPage","class":"OC\\Template\\Template","type":"->","args":[null]},{"file":"/var/www/html/lib/private/Template/Base.php","line":103,"function":"fetchPage","class":"OC\\Template\\Template","type":"->","args":[]},{"file":"/var/www/html/lib/private/Template/TemplateManager.php","line":129,"function":"printPage","class":"OC\\Template\\Base","type":"->","args":[]},{"file":"/var/www/html/index.php","line":90,"function":"printExceptionErrorPage","class":"OC\\Template\\TemplateManager","type":"->","args":[{"__class__":"OCP\\Exceptions\\AppConfigTypeConflictException"},500]}],"File":"/var/www/html/lib/private/AppConfig.php","Line":505,"message":"conflict with value type from database","exception":{},"CustomMessage":"conflict with value type from database"}}

Additional info

n/a

Metadata

Metadata

Assignees

No one assigned

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions