Revision 1 as of 2008-12-10 00:04:26

Clear message


  • Synchronous Notifications (triggered by user)
    • must be on screen for immediate feedback
    • Volume (just hardware keys, not applications)
    • Brightness
  • Asynchronous Notifications (system triggered)
    • Any freedesktop.org notifications
    • Network-manager saying wifi disconnected
  • Affected applications: http://people.ubuntu.com/~pitti/tmp/notifications/

    • This list should be converted to bug reports


  • Sound system for cool new sound effects (for volume feedback)

Handling Notifications that use Actions

  • We will modify applications that do this
  • Dx team committed to update all apps in main
    • don't use actions
    • modify strings to not refer to the actions
  • prioritize fixing main packages that use actions:
    • Evolution (Ted) -> move to new IM panel indicator

    • gnome-power-manager (Ted to patch to remove "don't show again")
    • system-config-printer
    • gnome-settings-daemon for a11y
    • bluez-gnome
    • network-manager-applet
    • gnome-settings-daemon
    • transmission
    • [...] to be completed


  • Dx to add k-notify support to notification daemon
  • Better solution: Reimplement kdelib's knotify implementation with translating requests to fd.o D-BUS calls

Apps with custom notifications

  • mozilla apps - working with upstream to fix for xul generally

Propose new use of notifications

  • advise upstream developers to correctly use GetCapabilities() method on DBus to figure out what a notification-daemon actually supports, currently almost no app does correctly test for exposed capabilities

  • don't commit to ones that use timeouts in jaunty; just file bugs upstream, targets of opportunity
  • Martin wants to honor time outs in Jaunty to handle notifications that take a long time to read
  • Dx will use apport to capture info about apps using unsupported api until Jaunty release, since the Big Archive Grep only covered C and some Python, not Mono, direct D-BUS, etc.
    • so we can modify libnotify to detect these and report them (Martin will do this change)
    • example: gnome-mount uses timeouts with a USB stick saying "please wait, writing data to disk" and then "it is now safe to unplug"
      • we should check every application like this when we break the API
      • we might not catch everything, especially programs not in C, that are still using the old API

Compile Time Guidance for Future Applications

  • Wrap libnotify_add_action() etc. into macros which use #warning/#error
  • After fixing main and worst offenders
  • start with a warning
  • throw an error later when detecting bad libnotify usage, forcing package to be fixed

Messaging indicator

  • Convert applications like evo and pidgin to record new messages to this new panel applet
  • pidgin currently has a mode where it will only show a panel icon if you have an unread message; you then click that icon and pidgin window appears

Cleaning up notification area

  • Notifications are perceived as too indirect by DX team
  • in general bring up the applications instead of updating the icon
    • This is a contentious issue - could be annoying, not decided whether this lands in 9.04, at least for update-manager
  • Update notifier (updates and reboots)
    • u-m has an official API for triggering the notification; we must update this script
  • Jockey
  • Reboot would be handled directly in the update manager dialog
    • - but we need to consider the case where someone normally leaves computer on for weeks and then hits "reboot later" but forgets. Currently the panel icon telling you that you need to restart is there to nag you

To Land in Jaunty

  • New notification visual presentation extraordinary rendition (Blend Notifier 0.01)
  • Synchronous notifications (eg gnome-settings-daemon)
  • New notification daemon
  • Patches to fix action notifications in main
  • Translate knotify calls to libnotify calls
  • Fix selected applications which have a custom notification system (Mozilla)
  • watch for abusive applications that might send hundreds of notifications or something similarly bad
    • - if we do this we avoid having to engineer the daemon to deal with spam
  • encourage upstreams to use the notifications when appropriate
  • Drop notification from jockey, just open apps

What is needed for Jaunty +1

  • packaging latest GDM
    • get the upgrade right and allow people to develop on/with it
    • do not make it the default for 9.04
  • device kit


  • assistance with packaging and integration
  • reviewing packages and accepting packages
  • support and advice regarding various existing notification consumers/producers:
    • Gnome settings demon
    • Gnome power manager
    • compiz plugin
  • advice regarding playing sounds to provide volume control feedback
  • advice regarding where to store assets such as icons
  • help understanding existing "do not disturb" systems and whether/how to use them
  • whatever work is required to support the message status panel work, which is not known