Subject: random comments from a pkg_comp newbie
To: None <tech-pkg@netbsd.org>
From: Greg Troxel <gdt@ir.bbn.com>
List: tech-pkg
Date: 07/08/2004 14:30:43
I just started using pkg_comp, intending to rebuild up-to-date ones
without risking the running config.  I have a few random comments.

* Why is pkgtools/x11-links built automatically?  It seems this should
  get pulled in by the first thing that needs it.  In my case, it
  loses because my x11 sets are not right (1.6.2/current xsrc), but I
  just pax over the xsrc destdir after building the chroot.  So really
  this wouldn't hurt someone doing things right, but still if I try to
  build only a package that doesn't use x, I shouldn't have this
  built.  (Same for digest, but I see there is an issue with compiler
  bootstrapping.)

* I used pkg_chk inside the chroot, with -s -a.  I wanted binary
  packages, and didn't get them.  I added DEPENDS_TARGET=package to
  mk.conf, but it seems like this should be the default somehow,
  between pkg_chk and pkg_comp.  I fixed this by adding 

MKCONF_VARS="UPDATE_TARGET DEPENDS_TARGET"

UPDATE_TARGET=package
DEPENDS_TARGET=package

  to my pkg_comp config file before running makeroot.  I suppose some
  people don't want binary packages, but that seems like the special
  case rather than the normal case for pkg_comp usage.  Even people
  testing pkgsrc compilation would want to do that, to validate
  PLISTs, I'd think.

* I would like to run a batch compile with pkg_chk inside the chroot.
  I have written a script to install pkg_chk if not present and then
  run it with my config file, and placed the script and config file in
  the chroot.  It would be nice to have a pkg_comp command to run a
  script in the chroot, so I don't need to type at it (and hence can
  put the whole thing in the background).  I realize that I could
  perhaps use the 'build' target, but I want to let pkg_chk do the
  work.  Am I missing some obvious way to do this, other than adding a
  'run' target to pkg_comp?

* It would be nice for the manpage to discus the pros and cons of
  overlaying the chroot packages dir on the real one.  I chose to make
  a separate one, since I want to have clean pkg dir to put on a
  custom install cd.  If the dir doesn't exist perhaps it should just
  be created, but I realize that can cover up errors.

This led me to other thoughts:

* It would be nice to have an option to list all packages which don't
  have binary packages in 'packages-comp' (pkg_comp package target
  dir).  Like -l, but list all.

* It would be nice to have an option (probably in pkg_chk) to
  pkg_tarup binary packages for all packages that are installed but
  don't have binary packages present.  Perhaps this is like -l, but
  with recovery rather than just complaints.

* Perhaps pkg_chk could have an option to do binary updates with
  'pkg_add -u' to get around the dependency issues.  But perhaps this
  is too dangerous.

I don't mean to sound complaining - I'm finding pkg_comp and pkg_chk
very useful.  Thanks jmmv, abs and seb, and I'm sure others.