Collection of new/updated packages available for testing (rpm)

Michael Ring Michael.Ring@t-mobil.de
Tue Aug 22 01:44:00 GMT 2000


I've uploaded new/updated versions of 

autoconf-2.13-3.tar.gz   << new package
automake-1.4-1.tar.gz    << new package
libtool-1.3.5-1.tar.gz   << new package
perl-5.6.0-1.tar.gz      << new package **** not maintained by me ****
patch-2.5.4-1.tar.gz     << update
rpm-3.0.5-1.tar.gz       << new package
bzip2-1.0.1-3.tar.gz     << update
db-3.1.17-1.tar.gz       << new package

to
 
ftp://sources.redhat.com/pub/cygwin/private/cygwin-rpm-712/tar

Basically those packages are needed to build software with rpm (Redhat Package
Manager).

A detailed description of all packages will follow in seperate mails.


Here's why I did it:
====================

o rpm offers far more flexibility to package installation / deinstallation than
classical tar.gz files.

o Things like postinstall and preremove-scripts can easily be included in a
software package.

o Sources live in a special file called the source-rpm. The original sourcecode
of a software, patches to make it work and something like a script to build the
software (called spec-file) is also included.

o The binary distribution of a software package lives in rpm-files. Included in
this simgle file are the binaries, custom postinstall or preremove scripts and
dependency information (What does a package need to run, what does it provide to
others)

All those facs faciliate the process of maintaining software. This makes rpm the
choice of many linux-dists like redhat, mandrake, suse and others.


How to work with rpm on cygwin:
===============================

rpm's live as default in a directory tree below /usr/src/redhat.

Sourcecode and patches are stored in /usr/src/redhat/SOURCES

Spec-files (The build descriptions) are stored in /usr/src/redhat/SPECS


To re-build software you do the following:

o Read the announcement for rpm ;-)
o unpack the source-rpm with "rpm --install db-3.1.17-1.src.rpm"
o Change directory to /usr/src/redhat
o enter "rpm -ba SPECS/db.spec" (Now rpm will patch the sources for you, build
the software and will create the binary-rpm)
o now you are ready to install your brand new db-distribution by typing "rpm
--install --nodeps RPMS/i386/db-3.1.17-1.i386-cygwin.rpm"
o in case the package was installed before type: "rpm --upgrade --nodeps
RPMS/i386/db-3.1.17-1.i386-cygwin.rpm", which will remove the existing package
and the install the newly created one


rpm and cygwin-distribution in tar.gz format
============================================

Even though rpm-packages are much better than tar.gz - packages the prefered way
to distribute software at this time is to provide
.tar.gz packages in cygwin/latest and cygwin/contrib. Is is therefore necessary
to provide rpm-packages AND .tar.gz packages for new software.

Doing so is easy for binary-distributions, 

doing a "rpm2cpio db-3.1.17-1.i386-cygwin | cpio --extract --make-directories"
will create the binary tree in the current directory, which then can be
tar.gz'ed 
.

preparing the sources in .tar.gz is a little bit more complicated, I will
provide a script to do this job soon.


Where to get information about rpm:
===================================

o www.rpm.org is the official homepage, 
o Maximum RPM is a book available for download on www.rpm.org; it is a little
bit outdated but still helpfull as a beginners tutorial
o There's a mailing list, to subscribe, send mail to rpm-list-request@redhat.com
with `subscribe rpm-list` in the body.
o Usenet Newsgroup  linux.redhat.rpm
o cygwin specific problems should be discussed in
cygwin-apps@sources.redhat.com


More information about the Cygwin-apps mailing list