How to fix Linux Mint logo (icon) not showing up as Cinnamon Menu button

Written by - 0 comments

Published on - last updated on May 11th 2023 - Listed in Linux


It's no secret that I've been using Linux Mint as my Desktop OS of choice for the past few years (and I regret nothing!). However, as with every OS to be fair, you occasionally run into some problems which require troubleshooting and fixing.

In the past few weeks or months (I don't remember anymore) I noticed on my main machine (currently still running Linux Mint 20.3) that the Linux Mint logo was not showing up anymore as menu button. You know, the equivalent of the "Start" button on Windows.

Instead of the Mint logo, a generic "settings wheel" shows up. How do I fix this?

No, it's not in Themes settings

The first guess which might come into mind would be to verify and maybe re-apply the current theme (Menu -> Preferences -> Themes). But don't waste your time in there, you cannot change a single icon there.

Where are the current settings for the menu button?

As I am using Cinnamon (and I believe most Linux Mint users do, too), this menu setting is most likely handled by a Cinnamon config - somewhere. 

I was probably lucky but I immediately found this under my user's home directory under ~/.cinnamon/configs:

ck@mintp ~/.cinnamon/configs $ ls -la
total 48
drwxrwxr-x 12 ck ck 4096 Mar 11  2021  ./
drwxrwxr-x  5 ck ck 4096 Sep 25 15:27  ../
drwxrwxr-x  2 ck ck 4096 Apr 27  2022 'calendar@cinnamon.org'/
drwxrwxr-x  2 ck ck 4096 Aug 10  2021 'menu@cinnamon.org'/
drwxrwxr-x  2 ck ck 4096 Mar 11  2021 'network@cinnamon.org'/
drwxrwxr-x  2 ck ck 4096 Apr 27  2022 'notifications@cinnamon.org'/
drwxrwxr-x  2 ck ck 4096 Mar 11  2021 'panel-launchers@cinnamon.org'/
drwxrwxr-x  2 ck ck 4096 Mar 11  2021 'power@cinnamon.org'/
drwxrwxr-x  2 ck ck 4096 Aug 10  2021 'show-desktop@cinnamon.org'/
drwxrwxr-x  2 ck ck 4096 Dec 16  2021 'sound@cinnamon.org'/
drwxrwxr-x  2 ck ck 4096 May 26  2018 'user@cinnamon.org'/
drwxrwxr-x  2 ck ck 4096 Nov 18 07:27 'window-list@cinnamon.org'/

And we have a sub-directory named menu@cinnamon.org. Which sounds promising!

Inside the menu@cinnamon.org directory a single file "1.json" can be found:

ck@mintp ~/.cinnamon/configs $ ls -la 'menu@cinnamon.org'/
total 20
drwxrwxr-x  2 ck ck 4096 Aug 10  2021 .
drwxrwxr-x 12 ck ck 4096 Mar 11  2021 ..
-rw-rw-r--  1 ck ck 9185 Aug 10  2021 1.json

Taking a closer look at this file reveals an entry dedicated to the menu's button, called the "menu-icon":

ck@mintp ~/.cinnamon/configs $ cat menu@cinnamon.org/1.json
{
    "layout": {
        "type": "layout",
        "pages": [
            "panel",
            "menu"
        ],
[...]
    "menu-icon": {
        "type": "iconfilechooser",
        "default": "linuxmint-logo-ring-symbolic",
        "description": "Icon",
        "tooltip": "Select an icon to show in the panel.",
        "default_icon": "linuxmint-logo-ring-symbolic",
        "dependency": "menu-custom",
        "icon_categories": [
            {
                "name": "Linux Mint",
                "icons": [
                    "linuxmint-logo",
                    "linuxmint-logo-badge",
                    "linuxmint-logo-badge-symbolic",
                    "linuxmint-logo-filled-badge",
                    "linuxmint-logo-filled-leaf-badge",
                    "linuxmint-logo-filled-leaf",
                    "linuxmint-logo-filled-ring",
                    "linuxmint-logo-leaf-badge",
                    "linuxmint-logo-leaf-badge-symbolic",
                    "linuxmint-logo-leaf",
                    "linuxmint-logo-leaf-symbolic",
                    "linuxmint-logo-neon",
                    "linuxmint-logo-ring",
                    "linuxmint-logo-ring-symbolic",
                    "linuxmint-logo-simple",
                    "linuxmint-logo-simple-symbolic",
                    "cinnamon-symbolic",
                    "emblem-favorite-symbolic",
                    "user-bookmarks-symbolic",
                    "start-here-symbolic"
                ]
            }
        ],
        "default_category": "Linux Mint",
        "value": "/usr/share/cinnamon/theme/menu-symbolic.svg"
    },
    "menu-icon-size": {
        "type": "spinbutton",
        "default": 32,
        "min": 16,
        "max": 96,
        "step": 1,
        "units": "px",
        "description": "Icon size",
        "dependency": "menu-custom",
        "value": 32
    },
[...]

The config shows that a "iconfilechooser" is being used and a default of "linuxmint-logo-ring-symbolic" is defined. But looking underneath the icon_categories context, the current value is set to "/usr/share/cinnamon/theme/menu-symbolic.svg". Let's open up this path in Nemo (the file explorer):

Surprise, surprise! We found the "settings wheel" icon! 

That means we can now change the value to another icon (e.g. /usr/share/cinnamon/theme/menu.svg) and save the json file. However you may have notices that the icons under /usr/share/cinnamon/theme are limited. Where are the others?

But there's another (easier) way to change the icon.

Changing the icon using the graphical icon settings

By using a right click right on top of the menu button a small context window opens up:

Right-click context menu on the Cinnamon menu button

With a click on "Configure..." the Menu settings with the "Panel" tab active opens up. The second entry already shows the "Icon", which shows our non-beloved wheel:

With a click on the current icon, a window "Choose an icon" shows up. This let's you chose from a much wider choice of icons than what you would find in the /usr/share/cinnamon/theme path:

Cinnamon choose an icon for the menu button

I selected the "linuxmint-logo-badge" icon and this now shows up in the settings:

But more importantly: I can see the selected icon in the bottom left corner as menu icon again:

What about the json config file?

In the first step we found the 1.json config file under the local user's cinnamon configs. How does this change show up in the json?

As expected the file was changed in the same second a new icon was selected:

ck@mintp ~/.cinnamon/configs $ ll menu@cinnamon.org/
total 20
drwxrwxr-x  2 ck ck 4096 Nov 18 07:37 ./
drwxrwxr-x 12 ck ck 4096 Mar 11  2021 ../
-rw-rw-r--  1 ck ck 9162 Nov 18 07:37 1.json

And the menu-icon value now shows the selected icon (linuxmint-logo-badge):

ck@mintp ~/.cinnamon/configs $ cat menu@cinnamon.org/1.json
[...]
    "menu-icon": {
        "type": "iconfilechooser",
        "default": "linuxmint-logo-ring-symbolic",
        "description": "Icon",
        "tooltip": "Select an icon to show in the panel.",
        "default_icon": "linuxmint-logo-ring-symbolic",
        "dependency": "menu-custom",
        "icon_categories": [
            {
                "name": "Linux Mint",
                "icons": [
                    "linuxmint-logo",
                    "linuxmint-logo-badge",
                    "linuxmint-logo-badge-symbolic",
                    "linuxmint-logo-filled-badge",
                    "linuxmint-logo-filled-leaf-badge",
                    "linuxmint-logo-filled-leaf",
                    "linuxmint-logo-filled-ring",
                    "linuxmint-logo-leaf-badge",
                    "linuxmint-logo-leaf-badge-symbolic",
                    "linuxmint-logo-leaf",
                    "linuxmint-logo-leaf-symbolic",
                    "linuxmint-logo-neon",
                    "linuxmint-logo-ring",
                    "linuxmint-logo-ring-symbolic",
                    "linuxmint-logo-simple",
                    "linuxmint-logo-simple-symbolic",
                    "cinnamon-symbolic",
                    "emblem-favorite-symbolic",
                    "user-bookmarks-symbolic",
                    "start-here-symbolic"
                ]
            }
        ],
        "default_category": "Linux Mint",
        "value": "linuxmint-logo-badge"
    },
[...]

Problem solved!


Add a comment

Show form to leave a comment

Comments (newest first)

No comments yet.

RSS feed

Blog Tags:

  AWS   Android   Ansible   Apache   Apple   Atlassian   BSD   Backup   Bash   Bluecoat   CMS   Chef   Cloud   Coding   Consul   Containers   CouchDB   DB   DNS   Database   Databases   Docker   ELK   Elasticsearch   Filebeat   FreeBSD   Galera   Git   GlusterFS   Grafana   Graphics   HAProxy   HTML   Hacks   Hardware   Icinga   Influx   Internet   Java   KVM   Kibana   Kodi   Kubernetes   LVM   LXC   Linux   Logstash   Mac   Macintosh   Mail   MariaDB   Minio   MongoDB   Monitoring   Multimedia   MySQL   NFS   Nagios   Network   Nginx   OSSEC   OTRS   Office   OpenSearch   PGSQL   PHP   Perl   Personal   PostgreSQL   Postgres   PowerDNS   Proxmox   Proxy   Python   Rancher   Rant   Redis   Roundcube   SSL   Samba   Seafile   Security   Shell   SmartOS   Solaris   Surveillance   Systemd   TLS   Tomcat   Ubuntu   Unix   VMWare   VMware   Varnish   Virtualization   Windows   Wireless   Wordpress   Wyse   ZFS   Zoneminder