https://github.com/dawidd6/go-appindicator
:traffic_light: Go bindings for libappindicator3 C library
https://github.com/dawidd6/go-appindicator
appindicator applet go golang indicator library tray
Last synced: 2 months ago
JSON representation
:traffic_light: Go bindings for libappindicator3 C library
- Host: GitHub
- URL: https://github.com/dawidd6/go-appindicator
- Owner: dawidd6
- License: mit
- Archived: true
- Created: 2019-05-04T13:38:53.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2021-01-04T04:38:06.000Z (about 5 years ago)
- Last Synced: 2024-07-13T22:48:23.970Z (over 1 year ago)
- Topics: appindicator, applet, go, golang, indicator, library, tray
- Language: Go
- Homepage:
- Size: 53.7 KB
- Stars: 19
- Watchers: 7
- Forks: 7
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-Char - go-appindicator - Go bindings for libappindicator3 C library. (GUI / Advanced Console UIs)
- awesome-go - go-appindicator - Go bindings for libappindicator3 C library. (GUI / Advanced Console UIs)
- awesome-go-cn - go-appindicator
README
# go-appindicator
[](https://goreportcard.com/report/github.com/dawidd6/go-appindicator)
[](https://godoc.org/github.com/dawidd6/go-appindicator)
[](https://github.com/avelino/awesome-go)
Go bindings for [libappindicator3](https://launchpad.net/libappindicator) C library.
Libappindicator is a library to allow applications to export a menu into the Unity Menu bar.
Based on KSNI it also works in KDE and will fallback to generic Systray support if none of those are available.
Also it works in:
- Unity
- GNOME Shell with [this extension](https://github.com/ubuntu/gnome-shell-extension-appindicator)
- Budgie Desktop with [this applet](https://github.com/UbuntuBudgie/budgie-indicator-applet)
- MATE with [this applet](https://github.com/mate-desktop/mate-indicator-applet)
- Xfce with [this plugin](https://goodies.xfce.org/projects/panel-plugins/xfce4-indicator-plugin)
This package aims to be interoperable with [Go gtk3 bindings](https://github.com/gotk3/gotk3).
`3` in the name means that it's GTK3 version.
## Dependencies
On Debian-based distributions:
```bash
apt install libappindicator3-dev libgtk-3-dev
```
And of course `go` with `cgo` is required.
## Building
Refer to [gotk3 wiki](https://github.com/gotk3/gotk3/wiki)
...or simply run [`build.sh`](./build.sh) script that will try to detect
currently installed version of GTK, pass along given `go build` flags
and execute it.
For example to build one of examples:
```bash
./build.sh -v examples/simple/main.go
```
## Examples
Examples are located in [examples](./examples) directory