MM's install-info problem {was "still no SAS"}

Dirk Eddelbuettel edd at debian.org
Fri Jul 18 18:23:31 CEST 2008


(shall we take this off-list?)

On 18 July 2008 at 18:04, Martin Maechler wrote:
|     DE> Martin: Try it on Ubuntu; I still don't know why your install-info does not
|     DE> play nicely when mine always does (and Dale's too, seemingly).
| 
| The problem persists.
| If this helps, I see the same problem also for the 'r-faq-info'
| (R 2.7.1) package from CRAN
| and that is even made ubuntu-specific :
| 
| -------------------------------------------------------------------------
| Setting up r-doc-info (2.7.1-1hardy0) ...
| install-info: No such file or directory for R-FAQ
| dpkg: error processing r-doc-info (--configure):
|  subprocess post-installation script returned error exit status 1
| Errors were encountered while processing:
|  r-doc-info
| E: Sub-process /usr/bin/dpkg returned an error code (1)
| -------------------------------------------------------------------------

Given how it hits only you, and given you it is triggered by install-info, I
would suspect that your main info data file got corrupted, maybe by using
"both" install-info versions on it. On Debian/Ubuntu install-info has the
same name but slightly different semantics/behaviour than the FSF one. I
think this is seen as a historic accident. Just a guess though...

| Dirk, how can I find out the exact calling sequence with which
| wajig / apt-get / dpkg / .......  call  install-info ?

Excellent question.  In a nutshell, a .deb is an ar(1) archive containing a
tarball with files as well as up to four script (pre|post)|(inst|rm).  The
version that is running is always install into

	/var/lib/dpkg/info/$package.(pre|post)|(inst|rm)

so here we are dealing with /var/lib/dpkg/info/ess.postinst.  Parts of these
files are automagically filled in by the dh_* helper scripts you see being
called in debian/rules [ which you so successfully fixed for SAS :) ]  In
this case, all 'actionable' code actually comes from these: dh_installdocs,
dh_installemacsen (which triggers the .el -> .elc compilation) and
dh_installinfo. 

The thing that you are probably after is at the very end:

   # End automatically added section
   # Automatically added by dh_installinfo
   if [ "$1" = "configure" ]; then
           install-info --quiet /usr/share/info/ess.info
   fi
   # End automatically added section

and is pretty straightforward.  See how that behaves when you/root run just
the command.

On one machine, I did have a busted /usr/share/info/dir file many many years
ago and ended up re-creating it...   But you may know the format better.  Or
it may be something else alltogether.

Dirk

-- 
Three out of two people have difficulties with fractions.



More information about the ESS-Debian mailing list