Inconsistent state of apps

The Basics

  • Nextcloud Server version (e.g., 29.x.x):
    • 30.0.3.2
  • Operating system and version (e.g., Debian 12):
    • Debian 12
  • Web server and version (e.g, Apache 2.4.25):
    • caddy 2.8.4
  • Reverse proxy and version _(e.g. nginx 1.27.2)
    • caddy 2.8.4
  • PHP version (e.g, 8.3):
    • 8.2
  • Is this the first time you’ve seen this error? (Yes / No):
    • No
  • When did this problem seem to first start?
    • started between Oct 31 and Nov 14, according to backups
  • Installation method (e.g. AIO, NCP, Bare Metal/Archive, etc.)
    • Bare Metal
  • Are you using Cloudflare, mod_security, or similar? (Yes / No)
    • No

Summary of the issue you are facing:

In the web interface I cannot remove app cookbook or any other app

Steps to replicate it (hint: details matter!):

occ is a bash script:

sudo -u www-data php /var/www/nextcloud/occ $*

The following looks wrong. It essentially says that app:enable also installs the app which I think is not the case


root@raspi:~# occ app:remove cookbook
cookbook is not installed
root@raspi:~# occ app:enable cookbook
cookbook 0.11.2 enabled
root@raspi:~# occ app:remove cookbook
cookbook disabled
cookbook 0.11.2 removed
root@raspi:~# occ app:enable cookbook
cookbook 0.11.2 enabled

While doing those steps: no log entries.

occ maintenance:repair did help insofar as afterwards, occ app:list did show all apps. Before maintenance:repair, occ app:list showed no apps at all - if I remember correctly.

Maybe there is more inconsistency in the data base which maintenance:repair just does not check?

Some probably unrelated log entries follow, especially

ExApp \"firstrunwizard\" not found.

I checked the installation and believe that all files for firstrunwizard are correctly installed.

{"reqId":"gaRYabI25C6R3BQs7zEW","level":0,"time":"2024-12-08T22:28:06+00:00","remoteAddr":"10.210.137.29","user":"admin","app":"no app in context","method":"GET","url":"/ocs/v2.p
hp/apps/notifications/api/v2/notifications","message":"OCA\\Activity\\NotificationGenerator::prepare() threw \\InvalidArgumentException which is deprecated. Throw \\OCP\\Notifica
tion\\UnknownNotificationException when the notification is not known to your notifier and otherwise handle all \\InvalidArgumentException yourself.","userAgent":"Mozilla/5.0 (X1
1; Linux x86_64; rv:128.0) Gecko/20100101 Firefox/128.0","version":"30.0.3.2","data":[]}
{"reqId":"gaRYabI25C6R3BQs7zEW","level":0,"time":"2024-12-08T22:28:06+00:00","remoteAddr":"10.210.137.29","user":"admin","app":"app_api","method":"GET","url":"/ocs/v2.php/apps/notifications/api/v2/notifications","message":"ExApp \"firstrunwizard\" not found.","userAgent":"Mozilla/5.0 (X11; Linux x86_64; rv:128.0) Gecko/20100101 Firefox/128.0","version":"30.0.3.2","data":{"app":"app_api"}}

Configuration

Nextcloud

The output of occ config:list system :

{
    "system": {
        "instanceid": "***REMOVED SENSITIVE VALUE***",
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",
        "trusted_domains": {
            "0": "cloud.sensitive_data.de",
            "1": "cloud.roadrunner",
            "3": "10.210.137.3"
        },
        "trusted_proxies": "***REMOVED SENSITIVE VALUE***",
        "datadirectory": "***REMOVED SENSITIVE VALUE***",
        "dbtype": "mysql",
        "version": "30.0.3.2",
        "installed": true,
        "overwritehost": "cloud.xxremovedxxx.de",
        "overwriteprotocol": "https",
        "forcessl": true,
        "theme": "",
        "maintenance": false,
        "maintenance_window_start": 1,
        "mail_from_address": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpmode": "sendmail",
        "mail_domain": "***REMOVED SENSITIVE VALUE***",
        "secret": "***REMOVED SENSITIVE VALUE***",
        "dbname": "***REMOVED SENSITIVE VALUE***",
        "dbhost": "***REMOVED SENSITIVE VALUE***",
        "dbuser": "***REMOVED SENSITIVE VALUE***",
        "dbpassword": "***REMOVED SENSITIVE VALUE***",
        "loglevel": 0,
        "trashbin_retention_obligation": "auto",
        "updater.release.channel": "stable",
        "overwrite.cli.url": "https:\/\/cloud.xxxremovedxxx.de",
        "htaccess.RewriteBase": "\/",
        "mail_smtpauthtype": "LOGIN",
        "mail_smtpauth": 1,
        "filelocking.enabled": "true",
        "mysql.utf8mb4": true,
        "forwarded_for_headers": [
            "HTTP_X_FORWARDED_FOR",
            "HTTP_X_WR_CLIENTIP"
        ],
        "default_phone_region": "DE",
        "mail_sendmailmode": "smtp",
        "twofactor_enforced": "true",
        "twofactor_enforced_groups": [
            "Sensitive"
        ],
        "twofactor_enforced_excluded_groups": [
            "Sensitive"
        ],
        "memories.db.triggers.fcu": true,
        "memories.exiftool": "\/var\/www\/nextcloud\/apps\/memories\/bin-ext\/exiftool-amd64-glibc",
        "memories.vod.path": "\/var\/www\/nextcloud\/apps\/memories\/bin-ext\/go-vod-amd64",
        "memories.vod.ffmpeg": "\/usr\/bin\/ffmpeg",
        "memories.vod.ffprobe": "\/usr\/bin\/ffprobe",
        "app_install_overwrite": [
            "calendar",
            "files_rightclick",
            "contacts",
            "cookbook",
            "fulltextsearch",
            "fulltextsearch_elasticsearch",
            "files_fulltextsearch",
            "files_fulltextsearch_tesseract"
        ],
        "apps_paths": [
            {
                "path": "\/var\/www\/nextcloud\/apps",
                "url": "\/apps",
                "writable": false
            },
            {
                "path": "\/var\/www\/nextcloud\/custom_apps",
                "url": "\/custom_apps",
                "writable": true
            }
        ]
    }
}

Apps

The output of occ app:list (if possible).

Enabled:
  - activity: 3.0.0
  - admin_audit: 1.20.0
  - app_api: 4.0.3
  - calendar: 5.0.6
  - circles: 30.0.0
  - cloud_federation_api: 1.13.0
  - comments: 1.20.1
  - contacts: 6.1.1
  - contactsinteraction: 1.11.0
  - cookbook: 0.11.2
  - dashboard: 7.10.0
  - dav: 1.31.1
  - federatedfilesharing: 1.20.0
  - federation: 1.20.0
  - files: 2.2.0
  - files_3dmodelviewer: 0.0.14
  - files_downloadlimit: 3.0.0
  - files_fulltextsearch: 30.0.0
  - files_fulltextsearch_tesseract: 27.0.0
  - files_pdfviewer: 3.0.0
  - files_reminders: 1.3.0
  - files_sharing: 1.22.0
  - files_trashbin: 1.20.1
  - files_versions: 1.23.0
  - firstrunwizard: 3.0.0
  - fulltextsearch: 30.0.0
  - fulltextsearch_elasticsearch: 30.0.0
  - logreader: 3.0.0
  - lookup_server_connector: 1.18.0
  - mail: 4.0.7
  - notifications: 3.0.0
  - oauth2: 1.18.1
  - password_policy: 2.0.0
  - photos: 3.0.2
  - privacy: 2.0.0
  - provisioning_api: 1.20.0
  - related_resources: 1.5.0
  - serverinfo: 2.0.0
  - settings: 1.13.0
  - sharebymail: 1.20.0
  - systemtags: 1.20.0
  - text: 4.1.0
  - theming: 2.5.0
  - thesearchpage: 1.2.8
  - twofactor_backupcodes: 1.19.0
  - twofactor_totp: 12.0.0-dev
  - updatenotification: 1.20.0
  - user_status: 1.10.0
  - viewer: 3.0.0
  - webhook_listeners: 1.1.0-dev
  - workflowengine: 2.12.0
Disabled:
  - audioplayer: 3.4.1 (installed 3.4.1)
  - bruteforcesettings: 3.0.0 (installed 1.3.0)
  - encryption: 2.18.0
  - files_external: 1.22.0
  - nextcloud_announcements: 2.0.0 (installed 1.18.0)
  - recommendations: 3.0.0 (installed 2.1.0)
  - support: 2.0.0 (installed 1.1.1)
  - survey_client: 2.0.0 (installed 2.0.0)
  - suspicious_login: 8.0.0
  - twofactor_nextcloud_notification: 4.0.0
  - user_ldap: 1.21.0
  - weather_status: 1.10.0 (installed 1.9.0)

It is actually:

1 Like

a bit surprising, but OK

Since it is the same context:

occ integrity:check-app mai

results in a failing integrity check (from Web UI).

How can I fix this? occ maintenance:repair does not.

Results
=======
- mai
	- EXCEPTION
		- Exception
		- App not found

Raw output
==========
Array
(
    [mai] => Array
        (
            [EXCEPTION] => Array
                (
                    [class] => Exception
                    [message] => App not found
                )

        )

)

This can be fixed by clicking “rescan” in the Web UI: https://cloud.mydomain.de/index.php/settings/integrity/rescan

I never did that because I did not expect a difference between “rescan” and repeating the normal scan.

I always only either refreshed the page or went to another page and then back which never made the error disappear.

So it seems that “rescan” can fix things which the normal scan cannot.

This topic was automatically closed 8 days after the last reply. New replies are no longer allowed.