Bug 435294

Summary: "man cancel" doesn't work
Product: Red Hat Enterprise Linux 4 Reporter: Martin Poole <mpoole>
Component: cupsAssignee: Tim Waugh <twaugh>
Status: CLOSED NOTABUG QA Contact:
Severity: medium Docs Contact:
Priority: low    
Version: 4.6CC: pknirsch, tao
Target Milestone: rc   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-01-21 12:11:28 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 434967    
Bug Blocks:    

Description Martin Poole 2008-02-28 15:19:06 UTC
This also appears to affect RHEL4 as well.

+++ This bug was initially created as a clone of Bug #434967 +++

This affects Red Hat Enterprise Linux 5 as well.

+++ This bug was initially created as a clone of Bug #249768 +++

Description of problem:
cups uses the "alternatives" technology and so it calls the following script
during installation:
/usr/sbin/alternatives --install /usr/bin/lpr print /usr/bin/lpr.cups 40 \
         --slave /usr/bin/lp print-lp /usr/bin/lp.cups \
         --slave /usr/bin/lpq print-lpq /usr/bin/lpq.cups \
         --slave /usr/bin/lprm print-lprm /usr/bin/lprm.cups \
         --slave /usr/bin/lpstat print-lpstat /usr/bin/lpstat.cups \
         --slave /usr/bin/cancel print-cancel /usr/bin/cancel.cups \
         --slave /usr/sbin/lpc print-lpc /usr/sbin/lpc.cups \
         --slave /usr/share/man/man1/cancel.1.gz print-cancelman
/usr/share/man/man1/cancel-cups.1.gz \
...

In this case, "/usr/share/man/man1/cancel-cups.1.gz" is the "real" physical file
and /usr/share/man/man1/cancel.1.gz should (via
/etc/alternatives/print-cancelman) to the real one.

Unfortunately the cancel-manual is not named "cancel-cups.1.gz" but only
"cancel.1.gz" instead. So the link /etc/alternatives/print-cancelman points is
dangling.

Version-Release number of selected component (if applicable):
1.2.12-1.fc7

How reproducible:
100%

Steps to Reproduce:
1. install cups
  
Additional info:
The problem can be fixed by applying the following patch to cups.spec:
--- cups.spec.old       2007-07-13 11:49:07.000000000 +0200
+++ cups.spec   2007-07-26 23:19:01.000000000 +0200
@@ -202,7 +202,7 @@
 cd $RPM_BUILD_ROOT%{_sbindir}
 mv lpc lpc.cups
 cd $RPM_BUILD_ROOT%{_mandir}/man1
-for i in lp lpq lpr lprm lpstat; do
+for i in cancel lp lpq lpr lprm lpstat; do
        mv $i.1 $i-cups.1
 done
 cd $RPM_BUILD_ROOT%{_mandir}/man8

The patch basically adds the "cancel" manual to the list of manual files which
should be moved to *-cups so that they can be used with the mentioned
"alternatives" script.

There is only one small problem: after updating, the links are still broken
until the next call of "alternatives --config print"

Comment 1 RHEL Program Management 2008-10-31 16:36:20 UTC
This request was evaluated by Red Hat Product Management for
inclusion, but this component is not scheduled to be updated in
the current Red Hat Enterprise Linux release. If you would like
this request to be reviewed for the next minor release, ask your
support representative to set the next rhel-x.y flag to "?".

Comment 6 Tim Waugh 2009-01-21 12:11:28 UTC
Turns out this doesn't affect RHEL-4.8 after all.