Date: Sun, 28 Jan 2007 19:06:45 -0500 From: Kris Kennaway <kris@obsecurity.org> To: Jon Passki <jon.passki@hursk.com> Cc: freebsd-ports@freebsd.org Subject: Re: pkg-plist, +CONTENTS, make package, and the ports cluster Message-ID: <20070129000645.GB65592@xor.obsecurity.org> In-Reply-To: <D5DDCBF2-EC19-4131-BF6F-20D37E264E1F@hursk.com> References: <D5DDCBF2-EC19-4131-BF6F-20D37E264E1F@hursk.com>
next in thread | previous in thread | raw e-mail | index | archive | help
--uQr8t48UFsdbeI+V Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sun, Jan 28, 2007 at 05:25:56PM -0600, Jon Passki wrote: > Hello, >=20 > Ports such as mysql-server, apache22 and many others I've noticed =20 > have a disconnect between pkg-plist entries and what actually gets =20 > installed. Some especially annoying components missed are etc/rc.d =20 > scripts or in the case of gettext, a library file. In the short term =20 > I was going to create a PR for some of these ports. My major =20 > assumption, with variables enumerated, a +CONTENTS file should be a =20 > subset of a pkg-plist file. With this, my basic approach was to diff =20 > the +CONTENTS file from the build system and the +CONTENTS file from =20 > the install via pkg_add system (ignoring comments, sample output =20 > below). Should these files be the same? When would they not be =20 > (again, stripping comments)? This output could be used to check the =20 > pkg-plist file, accepting that variables in the pkg-plist will need =20 > to be enumerated. Is this a decent method? >=20 > In the long term, would this be something that makes sense for the =20 > ports cluster to check on? Are there situations where a port may =20 > install something that a pkg-plist file should never record? This is already checked and enforced using different means. If you're seeing differences, this is presumably for some other local reason. In particular gettext, mysql-server and apache22 do not install extra files or have missing files when built in a default freebsd environment. > diff -u /tmp/+CONTENTS_make_install_apache22 /tmp/=20 > +CONTENTS_make_package_apache22 | head > --- /tmp/+CONTENTS_make_install_apache22 Sun Jan 28 21:52:47 2007 > +++ /tmp/+CONTENTS_make_package_apache22 Sun Jan 28 21:53:39 2007 > @@ -567,739 +567,16 @@ > @unexec rmdir %D/etc/apache22 2> /dev/null || echo "=3D=3D=3D> If you pla= n =20 > to do not reinstall apache22, you can safely remove %D/etc/apache22." > @exec /sbin/ldconfig -m /usr/local/lib > @unexec /sbin/ldconfig -R > -share/doc/apache22/LICENSE > -share/doc/apache22/NOTICE > -share/doc/apache22/bind.html > -share/doc/apache22/bind.html.de I am unable to replicate this: the apache22 port does not install these files on my system. Kris --uQr8t48UFsdbeI+V Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (FreeBSD) iD8DBQFFvTqUWry0BWjoQKURAvYPAJ401e/N0CxEiLDxKSETY0Yq4iRl4QCgoS9g JwNqaaKMa2E3TCf38ek2uKU= =SrKm -----END PGP SIGNATURE----- --uQr8t48UFsdbeI+V--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070129000645.GB65592>