#!/usr/bin/env python3
# Copyright (c) 2017, the R8 project authors. Please see the AUTHORS file
# for details. All rights reserved. Use of this source code is governed by a
# BSD-style license that can be found in the LICENSE file.

try:
    import gi
    gi.require_version('Notify', '0.7')
    from gi.repository import Notify
    Notify.init('R8 build tools')

    def notify(message):
        try:
            Notify.Notification.new('R8 build tools', message).show()
        except:
            return

except (ImportError, ValueError):

    def notify(message):
        return
