Documentation of the functionality that update-notifier currently provides and ways in which update-notifier can stop being a long running process. Moving away from a long running process will help with the goal of reducing the desktop footprint

File Watches

Reboot file

Watches for /var/run/reboot-required and notifies you if a reboot is required.

Monitoring could be replaced by an upstart-file-bridge.

New package hook

Watches for a new file in /var/lib/update-notifier/user.d and then executes the hook there.

Monitoring could be replaced by an upstart-file-bridge and still use update-notifier to execute the hook.

New crash report

Watches for a new crash report in /var/crash/ and then launches /usr/share/apport/apport-gtk.

Monitoring could be replaced by an upstart-file-bridge and the job would directly call apport-gtk.

Avahi being disabled

Watches for the existence of the file /var/run/avahi-daemon/disabled-for-unicast-local and then presents a notification regarding avahi having been disabled.

Monitoring could be replaced by an upstart-file-bridge and still use update-notifier to display the notification.

Other Notifications

New release of Ubuntu

update-notifier includes a release checking system that checks, every two weeks, to see if there is a new release of Ubuntu by calling /usr/lib/ubuntu-release-upgrader/check-new-release-gtk. If there is a new release check-new-release-gtk will present you with a dialog stating "A new version of Ubuntu is available. Would you like to upgrade?".

There is some redundancy here in that /etc/update-motd.d/91-release-upgrade also checks for a new release of Ubuntu, however this is only run when a user gets a terminal log in. A new weekly cron job could be created that would call /usr/lib/ubuntu-release-upgrader/release-upgrade-motd which would update /var/lib/update-notifier/release-upgrade-available. Then an upstart job, run on desktop-session-start, would check if release-upgrade-available exists and if so start check-new-release-gtk or do-release-upgrade.

Disk with packages on it

What happens now

Mounted drives are checked to see if they contain one of the following directories, '/ubuntu', '/cdromupgrade', '/aptoncd.info'. In the event that it does a secondary check is made using /usr/lib/update-notifier/apt-cdrom-check. Depending on the outcome of that check one of the following happens:

A dialog regarding a volume with software packages being detected is presented and /usr/lib/update-notifier/backend_helper.py is called which then launches synaptic (software-center is a fallback option) with the --add-cdrom switch.

A dialog is presented regarding upgrading from the CD and /usr/lib/update-notifier/cddistupgrader is run, which will then run the release-upgrader from the disk.

A dialog is presented regarding a volume with "addon" software applications being detected. Depending on the response either /usr/lib/update-notifier/backend_helper.py is called or gnome-app-install --addon-cd with the mount point is.


Remove support for "addon" CDs. - done in r755

Hardware that requires firmware

What happens now

update-notifier watches for devices to be connected via USB. If the vendor id matches 03f0 and the product id is ??{17,2a} then /usr/bin/hp-mkuri -c is called to see if firmware is required. If it is then /usr/bin/hp-plugin-ubuntu is called.

If update-notifier is built with system-config-printer support then, if the device connected is a printer then update-notifier checks to see if system-config-printer is already running. If it is not then system-config-printer-applet is launched.


The watching for specific devices should be done by an upstart job that should probably be shipped with hplip and not update-notifier.

UpdateNotifier (last edited 2013-01-31 21:43:17 by brian-murray)