Exception with OCA\Theming\ThemingDefaults after upgrading OS

Dear all,

Nextcloud version: 13.0.5.2
Operating system and version: Fedora 28
Apache or nginx version: Apache/2.4.34 (Fedora)
PHP version: PHP 7.2.9 (cli)

The issue i am facing:
i have a nextcloud installation on a Fedora 28 server. I upgraded last week from NC10 to NC11. NC12 and NC13 with no bigger issue. Today i upgraded the OS linux F26 to F28 and right after first boot i can’t login to nextcloud anymore.
From the error message i suspect it to be something with themes. I have changed the background image and the default color when it was NC10.

There is an exception thrown in the logs. When i try to use occ i get the following error message:

[root@nextcloud]# sudo -u apache php occ maintenance:mode --on
An unhandled exception has been thrown:                                                                                                                                                                           
TypeError: Argument 4 passed to OCA\Theming\ThemingDefaults::__construct() must be an instance of OC_Defaults, instance of OC\Files\AppData\AppData given, called in /usr/share/nextcloud/lib/private/Server.php on line 951 and defined in /usr/share/nextcloud/apps/theming/lib/ThemingDefaults.php:58                                                                                                                            
Stack trace:                                                                                                                                                                                                      
#0 /usr/share/nextcloud/lib/private/Server.php(951): OCA\Theming\ThemingDefaults->__construct(Object(OC\AllConfig), Object(OC\L10N\L10N), Object(OC\URLGenerator), Object(OC\Files\AppData\AppData), Object(OC\Memcache\Factory), Object(OCA\Theming\Util), Object(OC\App\AppManager))                                                                                                                                              
#1 /usr/share/php/Pimple/Container.php(118): OC\Server->OC\{closure}(Object(OC\Server))                                                                                                                           
#2 /usr/share/nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php(116): Pimple\Container->offsetGet('ThemingDefaults')                                                                                 
#3 /usr/share/nextcloud/lib/private/ServerContainer.php(132): OC\AppFramework\Utility\SimpleContainer->query('ThemingDefaults')                                                                                   
#4 /usr/share/nextcloud/lib/private/Server.php(1838): OC\ServerContainer->query('ThemingDefaults')                                                                                                                
#5 /usr/share/nextcloud/lib/private/Console/Application.php(62): OC\Server->getThemingDefaults()                                                                                                                  
#6 /usr/share/nextcloud/console.php(88): OC\Console\Application->__construct(Object(OC\AllConfig), Object(Symfony\Component\EventDispatcher\EventDispatcher), Object(OC\AppFramework\Http\Request), Object(OC\Log))                                                                                                                                                                                                                 
#7 /usr/share/nextcloud/occ(11): require_once('/usr/share/next...')

Steps to reproduce:

  1. Install NC13, verify all works fine.
  2. Upgrade fedora server 26 to fedora server 28

The output of your Nextcloud log in Admin > Logging:

NC wont show any html page

The output of your config.php file in /path/to/nextcloud (make sure you remove any identifiable information!):

<?php
$CONFIG = array (
  'log_type' => 'syslog',
  'datadirectory' => '/var/lib/nextcloud/data',
  'updatechecker' => false,
  'check_for_working_htaccess' => false,
  'asset-pipeline.enabled' => false,
  'assetdirectory' => '/var/lib/nextcloud',
  'preview_libreoffice_path' => '/usr/bin/libreoffice',
  'apps_paths' => 
  array (
    0 => 
    array (
      'path' => '/usr/share/nextcloud/apps',
      'url' => '/apps',
      'writable' => false,
    ),
    1 => 
    array (
      'path' => '/var/lib/nextcloud/apps',
      'url' => '/apps-appstore',
      'writable' => true,
    ),
  ),
  'instanceid' => 'id',
  'passwordsalt' => 'salt',
  'secret' => 'secret',
  'trusted_domains' => 
  array (
    0 => 'www.mydomain.com',
  ),
  'overwrite.cli.url' => 'https://www.mydomain.com/nextcloud',
  'dbtype' => 'mysql',
  'version' => '13.0.5.2',
  'dbname' => 'nextclouddb',
  'dbhost' => 'localhost',
  'dbtableprefix' => 'oc_',
  'dbuser' => 'nextcloud_user',
  'dbpassword' => 'password',
  'logtimezone' => 'UTC',
  'installed' => true,
  'memcache.local' => '\\OC\\Memcache\\APCu',
  'mail_from_address' => 'server',
  'mail_smtpmode' => 'php',
  'mail_domain' => 'mydomain.com',
  'appstore.experimental.enabled' => true,
  'theme' => '',
  'loglevel' => 0,
  'maintenance' => false,
  'singleuser' => false,
);

The output of your Apache/nginx/system log in /var/log/____:

Aug 20 14:01:33 nextcloud.mydomain.com ownCloud[1138]: {index} Exception: {"Exception":"TypeError","Message":"Argument 4 passed to OCA\\Theming\\ThemingDefaults::__construct() must be an instance of OC_Defaults, instance of OC\\Files\\AppData\\AppData given, called in \/usr\/share\/nextcloud\/lib\/private\/Server.php on line 951","Code":0,"Trace":"#0 \/usr\/share\/nextcloud\/lib\/private\/Server.php(951): OCA\\Theming\\ThemingDefaults->__construct(Object(OC\\AllConfig), Object(OC\\L10N\\L10N), Object(OC\\URLGenerator), Object(OC\\Files\\AppData\\AppData), Object(OC\\Memcache\\Factory), Object(OCA\\Theming\\Util), Object(OC\\App\\AppManager))\n#1 \/usr\/share\/php\/Pimple\/Container.php(118): OC\\Server->OC\\{closure}(*** sensitive parameters replaced ***)\n#2 \/usr\/share\/nextcloud\/lib\/private\/AppFramework\/Utility\/SimpleContainer.php(116): Pimple\\Container->offsetGet('ThemingDefaults')\n#3 \/usr\/share\/nextcloud\/lib\/private\/ServerContainer.php(132): OC\\AppFramework\\Utility\\SimpleContainer->query('ThemingDefaults')\n#4 \/usr\/share\/nextcloud\/lib\/private\/Server.php(1838): OC\\ServerContainer->query('ThemingDefaults')\n#5 \/usr\/share\/nextcloud\/lib\/private\/Server.php(1126): OC\\Server->getThemingDefaults()\n#6 \/usr\/share\/php\/Pimple\/Container.php(118): OC\\Server->OC\\{closure}(*** sensitive parameters replaced ***)\n#7 \/usr\/share\/nextcloud\/lib\/private\/AppFramework\/Utility\/SimpleContainer.php(116): Pimple\\Container->offsetGet('OCP\\\\Defaults')\n#8 \/usr\/share\/nextcloud\/lib\/private\/ServerContainer.php(132): OC\\AppFramework\\Utility\\SimpleContainer->query('OCP\\\\Defaults')\n#9 \/usr\/share\/nextcloud\/lib\/private\/legacy\/template.php(85): OC\\ServerContainer->query('OCP\\\\Defaults')\n#10 \/usr\/share\/nextcloud\/lib\/base.php(387): OC_Template->__construct('', 'update.admin', 'guest')\n#11 \/usr\/share\/nextcloud\/lib\/base.php(304): OC::printUpgradePage()\n#12 \/usr\/share\/nextcloud\/lib\/base.php(957): OC::checkUpgrade()\n#13 \/usr\/share\/nextcloud\/index.php(42): OC::handleRequest()\n#14 {main}","File":"\/usr\/share\/nextcloud\/apps\/theming\/lib\/ThemingDefaults.php","Line":58}                                                                                                                                
Aug 20 14:01:33 nextcloud.mydomain.com ownCloud[1138]: {PHP} TypeError: Argument 4 passed to OCA\Theming\ThemingDefaults::__construct() must be an instance of OC_Defaults, instance of OC\Files\AppData\AppData given, called in /usr/share/nextcloud/lib/private/Server.php on line 951 at /usr/share/nextcloud/apps/theming/lib/ThemingDefaults.php#58                                                       
Aug 20 14:01:34 nextcloud.mydomain.com ownCloud[1141]: {PHP} TypeError: Argument 4 passed to OCA\Theming\ThemingDefaults::__construct() must be an instance of OC_Defaults, instance of OC\Files\AppData\AppData given, called in /usr/share/nextcloud/lib/private/Server.php on line 951 at /usr/share/nextcloud/apps/theming/lib/ThemingDefaults.php#58

Any advise on how to proceed or what other information could help in fixing?

I found out, that some nextcloud folder (eg apps) had root:root as owner.tried re-setting the permission and => No effect.

I can’t figure out what happenend during the update.
But nevermind, i will give nextcloud a last try by installing new.