Red Hat Bugzilla – Bug 57974
cvs depends on csh because of *one* script (sccs2rcs)
Last modified: 2007-04-18 12:38:52 EDT
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:0.9.7+) Gecko/20020103
Description of problem:
cvs-1.11.1p1-3.i386.rpm contains a script
/usr/share/cvs/contrib/sccs2rcs that is a csh script. This
means that the package depends on /bin/csh and that prevents
me from doing rpm -e tcsh which I would dearly love to do.
I've rewritten sccs2rcs in perl (which cvs already depends on
for other reasons) and will attach the rewritten version to
this bug. As a bonus, the new version runs about 50% faster.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. head -1 /usr/share/cvs/contrib/sccs2rcs
Actual Results: #! /bin/csh -f
Expected Results: #! /usr/bin/perl -w
I've submitted this re-write to the cvs guys so hopefully they'll
include it themselves in a future version of cvs.
Created attachment 41713 [details]
sccs2rcs re-written in perl
It seems like the cvs guys are fairly unresponsive to this issue.
(and the rest of the thread) for the discussion.
I recommend redhat split the cvs rpm into two, cvs and cvs-contrib since
it seems like the contrib directory in the cvs tarball isn't claimed or
supported by the cvs maintainers.
The script in question (sccs2rcs) doesn't even work correctly in the latest
official distribution of CVS (cvs-1.11.1p1.tar.gz).
This bug is still alive in the cvs-1.11.1p1-8.7 update.
splitting into a separate package for contrib just adds an extra pkg
and isn't consistent with what we do for "contribs" from other
packages. As for re-writing in perl, I don't see replacing one
scripting language for another as being worthy of a fix-- tcsh is
still a pretty common package, and much more lightweight than perl.
You seemed to ignore the fact that CVS already depends on perl for
other reasons as I mentioned in my initial comment. This bug was
always about removing a dependency, not replacing one.
csh deserves to die and it's silly for a common utility like CVS to
continue to depend on it.