Index: trunk/packages/invirt-base/debian/changelog
===================================================================
--- trunk/packages/invirt-base/debian/changelog	(revision 2940)
+++ trunk/packages/invirt-base/debian/changelog	(revision 2941)
@@ -1,7 +1,12 @@
 invirt-base (0.0.29) unstable; urgency=low
 
+  [ Greg Brockman ]
   * Added a safestructs for doing config without raising.
 
- -- Greg Brockman <gdb@mit.edu>  Tue, 19 Jan 2010 23:49:19 -0500
+  [ Evan Broder ]
+  * Support running invirt-reload directly from a package postinst,
+    instead of via triggers. (LP: #439426)
+
+ -- Evan Broder <broder@mit.edu>  Wed, 27 Jan 2010 21:18:07 -0500
 
 invirt-base (0.0.28) unstable; urgency=low
Index: trunk/packages/invirt-base/debian/invirt-base.postinst
===================================================================
--- trunk/packages/invirt-base/debian/invirt-base.postinst	(revision 2940)
+++ trunk/packages/invirt-base/debian/invirt-base.postinst	(revision 2941)
@@ -27,5 +27,9 @@
 
     triggered)
-        invirt-reload
+        if dpkg --compare-versions "$DPKG_RUNNING_VERSION" ge '1.14.5ubuntu10~~'; then
+            invirt-reload
+        else
+            DPKG_MAINTSCRIPT_PACKAGE='' invirt-reload
+        fi
     ;;
 
Index: trunk/packages/invirt-base/scripts/invirt-reload
===================================================================
--- trunk/packages/invirt-base/scripts/invirt-reload	(revision 2940)
+++ trunk/packages/invirt-base/scripts/invirt-reload	(revision 2941)
@@ -1,3 +1,12 @@
 #!/bin/bash
+
+if [ "$DPKG_MAINTSCRIPT_PACKAGE" != '' ] && \
+    [ $# = 0 ] && \
+    dpkg-trigger --check-supported 2>/dev/null; then
+    if dpkg-trigger --no-await invirt-base; then
+        echo "invirt-reload: deferring update (trigger activated)"
+        exit 0
+    fi
+fi
 
 for script in $(run-parts --test /etc/init.d); do
