From owner-freebsd-questions@FreeBSD.ORG Sun Feb 24 18:10:26 2013 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id CDEED86F for ; Sun, 24 Feb 2013 18:10:26 +0000 (UTC) (envelope-from matthew@FreeBSD.org) Received: from smtp.infracaninophile.co.uk (smtp6.infracaninophile.co.uk [IPv6:2001:8b0:151:1:3cd3:cd67:fafa:3d78]) by mx1.freebsd.org (Postfix) with ESMTP id 64048CB3 for ; Sun, 24 Feb 2013 18:10:26 +0000 (UTC) Received: from seedling.black-earth.co.uk (seedling.black-earth.co.uk [81.2.117.99]) (authenticated bits=0) by smtp.infracaninophile.co.uk (8.14.6/8.14.6) with ESMTP id r1OIA7ep008984 (version=TLSv1/SSLv3 cipher=DHE-RSA-CAMELLIA256-SHA bits=256 verify=NO) for ; Sun, 24 Feb 2013 18:10:21 GMT (envelope-from matthew@FreeBSD.org) DKIM-Filter: OpenDKIM Filter v2.7.4 smtp.infracaninophile.co.uk r1OIA7ep008984 Authentication-Results: smtp.infracaninophile.co.uk/r1OIA7ep008984; dkim=none reason="no signature"; dkim-adsp=none (insecure policy) Message-ID: <512A576F.3050901@FreeBSD.org> Date: Sun, 24 Feb 2013 18:09:51 +0000 From: Matthew Seaman User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:17.0) Gecko/20130216 Thunderbird/17.0.3 MIME-Version: 1.0 To: freebsd-questions@freebsd.org Subject: Re: "make package" vs "pkg create" References: <512A40E9.805@gmail.com> In-Reply-To: <512A40E9.805@gmail.com> X-Enigmail-Version: 1.5 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="----enig2JSSDAHOHUXDDDMKQNACH" X-Virus-Scanned: clamav-milter 0.97.6 at lucid-nonsense.infracaninophile.co.uk X-Virus-Status: Clean X-Spam-Status: No, score=-1.6 required=5.0 tests=AWL,BAYES_00,SPF_SOFTFAIL autolearn=no version=3.3.2 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on lucid-nonsense.infracaninophile.co.uk X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Feb 2013 18:10:26 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) ------enig2JSSDAHOHUXDDDMKQNACH Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable On 24/02/2013 16:33, Joshua Isom wrote: > I tried making a build jail, not with pourdriere or tinderbox. I just > went to the ports and ran `make -DBATCH package-recursive clean` to get= > packages created. I ran `pkg add *` in the packages/All directory, but= > all failed because of MANIFEST missing. I'm guessing this is a bug in > the .mk files, since I do have WITH_PKGNG set. Is this a known problem= > or is there supposed to be a different way to do it? Am I just suppose= d > to use pourdriere or the source to keep my ports up to date until all > the packages are rebuilt on freebsd.org? 'MANIFEST' is pretty fundamental to pkgs -- probably the error you are seeing is because there are some other sort of files that aren't pkgng packages present. That's going to upset pkg add. What's the history of this jail? Did it start out using pkgng, or did it get converted from pkg_tools? If the latter, did the conversion go smoothly? Can you use eg. 'pkg info' in your jail to get an accurate listing of the packages installed there? If 'WITH_PKGNG' is set in your make.conf, then 'make package' will certainly use pkgng to generate packages. I do that a lot in testing, and it works just fine. If you can clear out the non-pkgng stuff, the recommended way to do what you intend is to generate a repository catalogue, and then use 'pkg install'. 'pkg add' really should only be considered for installing single packages when there is absolutely no alternative. You should be able to run 'pkg repo /usr/ports/packages' to build a repository catalogue for all the pkgng packages you've built in your jail. Then you can either mount the jail's package tree on the machine where you want to install packages, or make it available through a web server. Set PACKAGESITE appropriately in ${LOCALBASE}/etc/pkg.conf -- for instance, this is what you'ld set to use a repo made as above and mounted in the same location: PACKAGESITE : file:/usr/ports/packages You can then use 'pkg install' or 'pkg upgrade' in the usual way. Note: you won't need to install every package in your repo -- many of them will exist solely in order to facilitate building other packages. If you choose the packages you specifically want, pkgng will sort out installing the required dependencies, and moreover will set the autoremove flags appropriately, so you could later purge things installed solely as dependencies of packages you no longer want. Cheers, Matthew --=20 Dr Matthew J Seaman MA, D.Phil. PGP: http://www.infracaninophile.co.uk/pgpkey ------enig2JSSDAHOHUXDDDMKQNACH Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.16 (Darwin) Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iEYEARECAAYFAlEqV38ACgkQ8Mjk52CukIyirwCfY6/C0mQALg5YFSXhpfgFpRez MyMAniE80ZHvG+/mZJkDQyEyK3STX7fP =FUmF -----END PGP SIGNATURE----- ------enig2JSSDAHOHUXDDDMKQNACH--