⚠️ This issue respects the following points: ⚠️
Bug description
Nextcloud 34 theming uses the same appconfig key, theming/cachebuster, with inconsistent expected types. The manifest path expects it as a string, while image/logo/favicon handling expects it as an integer. This causes persistent AppConfigTypeConflictException log errors and the favicon does not work correctly after custom theming.
- Observed on Arch-packaged Nextcloud 34.0.0.12. Upstream appears to already have newer 35/master versions available, so this may be Arch-package/NC34 specific or already fixed upstream.
Steps to reproduce
- Configure custom theming in Nextcloud 34 through the admin UI, including company branding/logo/favicon.
- Open the admin overview or trigger the theming manifest route.
- Observe
AppConfigTypeConflictException in the Nextcloud logs for theming/cachebuster.
- Store
theming/cachebuster as integer, for example:
occ config:app:set theming cachebuster --value=35 --type=integer
The main web UI and logo/theming work, but the manifest/admin overview path still logs an error because it expects a string.
5. Store theming/cachebuster as string, for example:
occ config:app:set theming cachebuster --value="35" --type=string
The manifest path is satisfied, but image/logo/favicon related paths break because they expect an integer.
6. The favicon route also does not render correctly after custom theming.
Expected behavior
The theming/cachebuster should have one consistent expected type across all theming code paths.
The admin overview, manifest, logo, image, and favicon routes should all work with custom theming enabled, without AppConfigTypeConflictException log errors.
The favicon should render correctly after custom theming is configured.
Nextcloud Server version
34
Operating system
Other
PHP engine version
PHP 8.3
Web server
Nginx
Database engine version
PostgreSQL
Is this bug present after an update or on a fresh install?
Fresh Nextcloud Server install
Are you using the Nextcloud Server Encryption module?
Encryption is Enabled
What user-backends are you using?
Configuration report
$sudo -u www-data php occ config:list system
php occ config:list system
./occ config:list system
sudo: unknown user www-data
sudo: error initializing audit plugin sudoers_audit
-bash: php: command not found
-bash: ./occ: No such file or directory
List of activated Apps
$sudo -u www-data php occ app:list
php occ app:list
./occ app:list
sudo: unknown user www-data
sudo: error initializing audit plugin sudoers_audit
-bash: php: command not found
-bash: ./occ: No such file or directory
Nextcloud Signing status
Technical information
=====================
The following list covers which files have failed the integrity check. Please read
the previous linked documentation to learn more about the errors and how to fix
them.
Results
=======
- mail
- INVALID_HASH
- vendor/nextcloud/kitinerary-bin/bin/kitinerary-extractor
- tasks
- INVALID_HASH
- appinfo/info.xml
Raw output
==========
Array
(
[mail] => Array
(
[INVALID_HASH] => Array
(
[vendor/nextcloud/kitinerary-bin/bin/kitinerary-extractor] => Array
(
[expected] => 99026cbb7ceded439cd37c960feebea74701a2dbbda5b13012b394578c75711a92821b1d50dc7092665259abfa00f9b6e40a1349af6e401f1ad983bee76dd1e8
[current] => cbfa946ede0adff027c7b548d47e379bcd2071e20197fbfe9b188f8bb59e371ec9ab2f6978e20fdf706a802c6be3475a39e9684be0fec3bc080b7d46e100a668
)
)
)
[tasks] => Array
(
[INVALID_HASH] => Array
(
[appinfo/info.xml] => Array
(
[expected] => d01b8c9899377fc0302bbbcb3a501c0ac5aa87adfe5862edfd14689c2caf6246aa6416368d57b1491eb400e5ac5da04cc0cfd97ace7f662b7774395b84c8a19f
[current] => 99d1b6e6e641c01604a483048971f013359159ce9989182620f18cbdf012e8fa33d36c5fde69535170259ea98b07c73b3de5df322799c291ac9edb5acca6a2f4
)
)
)
)
Nextcloud Logs
Additional info
No response
Bug description
Nextcloud 34 theming uses the same appconfig key,
theming/cachebuster, with inconsistent expected types. The manifest path expects it as a string, while image/logo/favicon handling expects it as an integer. This causes persistentAppConfigTypeConflictExceptionlog errors and the favicon does not work correctly after custom theming.Steps to reproduce
AppConfigTypeConflictExceptionin the Nextcloud logs fortheming/cachebuster.theming/cachebusteras integer, for example:The main web UI and logo/theming work, but the manifest/admin overview path still logs an error because it expects a string.
5. Store theming/cachebuster as string, for example:
occ config:app:set theming cachebuster --value="35" --type=string
The manifest path is satisfied, but image/logo/favicon related paths break because they expect an integer.
6. The favicon route also does not render correctly after custom theming.
Expected behavior
The
theming/cachebustershould have one consistent expected type across all theming code paths.The admin overview, manifest, logo, image, and favicon routes should all work with custom theming enabled, without
AppConfigTypeConflictExceptionlog errors.The favicon should render correctly after custom theming is configured.
Nextcloud Server version
34
Operating system
Other
PHP engine version
PHP 8.3
Web server
Nginx
Database engine version
PostgreSQL
Is this bug present after an update or on a fresh install?
Fresh Nextcloud Server install
Are you using the Nextcloud Server Encryption module?
Encryption is Enabled
What user-backends are you using?
Configuration report
List of activated Apps
Nextcloud Signing status
Nextcloud Logs
Additional info
No response