> For the complete documentation index, see [llms.txt](https://help.aikido.dev/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.aikido.dev/aikido-device-protection/deploying-aikido-endpoint/device-protection-mdm-guides/linux/install-device-protection-for-linux/tray-icon-support-on-linux.md).

# Tray Icon Support on Linux

Tray icons on Linux use the [StatusNotifierItem](https://www.freedesktop.org/wiki/Specifications/StatusNotifierItem/) protocol. Most desktops implement it in their panel, but GNOME Shell needs the AppIndicator extension. Ubuntu ships and enables that extension by default, so on Debian and Red Hat-family distributions you install it yourself.

A missing tray icon is cosmetic. Protection runs in the `aikido-endpoint-protection` service and keeps blocking packages either way, but users lose the local dashboard described in [Desktop Experience](/aikido-device-protection/using-aikido-endpoint/end-user-experience.md).

| Desktop environment                                   | What you need                                                                                              |
| ----------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- |
| GNOME on Ubuntu                                       | Nothing, the extension is enabled by default                                                               |
| GNOME on Debian                                       | Install and enable `gnome-shell-extension-appindicator`                                                    |
| GNOME on RHEL / Rocky Linux / CentOS                  | Enable EPEL, then install and enable the same package                                                      |
| KDE Plasma, Xfce 4.16 and later, Cinnamon, MATE, LXQt | Nothing, their panels handle status notifier items                                                         |
| Headless servers and containers                       | No tray. Use [the aikidoctl CLI](/aikido-device-protection/miscellaneous-aikido-endpoint/aikidoctl-cli.md) |

## Enable the extension on GNOME

{% tabs %}
{% tab title="Debian" %}
{% code overflow="wrap" %}

```bash
sudo apt install gnome-shell-extension-appindicator
gnome-extensions enable appindicatorsupport@rgcjonas.gmail.com
```

{% endcode %}
{% endtab %}

{% tab title="RHEL / Rocky Linux / CentOS" %}
The extension comes from [EPEL](https://docs.fedoraproject.org/en-US/epel/) rather than the base repositories.

{% code overflow="wrap" %}

```bash
sudo dnf install epel-release
sudo dnf install gnome-shell-extension-appindicator
gnome-extensions enable appindicatorsupport@rgcjonas.gmail.com
```

{% endcode %}
{% endtab %}
{% endtabs %}

Then restart the shell so the extension loads: press `Alt` + `F2`, type `r`, and press Enter on X11, or log out and back in on Wayland.

{% hint style="warning" %}
Run `gnome-extensions enable` as the desktop user, without `sudo`. Extensions are enabled per user, so under `sudo` it enables the extension for root and the icon still won't appear.
{% endhint %}

If the icon is still missing, check that `gnome-extensions list --enabled` includes the ID, and on Xfce that the panel has its **Status Tray** item. Otherwise [send us diagnostics](/aikido-device-protection/miscellaneous-aikido-endpoint/endpoint-information-for-support.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://help.aikido.dev/aikido-device-protection/deploying-aikido-endpoint/device-protection-mdm-guides/linux/install-device-protection-for-linux/tray-icon-support-on-linux.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
