tech-pkg archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

enforcing pkgsrc/category/$PKGBASE



 Wouldn't it be nice if each package was always in a directory
 which matched the $PKGBASE. It would make it much easier and
 quicker for tools (and people) to map back and forth between
 them, and also allow us to (potentially) cleanup the DEPENDS
 format:
 DEPENDS+= www/p5-Catalyst-Plugin-ConfigLoader>=0.19
 rather than the current rather ugly:
 DEPENDS+= p5-Catalyst-Plugin-ConfigLoader>=0.19:../../www/p5-Catalys
t-Plugin-ConfigLoader
 The flies in this proposed ointment are:
 a) *-devel packages which provider newer compatible versions
 of a base package
 b) ap2?-* packages which can generate apache 1.x 2.0 or 2.2
 packages
 c) py-* packages, which generate different output packages
 based on the version of python installed
 Taking these in order:
 a) We could push implicit support for these into pkgsrc. So
 a package foo-devel[0-9]*-* would automatically conflict
 with foo-*, and be treated as identical when matching
 depends
 b) We have a somewhat confusing mix of ap{,2,22}-*
 packages in pkgsrc. an ap22-* package will only work
 with apache22, and ap-2 package will work with
 apache2 and *may* work with apache22, and an ap-*
 package will work with apache apache and may work
 with none, one, or both of apache2 and apache22. We
 currently have ap{,2,22}-* packages. Splitting them
 up into explicit ap{13,20,22} directories which each
 only generate a package for a single version of
 apache would add 22 and make it obvious from looking
 at the pkgsrc tree what versions are supported
 c) py-* packages. This fly has teeth. There are 216
 py-* packages and unlike the apache packages which
 tend to need different Makefiles between apache
 versions, we have a nice setup which can build
 multiple versions from a single directory based on
 python version. We *could*:
 - Let python directories be an exception
 - Add explicit package directories, a number of
 options on this, none of them nice:
 <Can_skip>
 - add 400+ packages and rename the current, using
 clever includes pointing to the default version (but
 we'd need to churn every package when we changed
 the default). Ick.
 - add 400+ packages and rename the current,
 duplicating versions & DESCR etc everwhere. Ick.
 - Add 600+ packages, using clever includes to the
 current packages, but that leaves us with these
 oddball package directories which never build
 anything. Ick
 - add 400+ packages and rename the current, all
 with clever includes pointing to data under
 lang/pythin. Ick
 </Can_skip>
 Anyone have any thoughts? Have I missed something
 which is not 'ick'?
~


Home | Main Index | Thread Index | Old Index

AltStyle によって変換されたページ (->オリジナル) /