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 [[UbuntuSpec:desktop-r-reduced-power-ram|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. === Actions === 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. === Action === The watching for specific devices should be done by an upstart job that should probably be shipped with hplip and not update-notifier.