old-www/LDP/LG/issue19/unrpm.html

154 lines
7.5 KiB
HTML

<!--startcut ==========================================================-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<title>UnRpm Issue 19</title>
</HEAD>
<BODY BGCOLOR="#ffdfae" TEXT="#000000" LINK="#0000FF" VLINK="#0020F0"
ALINK="#FF0000">
<!--endcut ============================================================-->
<H4>
&quot;Linux Gazette...<I>making Linux just a little more fun!</I>&quot;
</H4>
<P> <HR> <P>
<!--===================================================================-->
<center><h1>The UnRpm-Install Package</h1></center>
<center>
<h4><a href="mailto: layers@vax2.rainis.net">by Larry Ayers</a></h4>
</center>
<P><hr>
<center><h3>Introduction</h3></center>
<p>No matter what distribution of Linux you have installed, there will come a
time when you would like to install a package in one of the other
distribution's formats. No one distribution has available every possible
package, and the updates to packages often depend on a volunteer's inclination
and time constraints.
<p>On a reasonably current and well-maintained Linux system, most of the
quality source-code packages will compile without much effort beyond perusal
of the README and INSTALL files. In other words, <em>*.rpm</em> and
<em>*.deb</em> packages aren't vitally necessary, though the ease of upgrading
or removal possible with these packages makes them a time-saving convenience.
<p>But few people have both the time and/or inclination to compile every new
program from source. It <em>does</em> take more time than using a precompiled
package, and often a package maintainer will have access to patches which
haven't yet been incorporated into an official release. One of these patches
might be just what it takes to insure a successful installation on your
system! Therefore it stands to reason that the more different genera of
precompiled packages you have available, the wider the pool of available
software.
<p>A year and a half ago I was running a Slackware 3.0 system, but had used
Redhat just long enough to appreciate the value of an <b>rpm</b> package. As I
remember, there were a few pieces of software which I was unable, no matter
what tweaking I did, to successfully compile. The <b>rpm</b>'s available for those
packages were tempting, but I didn't want to start from scratch and reinstall
the Redhat Linux distribution just for a few packages. Poking around the
Redhat FTP site, I saw that the source for the then-current version of <b>rpm</b>
was available, and after various trials and tribulations I managed to
successfully compile and install it. The crucial factor which made it all
work was downloading and installing a newer version of <i>cpio</i>, which was
right there in the Redhat <b>rpm</b> directory. It wasn't the easiest installation
I've ever done, but I don't blame the folks at Redhat for not making it a
no-brainer. After all, they evidently worked long and hard developing the <b>rpm</b>
package system and they surely wanted to leverage its value in influencing
users to buy their distribution. Redhat is to be commended for resisting
purely commercial urges and making <b>rpm</b> freely available.
<p>Two distributions later, I never have gotten around to reinstalling <b>rpm</b>,
partly because the Debian distribution has a utility called <b>alien</b>,
which will convert an <em>*.rpm</em> file into a <em>*.deb</em> file. This is
a nice utility, but sometimes I'd just like to poke around inside a package
and see what's there without actually installing it. Both <b>rpm</b> and Debian's
<b>dpkg</b> utility have command-line switches for just listing the
contents, or extracting individual files from a package. These aren't the
sort of switches I would use often enough to memorize, and it's a pain to read
the man page each time. So I gradually meander my way to the point of this
article...
<center><h3>UnRpm-Install</h3></center>
<p>Recently, in nearly daily updates, <a href="mailto: robotti@pop.erols.com">
Kent Robotti</a> has been releasing to the Sunsite archive site a
package of programs and scripts which simplify working with these various
package formats. UnRpm is most useful when used in conjunction with the
<b>Midnight Commander</b> file manager, as one component of the package is a
set of entries meant to be appended to the <em>mc</em> user menu.
<p>This is what the package includes:<br>
<ul>
<li>the version of <b>cpio</b> which works well with <b>rpm</b>
<li>two shell scripts from the Slackware distribution, <b>installpkg</b>
and <b>removepkg</b>
<li><b>rpm2cpio</b>, a program from Redhat which converts an <b>rpm</b>
archive to a <b>cpio</b> archive
<li><b>dpkgdeb</b>, a program from the Debian distribution which unpacks,
packs, or provides information about a Debian archive file
<li><b>unrpm</b> and <b>undeb</b>, two shell scripts which can either be
used as is or be called by the <b>Midnight Commander</b>.
<li><b>Update.mc</b>, a shell script which will append entries for the above
scripts and programs to the <kbd>/usr/lib/mc/mc.menu</kbd> file
<li><b>Install</b>, a shell script which installs the above binaries and
shell scripts, and also thoughtfully renames any pre-existing
equivalents in case you may want to back out any of the installed files
</ul>
<p>The earlier versions of UnRpm-Install included statically-linked binaries, no
doubt to make them usable by a wider variety of users, but with the
disadvantage of large binaries. Since most systems have compatible
<em>libc</em> versions installed, which is the only library linked with the
binaries, recent versions have included the smaller dynamically-linked
versions.
<p>The <b>Midnight Commander</b> in its recent incarnations has excellent
support built-in for treating these various archive formats as virtual
file-systems, allowing the user to browse through their contents without
actually expanding them. The menu entries provided by UnRpm expand upon these
capabilities, making it easier than ever to convert one format to another and
to see just what an archive will install on your system.
<p>There's nothing in UnRpm-Install which you couldn't gather up yourself, from
various FTP sites or distribution cd's. What makes the package valuable is
that Kent Robotti has done this for you, and presented these disparate
binaries and scripts as a coherent whole, bound together by the Midnight
Commander used as archive manager.
<center><h3>Availability</h3></center>
<p>Various versions of UnRpm-Install are still in the /pub/Linux/Incoming directory of
the <a href="ftp://sunsite.unc.edu/pub/Linux/Incoming">Sunsite</a> FTP
archive, but the most recent version will eventually make its way into
<a href="ftp://sunsite.unc.edu/pub/Linux/utils/compress">the archive
utility</a> directory.
<!--===================================================================-->
<P> <hr> <P>
<center><H5>Copyright &copy; 1997, Larry Ayers<BR>
Published in Issue 19 of the Linux Gazette, July 1997</H5></center>
<!--===================================================================-->
<P> <hr> <P>
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
ALT="[ TABLE OF CONTENTS ]"></A>
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
ALT="[ FRONT PAGE ]"></A>
<A HREF="./qps.html"><IMG SRC="../gx/back2.gif"
ALT=" Back "></A>
<A HREF="./booting.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
<P> <hr> <P>
<!--startcut ==========================================================-->
</BODY>
</HTML>
<!--endcut ============================================================-->