Red Hat Bugzilla – Bug 169448
ksh rpm in extra channel should not obsolete pdksh rpm in base channel
Last modified: 2007-11-30 17:07:08 EST
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.10) Gecko/20050909 Fedora/1.0.6-1.2.fc3 Firefox/1.0.6
Description of problem:
ksh-20040229-8 rpm in RHEL3 ES extra channel obsoletes pdksh. But it contains regressions on pdksh, such as -e option to the echo command.
thus, this package should not have obsoleted pdksh which is in the base channel
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1.install rhel3 U4
2. subscribe to channel base and extra
3. up2date -u
Actual Results: ksh replace pdksh
Expected Results: pdksh still default ksh implementation
up2date -u pdksh returns to old implementation, but next up2date -u will put back ksh
oups, i meant up2date -i pdksh (install, not upgrade) returns to the old
implementation until next up2date -u
ksh needs to obsolete pdksh as both packages provide /bin/ksh.
AT&T's ksh is the 'real' ksh and pdksh is just a clone, so I'm not sure how ksh
can have regressions from pdksh. pdksh just behaves differently as it isn't 100%
compatible with the original.
If you've encountered any errors with the latest Red Hat provided packages of
AT&T's ksh (ksh-20050202-0.3E.1), please report them to firstname.lastname@example.org,
that's the feedback adress mentioned at http://www.research.att.com/sw/download/
(As we keep our package close to the upstream sources with just one minor patch
to make it buildable on ppc64, feedback should go upstream).
btw: an easy workaround to the echo -e problem is to use the systems echo command
by disabling ksh's builtin echo: 'builtin -d echo'
there is a lot of workaround for this particular problem :
- remove machine from extra channel
- do not update the system
- use bash
- call /bin/echo instead of just echo
- use printf instead of echo
- do not echo (looks like "the chicken doesn't need to cross the road")
the fact is that each workaround needs us to modify a whole set of production
scripts which is not an easy task.
this worked before and just doesn't work anymore. this looks like a regression
for the end customer.