Enable cms_pico 1.0.0 at NC 17.0.1 is impossible

Nextcloud version: 17.0.1
Operating system and version: openSUSE Leap15.1
Apache or nginx version: apache 2.4.33
PHP version: 7.2.5

The issue you are facing:
Unable to enable the app cms_pico.
I copy the folder cms_pico to nextcloud/apps and see that all files and folders has wwwrun:www as owner. Then I try to enable the app via admin-UI but get an error

Is this the first time you’ve seen this error? Y

Steps to replicate it:

  1. copy the folder cms_pico to nextcloud/apps and check that all files and folders has wwwrun:www as owner. (If you have an other web-server setup you have to use your settings :wink:
  2. Enable the app via admin-UI.

The output of your Nextcloud log in Admin > Logging:

OCP\Files\NotPermittedException: 

    /srv/www/htdocs/vhosts/mytemplate/nextcloud/apps/cms_pico/lib/Service/FileService.php - line 186:

    OCA\CMSPico\Files\StorageFolder->sync(false)

    /srv/www/htdocs/vhosts/mytemplate/nextcloud/apps/cms_pico/lib/Migration/AppDataRepairStep.php - line 131:

    OCA\CMSPico\Service\FileService->syncAppDataFolder()

    /srv/www/htdocs/vhosts/mytemplate/nextcloud/apps/cms_pico/lib/Migration/AppDataRepairStep.php - line 111:

    OCA\CMSPico\Migration\AppDataRepairStep->syncAppDataFolder()

    /srv/www/htdocs/vhosts/mytemplate/nextcloud/lib/private/Repair.php - line 101:

    OCA\CMSPico\Migration\AppDataRepairStep->run(OC\Repair {})

    /srv/www/htdocs/vhosts/mytemplate/nextcloud/lib/private/legacy/app.php - line 972:

    OC\Repair->run()

    /srv/www/htdocs/vhosts/mytemplate/nextcloud/lib/private/Installer.php - line 158:

    OC_App::executeRepairSteps("cms_pico", { step: "OCA ... "})

    /srv/www/htdocs/vhosts/mytemplate/nextcloud/settings/Controller/AppSettingsController.php - line 447:

    OC\Installer->installApp("cms_pico")

    /srv/www/htdocs/vhosts/mytemplate/nextcloud/lib/private/AppFramework/Http/Dispatcher.php - line 170:

    OC\Settings\Controller\AppSettingsController->enableApps([ "cms_pico"], [])

    /srv/www/htdocs/vhosts/mytemplate/nextcloud/lib/private/AppFramework/Http/Dispatcher.php - line 99:

    OC\AppFramework\Http\Dispatcher->executeController(OC\Settings\ ... {}, "enableApps")

    /srv/www/htdocs/vhosts/mytemplate/nextcloud/lib/private/AppFramework/App.php - line 126:

    OC\AppFramework\Http\Dispatcher->dispatch(OC\Settings\ ... {}, "enableApps")

    /srv/www/htdocs/vhosts/mytemplate/nextcloud/lib/private/AppFramework/Routing/RouteActionHandler.php - line 47:

    OC\AppFramework\App::main("OC\\Setting ... r", "enableApps", OC\AppFramew ... {}, { _route: "s ... "})

    <<closure>>

    OC\AppFramework\Routing\RouteActionHandler->__invoke({ _route: "s ... "})

    /srv/www/htdocs/vhosts/mytemplate/nextcloud/lib/private/Route/Router.php - line 297:

    call_user_func(OC\AppFramew ... {}, { _route: "s ... "})

    /srv/www/htdocs/vhosts/mytemplate/nextcloud/lib/base.php - line 1000:

    OC\Route\Router->match("/settings/apps/enable")

    /srv/www/htdocs/vhosts/mytemplate/nextcloud/index.php - line 42:

    OC::handleRequest()

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

<?php
$CONFIG = array (
  'instanceid' => 
  'passwordsalt' => 
  'secret' => 
  'trusted_domains' =>
  array (
    0 => 'service.mytemplate.de',
    1 => '',
  ),
  'datadirectory' => '/srv/www/htdocs/vhosts/mytemplate/nextcloud/data',
  'dbtype' => 'pgsql',
  'version' => '17.0.1.1',
  'overwrite.cli.url' => 'http://121.118.82.18',
  'dbname' => 'ocdb',
  'dbhost' => 'localhost',
  'dbport' => '',
  'dbtableprefix' => 'oc_',
  'dbuser' => 'ocu',
  'dbpassword' => '',
  'installed' => true,
  'loglevel' => 1,
  'maintenance' => false,
  'mail_from_address' => 'service',
  'mail_smtpmode' => 'smtp',
  'mail_sendmailmode' => 'smtp',
  'mail_domain' => 'mytemplate.de',
  'mail_smtpauth' => 1,
  'mail_smtphost' => 'smtp.1und1.de',
  'mail_smtpsecure' => 'tls',
  'mail_smtpname' => 'service@mytemplate.de',
  'mail_smtppassword' => '',
  'mail_smtpauthtype' => 'LOGIN',
  'mail_smtpport' => '587',
  'memcache.local' => '\\OC\\Memcache\\APCu',
  'rewrite_url' => true,
);

Other apps (markdown-editor and calendar) are enabled without a hassle.

Simplest way to install cms pico 1.0 is to use the appstore. I runt in on three servers without any problems.

After you drop it in the app folder manually you might need to run occ upgrade from the cli (i am unsure of this as i havent done a manual install of the app)

Hi. I tried to install app via the appstore but I also have a problem. When I want to activate cms_pico, this error appears in logs : Cannot declare class PicoDeprecated, because the name is already in use at /var/www/nextcloud/apps/cms_pico/appdata_public/plugins/xBDRwdiSog/PicoDeprecated/PicoDeprecated.php#383

Before (some weeks ago), I had cms_pico 0.9.8 installed, replaced by cms_pico1.0.0-beta1. I removed cms_pico-beta1 because I didn’t use it. Now that cms_pico1.0.0 is released, I wanted to give it a try again. But I can’t activate it.

Thanks for your help.

@Mainmain Please check Pico CMS for Nextcloud v1.0.0 is out now

Unfortunately still no idea about @segh’s issue… We were trying to debug it on IRC, but no luck. I’ll release Pico CMS for Nextcloud v1.0.1 this weekend that fixes another issue. I’m rather sure this isn’t related to your issue, but you can give it a try nevertheless. Sorry :frowning_face: I still think it’s an permissions problem, but I couldn’t think of any situation how to cause it and therefore fix it.

Hello,

You can try this solution:

Maybe the reason could be my small connection. I found that myAppStore is empty all the time.

I was able to enable cms_pico now at cli:

# sudo -u wwwrun php occ app:enable cms_pico

After this command a look at the Admin-UI shows that cms_pico is enabled now. Time for further tests :wink:

Thanks for your reply. This evening, I installed the update 1.0.1 and I was able to activate the app.

Let’s try this :smiley: