[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#681331: unblock: mono-tools/2.10-5



Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock

Hiya,

We just got #681320 in mono-tools. It's a postinst trigger failure,
which will kill upgrades so is RC imho.

It turned out we were calling the wrong command here
(gac-package-install which should have been gac-install). I've fixed
this specific problem in -5 and also added some more guards against
failure. It's difficult to do anything as robustly as I'd like since
I've never been able to construct a reproducer scenario for this trigger
failure.

Diff attached. Please consider unblocking it.

Cheers,

-- 
Iain Lane                                  [ iain@orangesquash.org.uk ]
Debian Developer                                   [ laney@debian.org ]
Ubuntu Developer                                   [ laney@ubuntu.com ]
PhD student                                       [ ial@cs.nott.ac.uk ]
diff -Nru mono-tools-2.10/debian/changelog mono-tools-2.10/debian/changelog
--- mono-tools-2.10/debian/changelog	2012-06-26 19:09:09.000000000 +0100
+++ mono-tools-2.10/debian/changelog	2012-07-12 11:54:26.000000000 +0100
@@ -1,3 +1,17 @@
+mono-tools (2.10-5) unstable; urgency=low
+
+  * [f5fdaf0] Ignore failures in the postinst trigger. It's difficult to
+    guarantee what's going to be available when the trigger is run. We might
+    as well not fail if running any of the commands fails, since that's no
+    worse than not registering the packages.
+  * [8817190] Call gac-install instead of gac-package-install to install mono
+    gac-package-install is for installing /packages/ into the GAC.
+    gac-install is for initialising the gac itself. It wasn't right to call
+    gac-package-install here. Also, check that required files exist before
+    proceeding. (Closes: #681320)
+
+ -- Iain Lane <laney@debian.org>  Thu, 12 Jul 2012 11:53:48 +0100
+
 mono-tools (2.10-4) unstable; urgency=low
 
   * [51d46c9] When triggered, manually install mono bits. This is to work
diff -Nru mono-tools-2.10/debian/monodoc-browser.postinst mono-tools-2.10/debian/monodoc-browser.postinst
--- mono-tools-2.10/debian/monodoc-browser.postinst	2012-06-26 19:09:09.000000000 +0100
+++ mono-tools-2.10/debian/monodoc-browser.postinst	2012-07-12 11:54:26.000000000 +0100
@@ -18,19 +18,24 @@
 
         # Try to register stuff manually (these commands are idempotent, so
         # it'll be fine when the real postinst is run later on)
+
+        # We ignore all failures here. Either the stuff can be registered now—
+        # in which case we'll do it—or it can't, in which case we cannot
+        # proceed anyway. Failure isn't harmful.
         mono_gac_status=`dpkg-query -f '${Status}' -W mono-gac`
         if [ "$mono_gac_status" != "install ok installed" -a \
-            -x /usr/share/cli-common/gac-install ]; then
-            /usr/share/cli-common/gac-package-install mono
+            -x /usr/share/cli-common/gac-install -a \
+            -e /usr/share/cli-common/runtimes.d/mono ]; then
+            /usr/share/cli-common/gac-install mono || true
         fi
 
         libgtk_cil_status=`dpkg-query -f '${Status}' -W libgtk2.0-cil`
         if [ "$libgtk_cil_status" != "install ok installed" -a \
-            -x /usr/share/cli-common/gac-package-install ]; then
-            /usr/share/cli-common/gac-package-install libgtk2.0-cil
+            -x /usr/share/cli-common/gac-package-install -a \ 
+            -e /usr/share/cli-common/packages.d/libgtk2.0-cil.installcligac ]; then
+            /usr/share/cli-common/gac-package-install libgtk2.0-cil || true
         fi
 
-        # Now don't fail; we've done the best we can.
         /usr/bin/update-monodoc || true
 
         ;;

Attachment: signature.asc
Description: Digital signature


Reply to: