djvulibre-bin produces garbage in the root (/man1/*)

Bug #462193 reported by Volodymyr Buell
100
This bug affects 17 people
Affects Status Importance Assigned to Milestone
debhelper
New
Undecided
Unassigned
djvulibre (Debian)
Fix Released
Unknown
djvulibre (Ubuntu)
Fix Released
High
Unassigned
Lucid
Fix Released
Undecided
Unassigned

Bug Description

Binary package hint: djvulibre-bin

djvulibre-bin 3.5.22-1ubuntu2 (karmic) installs garbage in the root. After upgrading it places its man pages into /man1 directory.

Installed files (info from deb):

/man1
/man1/any2djvu.1
/man1/bzz.1
/man1/c44.1
/man1/cjb2.1
... etc

TESTCASE:
Install the package and run "ls /man1" (it should fail, because /man1 shouldn't exist)

Nikolaus Rath (nikratio)
Changed in djvulibre (Ubuntu):
status: New → Confirmed
Revision history for this message
Frederik Elwert (frederik-elwert) wrote :

This also results in manpages not being automatically found by man.

Japanese manpages are correctly installed to /usr/share/man/ja/man1/, default (English) manpages shoud also go into /usr/share/man/man1 instead of /man1.

Revision history for this message
Peter Hoeg (peterhoeg) wrote :

Problem still present on lucid.

Revision history for this message
Andrej Rohaŭ (arohau) wrote :

It might as well be a debhelper bug. Happens due to the following glob pattern usage in the package install files:

usr/share/man/{.,*}/man1/*

which glob expands to:

debian/tmp/usr/share/man/./man1/any2djvu.1

dh_install chokes on this dot in the path and cannot guess the destination directory correctly, because that single dot is exactly the same as $srcdir for dh_install itself. During processing:

# Guess at destination directory.
$dest=$src;
$dest=~s/^(.*\/)?\Q$srcdir\E\///;
$dest=~s/^(.*\/)?debian\/tmp\///;
$dest=dirname("/".$dest);

the 2nd regexp reduces the path to:

man1/any2djvu.1

the 4th regexp makes it:

/man1

That's it. Possible solution could be to use canonpath() during initial $src processing or fiddle with regexp somehow, or just refrain from using this kind of pattern in install files. Attached is a quick fix to replace the faulty glob pattern with two normal ones for the affected package.

tags: added: patch
tags: added: patch-accepted-debian
Rolf Leggewie (r0lf)
Changed in djvulibre (Ubuntu):
importance: Undecided → High
milestone: none → maverick-alpha-3
Rolf Leggewie (r0lf)
Changed in djvulibre (Ubuntu):
milestone: maverick-alpha-3 → lucid-updates
Revision history for this message
Rolf Leggewie (r0lf) wrote :

looks like this has already been fixed in Debian, so Maverick should ship correctly. Attaching debdiff for lucid-proposed. Kindly requesting sponsorship.

Revision history for this message
Benjamin Drung (bdrung) wrote :

Rolf, please cherry pick the relevant change. ${misc:Depends} is not a valid change for a SRU (unless it fixes a real bug). Please resubscribe ubuntu-sponsors once you have a new debdiff.

Revision history for this message
Rolf Leggewie (r0lf) wrote :

The sponsors team sucks more and more every year (sorry guys). This ticket has two patches. I'm not being paid to do this, so, sorry to disappoint you, but I'm not taking orders. IMNSHO, this patch should include misc:Depends. If you believe that Ubuntu is better served by perpetuating the status quo instead of taking one of the two patches , feel free to do so. Maybe sponsors have just grown too lazy to do even the easiest of tasks themselves or tweaking simple patches to their taste and prefer to give out orders now instead. I've made the change for me locally, that's basically all I need. And I'm almost done giving up to care about giving back code and patches to Ubuntu because the community people who watch over it are such a pain to deal with.

For those who loved Ubuntu's original approach of putting "it works" ahead of due process I'll put up a patched packaged in my PPA.

Revision history for this message
Javier López (javier-lopez) wrote :

Debdiff without additional changes. I suscribe ubuntu-sponsors again.

Benjamin Drung (bdrung)
Changed in djvulibre (Ubuntu):
assignee: nobody → Benjamin Drung (bdrung)
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package djvulibre - 3.5.22-9ubuntu1

---------------
djvulibre (3.5.22-9ubuntu1) maverick; urgency=low

  * Merge from Debian unstable (LP: #462193), remaining change:
    + Fix thumb2 porting issues; we suspect that the mov found during code
      review is not an active code path; adding compile time error
      #ifdef __thumb__ to ensure that its really not used in Ubuntu;
      Thanks for Dave Martin for this patch (LP: #513725)
  * Use autotools-dev to update config.* files to unclutter debdiffs.
  * Change recommendation from mozilla-firefox to firefox (LP: #337508).

djvulibre (3.5.22-9) unstable; urgency=low

  * fix typo in debian/copyright
  * include upstream changes including nsdejavu XtShellStrings fix

djvulibre (3.5.22-8) unstable; urgency=low

  * upstream patch escapes fields in djvused output-* (closes: #564684)
  * ditch libjpeg62-dev dependencies in favour of libjpeg-dev (closes: #569233)
  * rev deb policy

djvulibre (3.5.22-7) unstable; urgency=low

  * patch typos (closes: #551398)
  * man page install (closes: #561350), note dh_installman would botch i18n

djvulibre (3.5.22-6) unstable; urgency=low

  * patch for typos, thanks Jakub Wilk <email address hidden> (closes: #551109)

djvulibre (3.5.22-5) unstable; urgency=low

  * dh ${misc:Depends} for straggler binary packages
  * sh4 patch from Nobuhiro Iwamatsu <email address hidden> (closes: #550172)

djvulibre (3.5.22-4) unstable; urgency=low

  * Clean lintian issues:
    - rev deb std
    - cease ignoring errors in installation scripts
    - debug package into section: debug
    - dh ${misc:Depends} for all packages

djvulibre (3.5.22-3) unstable; urgency=low

  * Compensate for change in dh_install {,} handling (closes: #538394)

djvulibre (3.5.22-2) unstable; urgency=low

  * Invoke Elder Gods Horror to skirt libtool issue (closes: #512252), see
    debian/rules "Cthulhu"
 -- Benjamin Drung <email address hidden> Sat, 14 Aug 2010 13:28:27 +0200

Changed in djvulibre (Ubuntu):
status: Confirmed → Fix Released
Benjamin Drung (bdrung)
Changed in djvulibre (Ubuntu):
assignee: Benjamin Drung (bdrung) → nobody
milestone: lucid-updates → none
Revision history for this message
Benjamin Drung (bdrung) wrote :

This bug has one patch and one debdiff. ubuntu-sponsor is for sponsoring debdiffs. ubuntu-review is for getting patches into Ubuntu (via getting them upstream first).

My last comment was not meant as order. I'm not being paid to sponsor other work. If you want to me to sponsor it, my point needs to be addressed or explained why I'm wrong. I am not against making Ubuntu better. I am for making it properly and maintainable. This means that upstream issues should be forwarded to upstream and fixed there (in this case: Debian).

Rolf, I haven't sponsored your debdiff, because it didn't follow the stable release update process [1]. Procedure point 1 requires that the bug is fixed in the development release before fixing the stable release. I have done this by merging the package from Debian. Now we can fix it in lucid.

I will sponsor chilicuil's debdiff, because point 2.3. [1] requires a minimal patch applicable to the stable version of the package.

[1] https://wiki.ubuntu.com/StableReleaseUpdates

Revision history for this message
Benjamin Drung (bdrung) wrote :

uploaded chilicuil's debdiff to lucid-proposed

Changed in djvulibre (Ubuntu Lucid):
status: New → Fix Committed
Revision history for this message
Jonathan Riddell (jr) wrote :

Needs approval from ubuntu-sru, who need to be subscribed

Needs test case

"uploaded chilicuil's debdiff to lucid-proposed" needs clarification on where that debdiff is

Revision history for this message
Benjamin Drung (bdrung) wrote :

I uploaded djvulibre_3.5.22-1ubuntu4.1.debdiff from Francisco Javier P.L. (with chilicuil replaced with his real name).

Benjamin Drung (bdrung)
description: updated
description: updated
Revision history for this message
Martin Pitt (pitti) wrote : Please test proposed package

Accepted djvulibre into lucid-proposed, the package will build now and be available in a few hours. Please test and give feedback here. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you in advance!

tags: added: verification-needed
Revision history for this message
Jean-Baptiste Lallement (jibel) wrote :

SRU verification for Lucid:
I have reproduced the problem with djvulibre-bin 3.5.22-1ubuntu4 in lucid and have verified that the version of djvulibre-bin 3.5.22-1ubuntu4.1 in -proposed fixes the issue. I have verified that the man pages are now available.

Marking as verification-done

tags: added: verification-done
removed: verification-needed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package djvulibre - 3.5.22-1ubuntu4.1

---------------
djvulibre (3.5.22-1ubuntu4.1) lucid-proposed; urgency=low

  [ Andrei Rohau ]
  * hardwire globbing in install files. LP: #462193
 -- Javier Perez Lopez <chilicuil@i.am> Sat, 14 Aug 2010 16:44:03 +0200

Changed in djvulibre (Ubuntu Lucid):
status: Fix Committed → Fix Released
Changed in djvulibre (Debian):
status: Unknown → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.