Automatic conversion of the NetBSD pkgsrc CVS module, use with care
Find a file
wiz f887fd9807 Update to 0.59, provided by Koji Kondo in PR 21761.
Changes:
- If an odd number of parameters was given to validate() in the array
as its first argument, the error given would be different depending on
whether or not the pure Perl or XS version of the code was being used.
- Fixed incredibly odd bug that occurred in XS code when tainting was
on with Perl 5.00503.  Unfortunately, the only test case that reliably
reproduces this is one of Mason's tests, so no test was added.
- Fix some compiler warnings from MS Visual Studio 6.  Reported by Ron
Hill.
- When called from the main body of a script, the validation routines
would cause an undefined value warning if validation failed.  Reported
by Britton Kerin and fixed by Ilya Martynov.
- The XS code that handled callbacks expects all callbacks to return
an integer, instead of simply testing the returned value for truth.
This could cause strange warnings like 'Argument "InMemory" isn't
numeric in subroutine entry...'.  Based on a bug report from Robert
Dick for another module I wrote (Lingua::ZH::CCDICT).
- Fixed Params::Validate for Perl configurations where sizeof(IV) !=
sizeof(int).  Reported by Alain Barbet.
- Something around test 5 in 06-options.t appear to cause Perl to
die/segfault/something under 5.6.0.  These tests will be skipped with
5.6.0 in the future.  Reported by Christian Schaffner.
- When testing for a compiler, use nmake on Win32.  Implemented by
Ronald Hill.
- Added regex validation option.
- Added copyright info to each source file.  Added LICENSE file to
distro.
- Added an XS implementation, written by Ilya Martynov.  The pure Perl
implementation is still included as a fallback for users who do not
have a compiler handy.  The XS implementation gives a speed boost of
150% to 300%, depending on the complexity of the validation being
done.
This XS code is known to work Perl 5.00503+, but it may not work with
earlier versions of Perl.
- Fix Attribute::Params::Validate docs to show that attribute
declaration must have open paren immediately after "Validate" or
"ValidatePos".  Reported by Britton Kerin.
- Fix bug with Perl 5.8.0 when in PERL_NO_VALIDATION mode and calling
validate() expecting a hash ref to be returned.  Reported by Randal
Schwartz.
- Argh.  In 0.22 some of the tests printed their test counts (1..x)
after doing the tests.  This works with newer versions of
Test::Harness so I didn't notice it.  Reported by Peter Asemann.
- The last version's tarball was a mess, and had blib and other junk
in it.  This is a nice clean one.
- The various validation functions are now context sensitive, and will
return a reference in scalar context.  This may be a helpful speedup,
especially for large parameter lists.
- More optimization work.
-- Improved the speed of both validate() and validate_pos() by about
20-25%.
-- Improved the speed of the 'no validation' mode for validate() by
over 30%, for validation_pos() by 15%, and for validate_with() by
125%.
-- The speed of validate_with() has been improved by over 100%, but
this was at the expense of not validating its own incoming arguments,
thus making it a little more fragile.
- The PERL_NO_VALIDATION env var is now _only_ checked when the module
is loaded.  This means you cannot change it mid-program.  This is a
backwards incompatibility.
- Added a new function, validate_with(), that allow you to set various
options on a per-invocation basis, rather than on a per-package basis.
Patch by Ken Williams.
- Fix a doc nit where I had a wrong code example.  Reported by Britton
Kerin.
- Added a new validation option parameter, stack_skip, which allows
you to change how errors are reported by Params::Validate.
- Improve skipping of tests when run with 5.6.0.  Patch by Ken
Williams.
- Silence an uninit value warning
2003-06-03 14:13:56 +00:00
archivers Use tech-pkg@ in favor of packages@ as MAINTAINER for orphaned packages. 2003-06-02 01:15:31 +00:00
audio Use mk/gcc.buildlink2.mk rather than gcc/buildlink2.mk so lang/gcc3 2003-06-02 14:05:00 +00:00
benchmarks Use tech-pkg@ in favor of packages@ as MAINTAINER for orphaned packages. 2003-06-02 01:15:31 +00:00
biology Use mk/gcc.buildlink2.mk rather than gcc/buildlink2.mk so lang/gcc3 2003-06-02 14:05:00 +00:00
cad Use mk/gcc.buildlink2.mk rather than gcc/buildlink2.mk so lang/gcc3 2003-06-02 14:05:00 +00:00
chat Part of the update... file not needed any more. 2003-06-02 15:24:02 +00:00
comms Use tech-pkg@ in favor of packages@ as MAINTAINER for orphaned packages. 2003-06-02 01:15:31 +00:00
converters Use tech-pkg@ in favor of packages@ as MAINTAINER for orphaned packages. 2003-06-02 01:15:31 +00:00
cross Use mk/gcc.buildlink2.mk rather than gcc/buildlink2.mk so lang/gcc3 2003-06-02 14:05:00 +00:00
databases Use tech-pkg@ in favor of packages@ as MAINTAINER for orphaned packages. 2003-06-02 01:15:31 +00:00
devel Update to 0.59, provided by Koji Kondo in PR 21761. 2003-06-03 14:13:56 +00:00
distfiles These files belong to $MASTER_SITE_LOCAL - moved them there! 2000-12-05 00:23:05 +00:00
doc asm2html-1.4 update done. 2003-06-03 13:56:51 +00:00
editors Use mk/gcc.buildlink2.mk rather than gcc/buildlink2.mk so lang/gcc3 2003-06-02 14:05:00 +00:00
emulators Updated to version 0.30. 2003-06-03 11:51:45 +00:00
finance Use tech-pkg@ in favor of packages@ as MAINTAINER for orphaned packages. 2003-06-02 01:15:31 +00:00
fonts Use tech-pkg@ in favor of packages@ as MAINTAINER for orphaned packages. 2003-06-02 01:15:31 +00:00
games add & enable tuxmath 2003-06-03 00:42:07 +00:00
graphics Claim stewardship of these. 2003-06-03 09:39:00 +00:00
ham Use tech-pkg@ in favor of packages@ as MAINTAINER for orphaned packages. 2003-06-02 01:15:31 +00:00
inputmethod * Correct version numbers, (3.6.3 ->) 3.6p3 -> 3.6pl3. 2003-06-03 00:58:10 +00:00
lang Add missing "+". 2003-06-02 15:57:47 +00:00
licenses Whitespace cleanup. 2003-05-19 06:05:07 +00:00
mail Make this compile on NetBSD again. Fixes PR pkg/21757. 2003-06-02 17:44:13 +00:00
math Use mk/gcc.buildlink2.mk rather than gcc/buildlink2.mk so lang/gcc3 2003-06-02 14:05:00 +00:00
mbone Add & enable rtptools. 2003-05-07 20:53:25 +00:00
meta-pkgs Use tech-pkg@ in favor of packages@ as MAINTAINER for orphaned packages. 2003-06-02 01:15:31 +00:00
misc Update to setiathome-3.03nb2. 2003-06-02 19:55:16 +00:00
mk Add ee locale directory, used by xmule. 2003-06-03 09:20:16 +00:00
net Claim stewardship of these. 2003-06-03 09:39:00 +00:00
news Use mk/gcc.buildlink2.mk rather than gcc/buildlink2.mk so lang/gcc3 2003-06-02 14:05:00 +00:00
packages Add .cvsignore to stop cvs update listing every distfile and more 1999-11-24 11:53:24 +00:00
parallel Use tech-pkg@ in favor of packages@ as MAINTAINER for orphaned packages. 2003-06-02 01:15:31 +00:00
pkgtools Use tech-pkg@ in favor of packages@ as MAINTAINER for orphaned packages. 2003-06-02 01:15:31 +00:00
print Use mk/gcc.buildlink2.mk rather than gcc/buildlink2.mk so lang/gcc3 2003-06-02 14:05:00 +00:00
security Claim stewardship of these. 2003-06-03 09:39:00 +00:00
shells Use tech-pkg@ in favor of packages@ as MAINTAINER for orphaned packages. 2003-06-02 01:15:31 +00:00
sysutils Use tech-pkg@ in favor of packages@ as MAINTAINER for orphaned packages. 2003-06-02 01:15:31 +00:00
templates Fix the location of DESCR for the readme files 2001-11-03 03:26:08 +00:00
textproc Use tech-pkg@ in favor of packages@ as MAINTAINER for orphaned packages. 2003-06-02 01:15:31 +00:00
time Use tech-pkg@ in favor of packages@ as MAINTAINER for orphaned packages. 2003-06-02 01:15:31 +00:00
wm Use tech-pkg@ in favor of packages@ as MAINTAINER for orphaned packages. 2003-06-02 01:15:31 +00:00
www Update to ap-throttle-3.1.2nb1 2003-06-02 13:26:20 +00:00
x11 Update to 0.24: Logging functions were rewritten. Now it's possible to 2003-06-03 13:06:56 +00:00
Makefile Drop trailing whitespace. Ok'ed by wiz. 2003-05-06 17:40:18 +00:00
Packages.txt Update section on how to override libtool in packages with our own version. 2003-05-31 19:35:16 +00:00
pkglocate Use "printf" instead of "echo -n" because it's more portable. 2003-05-31 14:20:46 +00:00
README Drop trailing whitespace. Ok'ed by wiz. 2003-05-06 17:40:18 +00:00

$NetBSD: README,v 1.15 2003/05/06 17:40:18 jmmv Exp $

Welcome to the NetBSD Packages Collection
=========================================

In brief, the NetBSD Packages Collection is a set of software
utilities and libraries which have been ported to NetBSD.

The packages collection software can retrieve the software from its
home site, assuming you are connected in some way to the Internet,
verify its integrity, apply any patches, configure the software for
NetBSD, and build it.  Any prerequisite software will also be built
and installed for you.  Installation and de-installation of software
is managed by the packaging utilities.

The packages collection is made into a tar_file every week:

	ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-current/tar_files/pkgsrc.tar.gz

and you can sup the pkgsrc tree using the `pkgsrc' name for the
collection.

The pkgsrc tree is laid out in various categories, and, within that,
the various packages themselves.

You need to have root privileges to install packages.  We are looking
at ways to remove this restriction.

+ To install a package on your system, you need to change into the
directory of the package, and type "make install".

+ If you've made a mistake, and decided that you don't want that
package on your system, then type "pkg_delete <pkg-name>", or "make
deinstall" while in the directory for the package.

+ To find out all the packages that you have installed on your system,
type "pkg_info".

+ To remove the work directory, type "make clean", and "make
clean-depends" will clean up any working directories for other
packages that are built in the process of making your package.

+ Optionally, you can periodically run "make clean" from the top
level pkgsrc directory. This will delete extracted and built files,
but will not affect the retreived source sets in pkgsrc/distfiles.

+ You can set variables to customise the behaviour (where packages are
installed, various options for individual packages etc), by setting
variables in /etc/mk.conf.  The pkgsrc/mk/bsd.pkg.defaults.mk gives
the defaults which are used in pkgsrc.  This file can be used as a
guide to set values in /etc/mk.conf - it is only necessary to set
values where they differ from the defaults.

The best way to find out what packages are in the collection is to
move to the top-level pkgsrc directory (this will usually be
/usr/pkgsrc), and type "make readme".  This will create a file called
README.html in the top-level pkgsrc directory, and also in all
category and package directories.  You can then see what packages are
available, along with a short (one-line) comment about the function of
the package, and a pointer to a fuller description, by using a browser
like lynx (see pkgsrc/www/lynx) or Mozilla (pkgsrc/www/mozilla), or
Communicator.  This is also available online as
ftp://ftp.netbsd.org/pub/NetBSD/packages/pkgsrc/README.html.

Another way to find out what packages are in the collection is to
move to the top-level pkgsrc directory and type "make index". This
will create pkgsrc/INDEX which can be viewed via "make print-index | more".
You can also search for particular packages or keywords via
"make search key=<somekeyword>".

It is also possible to use the packaging software to install
pre-compiled binary packages by typing "pkg_add <URL-of-binary-pkg>".
To see what binary packages are available, see:

	ftp://ftp.netbsd.org/pub/NetBSD/packages/<release>/<arch>/All/

where <release> is the NetBSD release, and <arch> is the hardware
architecture.

One limitation of using binary packages provided from ftp.netbsd.org
is that all mk.conf options were set to the defaults at compile time.
LOCALBASE, in particular, defaults to /usr/pkg, so non-X binaries
will be installed in /usr/pkg/bin, man pages will be installed in
/usr/pkg/man...

When a packaged tool has major compile time choices, such as support
for multiple graphic toolkit libraries, the different options may
be available as separate packages.

For more information on the packages collection see the file
Packages.txt file in the same place where you found this README,
usually in the top-level pkgsrc directory.