• Stars
    star
    11
  • Rank 1,694,829 (Top 34 %)
  • Language
    C
  • License
    MIT License
  • Created over 4 years ago
  • Updated 4 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Go bindings for libnotify -- Create and update OS notifications in linux

golibnotify

golibnotify implements go bindings for libnotify to create, send, and update OS level notifications. It does not shell out to notify-send so it can update existing notifications as well as create new ones.

go.dev reference Go Report Card GitHub Sourcegraph Badge

Installation

This package requires CGO and the libnotify (libnotify-dev) shared library to be installed.

On Ubuntu or Debian using apt, you can install with sudo apt-get install libnotify-dev

Usage

// Get an instance of a SimpleNotifier
notifier := golibnotify.NewSimpleNotifier("my-cool-app-name")

// Show a new notification
err = notifier.Show("A summary", "Some body text", "a/path/to/an/icon.png")

// Update an existing notification (or send a new one if one hasn't been sent)
err = notifier.Update("A new summary", "Some different body text", "another/path/to/icon.png")

// Remove an existing notification
err = notifier.Close()

See also examples for a complete example

Roadmap

  • Add API that returns a Notification instance to manage multiple notifications at once
  • Better support for notification icons (PixBuf?)
  • Support notification timeouts
  • Support notification urgencies

Contributions

Thanks for wanting to contribute!

  1. Open an issue describing your problem, solution, issue, suggestion, feature, etc. to ensure it's likely to get merged.
  2. Fork the project.
  3. Make your changes.
  4. Open a PR against master here.
  5. Celebrate being awesome!

Author

@codegoalie

More Repositories

1

sudoku-api

HTTP API to fetch a random sudoku puzzle
Go
13
star
2

gospotgo

A spotweb/newznab compatible usenet indexer written in Go
Go
5
star
3

card-games

card and drinking games written in ruby
Ruby
3
star
4

dotfiles

My dotfiles
HTML
3
star
5

lockthevote

Rails app for online voting
CSS
2
star
6

votechain

Basic blockchain implementation for voting
Go
2
star
7

mysql-cellophane

very thin wrapper for mysql adapters
Ruby
2
star
8

networkedOgre

networked Ogre with RakNet tutorial
C++
2
star
9

RubyWarrior-intermediate

My RubyWarrior Intermediate code
Ruby
2
star
10

counter

Count up or down to anything
Ruby
2
star
11

disney-stream-player

Command line streaming client for Disney music
Go
2
star
12

openmpg

openMPG.org
Ruby
1
star
13

goutrack

YouTrack command line app written in Go
Go
1
star
14

ai_project_1

AI Project 1: 8 Queens
Prolog
1
star
15

sms-safety

Don't give sites your actual phone number
Go
1
star
16

RubyWarrior-beginner

My Solution to the Beginner Tower of RubyWarrior
Ruby
1
star
17

go-debts

debt tracking in react and golang
Go
1
star
18

School-Notes

Notes for my classes at Kent State
C++
1
star
19

mwrc-refactoring

Code smells and refactoring based on @jpignata's talk at Mountain West Ruby Conf
Ruby
1
star
20

wedding-site

Our wedding website
JavaScript
1
star
21

vim_configs

My VIM Configuration
Vim Script
1
star
22

psi

Presence Solution Innovations
PHP
1
star
23

montessori

Montessori questionnaire
Ruby
1
star
24

fun-codez

Just some fun/learning code/challanges
Ruby
1
star
25

vim-guitar

Vim Plugin to help play from guitar lead sheets and tabs
Vim Script
1
star
26

simple-hasher

Simple, reversible hashing algorithm for obscuring integers
Ruby
1
star