Subject: questions about creating a new package
To: None <tech-pkg@netbsd.org>
From: Jeremy C. Reed <reed@reedmedia.net>
List: tech-pkg
Date: 02/09/2001 20:57:22
I have a few questions about creating a pkgsrc package.

I had a bunch of pkglint errors with my last package (thanks to Alistair
for fixing them). Apparently these errors were caused by not having NetBSD
RCS Id's.

I was able to work-around the problems for my newest pkgsrc by adding a
simple RCS tag $NetBSD$ to the files.

What is the easiest or best way to create the correct RCS tags? (Any
examples?)

To build my pkgsrc (both times), I manually created a directory under a
category under my pkgsrc directory. Then I manually created the 
pkg/COMMENT, pkg/DESCR, pkg/PLIST, pkg/MESSAGE and Makefile files. The
first time I manually created files/md5,  but this time is used 'make
makesum'. Then to submit this new pkgsrc'd package I tar'd it up and made
it available from my webpage.

What is the correct way to do this? (How can I make a diff file that
contains these new directories and files so I can just include it in my
send-pr?)

Now, that I added new things to my pkgsrc tree which I grabbed from CVS,
next time I do an CVS update I'll have a few conflicts. How can I work
around this? How can I do it correctly the first time?

Maybe I should start learning how to use CVS and/or RCS? Any pointers to 
examples that I should follow for creating my own pkgsrc using ci?

Also, I've been told to use pkgdiff.

The manual page says:
 SYNOPSIS
      pkgdiff [diff(1) options] oldfile newfile

 DESCRIPTION
     The pkgdiff utility runs diff(1) on the named files, and generates output
     on stdout that is appropriate to be put as patch file into pkgsrc. An
     empty NetBSD RCS ID is output first, and some effort is made to ensure
     that the generated patch does not include any RCS IDs.

But the source doesn't seem to use these [diff(1) options].

And the source says:

 # Usage: pkgdiff newfile
 #        pkgdiff oldfile newfile
 #
 # Will output a patch ready for the NetBSD Pkgs Collection (unified
 # diff, plus no RCS IDs if possible). If only newfile is given,
 # oldfile is assumed as newfile.orig.

They (the man page vs. the source) don't seem to be in sync.

It appears that pkgdiff is for only one file at a time. Is this true?

Is it really usable for what I am trying to do (as shown in my example
above)?

If i should have used pkgdiff, then can someone please tell me how to use
pkgdiff WITH some examples?

Thanks!

I have several more things to package :)

And, of course, I'll submit my notes for the Packages.txt and the relevant
webpage.

   Jeremy C. Reed
   http://www.reedmedia.net/