nextcloud / server

☁️ Nextcloud server, a safe home for all your data
https://nextcloud.com
GNU Affero General Public License v3.0
26.63k stars 3.99k forks source link

[Bug]: Wrong colour of favicons after switching back to default colour #43286

Closed PatrickJosh closed 3 months ago

PatrickJosh commented 7 months ago

⚠️ This issue respects the following points: ⚠️

Bug description

I recently changed some settings regarding theming and experimented with different colour schemes. Then, I wanted to return to the default colour scheme. However, the favicons don't return to the default colour, but to #008200, while all other buttons etc. use the default #0082c9 again. I have tried multiple things to return to the default colour again, but none work. I cannot remember having set #008200 in the past , but I cannot guarantee that. I have also tried switching off user theming, but that did not change anything. If the user has selected the default colour, then #008200 is used for the favicons instead as well.

I also had a look into the directories at appdata_xxxx/theming/global. After changing the colour back to normal, a new folder is created. The favicons in this folder are labelled with the correct colour (#0082c9), but have the wrong one (#008200).

Steps to reproduce

  1. Change colour in theming to something else than the default #0082c9
  2. Change colour back to #0082c9, either by selecting it or by using the ‘restore default’-button next to the colour picker.
  3. Observe favicon (ctrl+f5 might be necessary)

Expected behavior

Favicon colour changed back to #0082c9

Installation method

Community Manual installation with Archive

Nextcloud Server version

28

Operating system

RHEL/CentOS

PHP engine version

PHP 8.2

Web server

Apache (supported)

Database engine version

MariaDB

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

Upgraded to a MAJOR version (ex. 22 to 23)

Are you using the Nextcloud Server Encryption module?

Encryption is Disabled

What user-backends are you using?

Configuration report

{
    "system": {
        "instanceid": "***REMOVED SENSITIVE VALUE***",
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",
        "secret": "***REMOVED SENSITIVE VALUE***",
        "trusted_domains": [
            "cloud.noescloud.de",
            "cloud.joshuanoeske.de",
            "127.0.0.1"
        ],
        "datadirectory": "***REMOVED SENSITIVE VALUE***",
        "dbtype": "mysql",
        "version": "28.0.2.5",
        "overwrite.cli.url": "https:\/\/cloud.noescloud.de",
        "dbname": "***REMOVED SENSITIVE VALUE***",
        "dbhost": "***REMOVED SENSITIVE VALUE***",
        "dbport": "",
        "dbtableprefix": "oc_",
        "default_language": "en_GB",
        "mysql.utf8mb4": true,
        "dbuser": "***REMOVED SENSITIVE VALUE***",
        "dbpassword": "***REMOVED SENSITIVE VALUE***",
        "enabledPreviewProviders": [
            "OC\\Preview\\BMP",
            "OC\\Preview\\GIF",
            "OC\\Preview\\JPEG",
            "OC\\Preview\\MarkDown",
            "OC\\Preview\\MP3",
            "OC\\Preview\\PNG",
            "OC\\Preview\\TXT",
            "OC\\Preview\\XBitmap",
            "OC\\Preview\\OpenDocument",
            "OC\\Preview\\Krita",
            "OC\\Preview\\HEIC",
            "OC\\Preview\\TIFF",
            "OC\\Preview\\Movie",
            "OC\\Preview\\MKV",
            "OC\\Preview\\MP4",
            "OC\\Preview\\AVI"
        ],
        "default_phone_region": "DE",
        "installed": true,
        "memcache.local": "\\OC\\Memcache\\APCu",
        "memcache.distributed": "\\OC\\Memcache\\Redis",
        "memcache.locking": "\\OC\\Memcache\\Redis",
        "redis": {
            "host": "***REMOVED SENSITIVE VALUE***",
            "port": "0"
        },
        "htaccess.RewriteBase": "\/",
        "mail_from_address": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpmode": "smtp",
        "mail_sendmailmode": "smtp",
        "mail_domain": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpsecure": "ssl",
        "mail_smtpauthtype": "LOGIN",
        "mail_smtpauth": 1,
        "mail_smtphost": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpport": "465",
        "mail_smtpname": "***REMOVED SENSITIVE VALUE***",
        "mail_smtppassword": "***REMOVED SENSITIVE VALUE***",
        "maintenance": false,
        "theme": "",
        "loglevel": 1,
        "logfile": "\/var\/log\/nextcloud\/nextcloud.log",
        "logfilemode": 384,
        "lost_password_link": "disabled",
        "updater.release.channel": "stable",
        "trashbin_retention_obligation": "60, 61",
        "twofactor_enforced": "true",
        "twofactor_enforced_groups": [],
        "twofactor_enforced_excluded_groups": [
            "guest_app"
        ],
        "trusted_proxies": "***REMOVED SENSITIVE VALUE***",
        "memories.gis_type": 1,
        "memories.exiftool_no_local": true,
        "memories.vod.path": "\/var\/www\/nextcloud-subvolume\/nextcloud\/apps\/memories\/bin-ext\/go-vod-amd64",
        "memories.vod.ffmpeg": "\/usr\/bin\/ffmpeg",
        "memories.vod.ffprobe": "\/usr\/bin\/ffprobe",
        "defaultapp": "",
        "maintenance_window_start": "1"
    }
}

List of activated Apps

Enabled:
  - activity: 2.20.0
  - announcementcenter: 6.7.0
  - calendar: 4.6.4
  - circles: 28.0.0-dev
  - cloud_federation_api: 1.11.0
  - comments: 1.18.0
  - contacts: 5.5.1
  - contactsinteraction: 1.9.0
  - cospend: 1.6.0
  - dashboard: 7.8.0
  - dav: 1.29.1
  - deck: 1.12.1
  - federatedfilesharing: 1.18.0
  - federation: 1.18.0
  - files: 2.0.0
  - files_external: 1.20.0
  - files_pdfviewer: 2.9.0
  - files_reminders: 1.1.0
  - files_sharing: 1.20.0
  - files_trashbin: 1.18.0
  - files_versions: 1.21.0
  - firstrunwizard: 2.17.0
  - forms: 4.0.0
  - guests: 3.0.1
  - logreader: 2.13.0
  - lookup_server_connector: 1.16.0
  - mail: 3.5.5
  - memories: 6.2.2
  - music: 1.10.0
  - nextcloud_announcements: 1.17.0
  - notes: 4.9.2
  - notifications: 2.16.0
  - notify_push: 0.6.9
  - oauth2: 1.16.3
  - password_policy: 1.18.0
  - phonetrack: 0.7.7
  - photos: 2.4.0
  - polls: 6.0.1
  - previewgenerator: 5.4.0
  - privacy: 1.12.0
  - provisioning_api: 1.18.0
  - qownnotesapi: 23.12.0
  - recommendations: 2.0.0
  - related_resources: 1.3.0
  - serverinfo: 1.18.0
  - settings: 1.10.1
  - sharebymail: 1.18.0
  - spreed: 18.0.3
  - support: 1.11.0
  - survey_client: 1.16.0
  - systemtags: 1.18.0
  - tables: 0.6.6
  - tasks: 0.15.0
  - text: 3.9.1
  - theming: 2.3.0
  - twofactor_backupcodes: 1.17.0
  - twofactor_totp: 10.0.0-beta.2
  - twofactor_webauthn: 1.3.2
  - updatenotification: 1.18.0
  - user_status: 1.8.1
  - viewer: 2.2.0
  - weather_status: 1.8.0
  - workflowengine: 2.10.0
Disabled:
  - admin_audit: 1.18.0
  - bruteforcesettings: 2.8.0 (installed 2.4.0)
  - checksum: 1.2.3 (installed 1.2.3)
  - collectives: 2.9.2 (installed 2.9.2)
  - encryption: 2.16.0
  - extract: 1.3.6 (installed 1.3.6)
  - files_rightclick: 0.15.1 (installed 1.6.0)
  - gpxedit: 0.0.14 (installed 0.0.14)
  - health: 2.2.2 (installed 2.2.2)
  - integration_gitlab: 1.0.18 (installed 1.0.18)
  - integration_google: 2.1.0 (installed 2.1.0)
  - integration_moodle: 1.0.2 (installed 1.0.2)
  - integration_whiteboard: 0.0.14 (installed 0.0.14)
  - maps: 1.3.1 (installed 1.3.1)
  - metadata: 0.19.0 (installed 0.19.0)
  - news: 24.0.0 (installed 24.0.0)
  - onlyoffice: 9.0.0 (installed 9.0.0)
  - recognize: 6.0.1 (installed 6.0.1)
  - socialsharing_email: 3.0.1 (installed 3.0.1)
  - suspicious_login: 6.0.0
  - user_ldap: 1.19.0
  - user_migration: 5.0.0 (installed 5.0.0)
  - workflow_script: 1.13.0 (installed 1.13.0)

Nextcloud Signing status

No errors have been found.

Nextcloud Logs

{"reqId":"ZbzDTtohLBjf_VZbzFoligAABAo","level":3,"time":"2024-02-02T10:26:22+00:00","remoteAddr":"2003:cf:3f1c:7cd1:3d5f:1f5d:694f:4ddd","user":"joshua.noeske","app":"index","method":"GET","url":"/apps/theming/icon/settings?v=13c7c5e2","message":"Could not create folder \"/appdata_ochmvfb4enme/theming/global/22\"","userAgent":"Mozilla/5.0 (X11; Linux x86_64; rv:121.0) Gecko/20100101 Firefox/121.0","version":"28.0.2.5","exception":{"Exception":"OCP\\Files\\NotPermittedException","Message":"Could not create folder \"/appdata_ochmvfb4enme/theming/global/22\"","Code":0,"Trace":[{"file":"/var/www/nextcloud-subvolume/nextcloud/lib/private/Files/SimpleFS/SimpleFolder.php","line":105,"function":"newFolder","class":"OC\\Files\\Node\\Folder","type":"->"},{"file":"/var/www/nextcloud-subvolume/nextcloud/apps/theming/lib/ImageManager.php","line":159,"function":"newFolder","class":"OC\\Files\\SimpleFS\\SimpleFolder","type":"->"},{"file":"/var/www/nextcloud-subvolume/nextcloud/apps/theming/lib/ImageManager.php","line":174,"function":"getCacheFolder","class":"OCA\\Theming\\ImageManager","type":"->"},{"file":"/var/www/nextcloud-subvolume/nextcloud/apps/theming/lib/Controller/IconController.php","line":183,"function":"getCachedImage","class":"OCA\\Theming\\ImageManager","type":"->"},{"file":"/var/www/nextcloud-subvolume/nextcloud/lib/private/AppFramework/Http/Dispatcher.php","line":230,"function":"getTouchIcon","class":"OCA\\Theming\\Controller\\IconController","type":"->"},{"file":"/var/www/nextcloud-subvolume/nextcloud/lib/private/AppFramework/Http/Dispatcher.php","line":137,"function":"executeController","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->"},{"file":"/var/www/nextcloud-subvolume/nextcloud/lib/private/AppFramework/App.php","line":184,"function":"dispatch","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->"},{"file":"/var/www/nextcloud-subvolume/nextcloud/lib/private/Route/Router.php","line":315,"function":"main","class":"OC\\AppFramework\\App","type":"::"},{"file":"/var/www/nextcloud-subvolume/nextcloud/lib/base.php","line":1069,"function":"match","class":"OC\\Route\\Router","type":"->"},{"file":"/var/www/nextcloud-subvolume/nextcloud/index.php","line":39,"function":"handleRequest","class":"OC","type":"::"}],"File":"/var/www/nextcloud-subvolume/nextcloud/lib/private/Files/Node/Folder.php","Line":162,"message":"Could not create folder \"/appdata_ochmvfb4enme/theming/global/22\"","exception":[],"CustomMessage":"Could not create folder \"/appdata_ochmvfb4enme/theming/global/22\""},"id":"65bcd148a5fdc"}

Additional info

I already scanned the log for errors regarding theming, besides multiple errors like the one I above, nothing related to theming is found. However, although the error denotes that the folder could not be created, it is created anyway.

Might this be related to #42954 or #43054?

Trevelian commented 7 months ago

image image

Same issue here, changing the color to another code does not correct the green icon.

Trevelian commented 5 months ago

Moving from imagick 6 to 7 fix the issue.

unnilennium commented 5 months ago

same issue here Centos 7 based rpm -q ImageMagick ImageMagick-6.9.10.68-7.el7_9.x86_64

It happened while just changing the name of the site, without changing any logo or color. Moving to ImageMagick 7 is not an easy solution on this distro (however there is a rpm available on remi) and might break some other softwares depending on the 6.9 version.

I however had tried ImageMagick7 from remi and it does not fixes the green favicon logo when using default blue color, even after changing multiple time, however, I can say that other colors seems less off the selected color (pink is more orange when using ImageMagick-6.9)

addendum : removing rpm -e --nodeps php74-php-pecl-imagick-im6 php81-php-pecl-imagick-im6 and adding yum install php81-php-pecl-imagick-im7 php74-php-pecl-imagick-im7 will fixe this after changing to another color and getting back

this is however something that can not be done only via yum as those rpms are conlicting and not replacing each others ( I had to do the same rpm -e --nodeps for Imagemagick to ImageMagick7) so better approach would be to have the code to check what is the installed version of imagemagick

PatrickJosh commented 4 months ago

I was already using ImageMagick 7 when the issue arose. So at least in my case, it does not fix the problem.

PatrickJosh commented 3 months ago

I noticed that I, contrary to what I said before, was actually still using ImageMagick 6. After upgrading to 7 and changing the colour again, the favicons are actually rebuilt with the correct colour. Hence, I consider this issue solved.