Carl Wilhelm Soderstrom wrote:
> Ok, I'm a new Dweebian^WDebian user; and I am wondering how
> experienced users deal with .rpms and non-.deb'ed software.
...[snip]... 
> do you convert the .rpm to a .deb with alien; and hope nothing
> breaks?

That's one possibility, but not the most desireable.

> make a .deb package yourself, taking a lot of time (which others
> will have to duplicate as well, since you aren't a debian package
> contributor and have no desire to be one).

This is obviously one of the best options.  Building *.debs and being
a Debian Developer aren't mutually intrinsic.  In fact, makig a *.deb
of a package is not that hard, but it is a slight learning curve.  The
easiest way, however, to update an existing package is to use CVS and
the corresponsing build tools.  "apt-get install" these packages:

    build-essential
    debhelper
    cvs
    cvs-buildpackage
    fakeroot (or sudo)

Once these are installed, pick out a directory for your CVS
repository:

    bash$ mkdir ~/MYCVSROOT
    bash$ export CVSROOT=~/MYCVSROOT
    bash$ cvs init

Create the directory.  Export the CVSROOT env variable.  Initialize
the root directory.  Then download and inject the source package:

    bash$ apt-get source desiredpackage
    bash$ cvs-inject desiredpackage_0_0_0-1.dsc

Download the new source code from upstream:

    bash$ wget \
    > ftp://upstream.server.com/pub/desiredpackage/desiredpackage-0.0.1.tar.gz

Expode it:

    bash$ tar zxvf desiredpackage-0.0.1.tar.gz

Rename the directory and retar/gzip it:

    bash$ mv desiredpackage-0.0.1 desiredpackage-0.0.1.orig
    bash$ tar zcvf desiredpackage-0.0.1.orig.tar.gz \
    > desiredpackage-0.0.1.orig

Use the wrapper program cvs-co-upgrade(1) to update the CVS repository
with the new source:

    bash$ # cvs-co-upgrade <package> <old version> <new version>
    > cvs-co-upgrade desiredpackage 0.0.0 0.0.1

This will search for the old version file: package-0.0.0.orig.tar.gz
and diff it to package-0.0.1.orig.tar.gz, then build the cvs commands
to add/remove files and update existing files.  If there are
conflicts, check out the source, resolve them, and check it back in.

    bash$ cvs co packagename
    bash$ #make fixes
    bash$ cvs ci -m 'made fixes'

Build the package directly from CVS, don't sign the control file,
don't sign the changelog file, and use fakeroot to set up file perms.

    bash$ cvs-buildpackage -Mdesiredpackage -uc -us -rfakeroot

If all goes well:

    bash$ cd ..
    bash$ dpkg --install desiredpackage*i386.deb

> Here at Real-Time, we build .rpms for everything; especially custom
> packages. Bob & Nate can build rpms from scratch faster than you'd
> believe.  :) this is not the course I want to follow as a
> single-workstation home user, however.

Yeah, I've seen your work...  *snicker*

-- 
Chad Walstrom <chewie at wookimus.net>                 | a.k.a. ^chewie
http://www.wookimus.net/                            | s.k.a. gunnarr
Key fingerprint = B4AB D627 9CBD 687E 7A31  1950 0CC7 0B18 206C 5AFD

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 232 bytes
Desc: not available
Url : http://shadowknight.real-time.com/pipermail/tclug-list/attachments/20010213/935ce81a/attachment.pgp