aboutsummaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md90
1 files changed, 90 insertions, 0 deletions
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..8214ee6
--- /dev/null
+++ b/README.md
@@ -0,0 +1,90 @@
+# libayatana-indicator - Ayatana Indicators Shared Library [![Build Status](https://travis-ci.com/AyatanaIndicators/libayatana-indicator.svg)](https://travis-ci.com/AyatanaIndicators/libayatana-indicator)
+
+## About Ayatana Indicators
+
+The Ayatana Indicators project is the continuation of Application
+Indicators and System Indicators, two technologies developed by Canonical
+Ltd. for the Unity7 desktop.
+
+Application Indicators are a GTK implementation of the StatusNotifierItem
+Specification (SNI) that was originally submitted to freedesktop.org by
+KDE.
+
+System Indicators are an extensions to the Application Indicators idea.
+System Indicators allow for far more widgets to be displayed in the
+indicator's menu.
+
+The Ayatana Indicators project is the new upstream for application
+indicators, system indicators and associated projects with a focus on
+making Ayatana Indicators a desktop agnostic technology.
+
+On GNU/Linux, Ayatana Indicators are currently available for desktop
+envinronments like MATE (used by default in [Ubuntu
+MATE](https://ubuntu-mate.com)), XFCE (used by default in
+[Xubuntu](https://bluesabre.org/2021/02/25/xubuntu-21-04-progress-update/),
+LXDE, and the Budgie Desktop.
+
+The Lomiri Operating Environment (UI of the Ubuntu Touch OS, formerly
+known as Unity8) uses Ayatana Indicators for rendering its notification
+area and the [UBports](https://ubports.com) project is a core contributor
+to the Ayatana Indicators project.
+
+For further info, please visit:
+https://ayatana-indicators.org
+
+## About this Software Component
+
+Modern desktop panels find out about indicators by looking at indicator
+service files in `/usr/share/ayatana/indicators`. These files need to have
+the same name as the well-known D-Bus name that the corresponding service
+owns.
+
+An indicator file is a normal key file (like desktop files). It must have
+an `[Indicator Service]` section, that must contain the service's name (`Name`)
+and the object path at which its action group is found (`ObjectPath`). For
+example:
+
+```
+[Indicator Service]
+Name=indicator-example
+ObjectPath=/org/ayatana/indicator/example
+```
+
+It should also contain a hint to where the indicator should appear in the panel:
+
+```
+Position=70
+```
+
+The lower the position, the further to the right (or left when RTL is
+enabled) the indicator appears.
+
+An indicator can only export one action group, but it supports a menu for each profile
+("desktop", "greeter", "phone"). There is a section for each
+of those profiles, containing the object path on which the menu is
+exported:
+
+```
+[desktop]
+ObjectPath=/org/ayatana/indicator/example/desktop
+
+[greeter]
+ObjectPath=/org/ayatana/indicator/example/desktop
+
+[phone]
+ObjectPath=/org/ayatana/indicator/example/phone
+```
+
+Object paths can be reused for different profiles (the greeter uses the
+same menu as the desktop in the above example).
+
+There are no fallbacks. If a profile is not mentioned in the service file,
+the indicator will not show up for that profile.
+
+## License and Copyright
+
+See COPYING and AUTHORS file in this project.
+
+## Building and Testing
+
+For instructions on building and running built-in tests, see the INSTALL.md file.