From owner-freebsd-ports@freebsd.org Sun Sep 6 13:33:48 2015 Return-Path: Delivered-To: freebsd-ports@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9A67B9CBC71 for ; Sun, 6 Sep 2015 13:33:48 +0000 (UTC) (envelope-from david@catwhisker.org) Received: from albert.catwhisker.org (mx.catwhisker.org [198.144.209.73]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4E2921E0; Sun, 6 Sep 2015 13:33:47 +0000 (UTC) (envelope-from david@catwhisker.org) Received: from albert.catwhisker.org (localhost [127.0.0.1]) by albert.catwhisker.org (8.15.2/8.15.2) with ESMTP id t86DXkkA001736; Sun, 6 Sep 2015 06:33:46 -0700 (PDT) (envelope-from david@albert.catwhisker.org) Received: (from david@localhost) by albert.catwhisker.org (8.15.2/8.15.2/Submit) id t86DXkd5001735; Sun, 6 Sep 2015 06:33:46 -0700 (PDT) (envelope-from david) Date: Sun, 6 Sep 2015 06:33:46 -0700 From: David Wolfskill To: olli hauer , Matthew Seaman Cc: freebsd-ports@freebsd.org Subject: Re: Migrating from perl5-5.20 to perl5.22 using custom packages? Message-ID: <20150906133346.GB1131@albert.catwhisker.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="qcHopEYAB45HaUaB" Content-Disposition: inline In-Reply-To: <55EC1CD8.1090501@FreeBSD.org> <55EB41DE.7040609@gmx.de> User-Agent: Mutt/1.5.23 (2014-03-12) X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 06 Sep 2015 13:33:48 -0000 --qcHopEYAB45HaUaB Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sat, Sep 05, 2015 at 09:26:22PM +0200, olli hauer wrote: > ... > You can use the 'pkg set -o ...' command, but I suspect the version chang= e is not happened automatically because the default in your poudriere is no= t set to perl5.22 Thanks for the suggestion. I looked at that, and was a bit put off by the "(DEPRECATED)" warning in the pkg-set man page. Well, that, as well as the sense that I was treading in areas I understood but poorly, and if I screwed up, I could lose Internet connectivity (at home, at least) and/or the abiliity to send & receive email.... So I elected to wait a bit. > # pkg set -o lang/perl5.20:lang/perl5.22 > (note old <--> new swapped and separated with ':' ) >=20 > >From Mk/bsd.default-versions.mk: > ... > PERL5_DEFAULT?=3D 5.20 >=20 >=20 > To overwrite this in PD globally > $ cat $LOCALBASE/etc/poudriere/make.conf (or $set-make.conf, for only a d= edicated ports set) > DEFAULT_VERSIONS+=3D perl5=3D5.22 >=20 > and fire a new build, all ports depending on the default perl are reflect= ing the new 5.22 version as dependency and the perl version should change a= utomatically. > From my past experience with perl upgrades I would run 'pkg upgrade -f' e= lse not all p5-$ports are reinstalled. > And as super bonus since you are already building with PD you don't have = to mess around with portmaster Well, as I pointed out in the original note, I use portmaster on my "development" systems (which I update daily), and poudriere/pkg on the "production" systems (which I update weekly). > PS: > nice writeup on your webpage, to get a even smaller package list you can = run "ports-tools/pkg_tree" with the parameter '-t' Thanks! I merely figured I'd want to have a record of what I did, and that such a record might be of use to others (if for no other reason than to be able to avoid some of the things that I encountered). On Sun, Sep 06, 2015 at 12:00:40PM +0100, Matthew Seaman wrote: > ... > I did exactly this a week or so ago. Given you've got your own > poudriere setup, then: >=20 > 1) Edit /usr/local/etc/poudriere.d/make.conf (or an build > specific variant) and set: >=20 > DEFAULT_VERSIONS+=3D perl5=3D5.22 >=20 > 2) Run a poudriere bulk to rebuild all the packages that depend on > perl. That's going to be most of them because GNU autotools > introduces a build-depends on perl through automake... >=20 > 3) Upgrade packages as normal: >=20 > pkg upgrade >=20 > You should see pkg wanting to remove perl5.20, install perl5.22 and > reinstall all perl modules or other ports with a run-time dependency on > perl. OK; that appears to have worked as advertised -- thanks you! (I do a "poudriere bulk" as part of the weekly upgrade in any case, as I've updated the ports working copy, so the production machines do a "pkg upgrade" just after updating base FreeBSD.) So -- in my case -- the "short answer" was: * Specify the local default in /usr/local/etc/poudriere.d/make.conf via: DEFAULT_VERSIONS+=3D perl5=3D5.22 =20 * Perform the usual weekly upgrade. And "so far, so good" -- I have verified that I can send & receive email, at least, and other stuff seems OK so far. :-) > Note that the default version of perl in your repo will get the pkgname > 'perl5', and all others will get a pkgname of the form 'perl5.XY' -- so > in my repo, I have: >=20 > % pkg search -x perl5 > perl5-5.22.0_2 > perl5.20-5.20.2_6 >=20 > ie 5.22 is the default version but I also have a (basically useless) > perl5.20 package. > .... Huh; interesting: thanks. I may poke at that after I have occasion to power up the build machine again (probably not until tomorrow). Thank you both for your guidance! Peace, david --=20 David H. Wolfskill david@catwhisker.org Those who would murder in the name of God or prophet are blasphemous coward= s. See http://www.catwhisker.org/~david/publickey.gpg for my public key. --qcHopEYAB45HaUaB Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQJ8BAEBCgBmBQJV7EC6XxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQ4RThEMDY4QTIxMjc1MDZFRDIzODYzRTc4 QTY3RjlDOERFRjQxOTNCAAoJEIpn+cje9Bk7d7cP/3+M9mOF/r42UJx6cWpcXPo2 ogMNfPQtS1X9n1y9yA6/j4fgUzthDJi9zNr0JaHJWdYh3z0ruOAeVF0UozU+kxXh RW8O/gz1QdlrkXupoyJ6EPc9wuth+Lox8bQvH7RnM83TnEbNHWPJ1ezrnDT2Gyp0 9GowlHyc/IfedFEgsHy+SxgLToMxiV9BpwPhlK2lQCtbR2AxIFzUTNLvOtv2JPUP Zj8TQC6xOW4LEpYz2iy5o7QqZbyP19y28ysClSX/C1Pct635TSm2RWCeV2ob13lX Zr2Dzhf+ttfvjzX+H9E2QESvqHWYhVxnaU8qJ3MovQ28+SaNKCAj2CFep0UMiCye ta4ZXcfoekR+IgY4Ck+2hT6uY0QGkZ37JpT7jhjyCs1ke53Hl8g38FXzE3dwo3TH FeQajjoIkTHgnzBAdgYIGrJyXSziPdxrLh+GkP+RwHZrM8InFrqElEq5uXez6hp4 /VDGpDsh53Xpd6bD4t4OHJxaMARft+iSVr2shbf/+mIhDEDoP7ORncxJr/1rCwea 5EkNATGM/I0GMSOaqPYsgplwlYXLiupsPBBGbFWgCJatJhlEuniZKhwPhdiiklZ1 8mVuzjTZ61VQ5GNvlITl2WwcCx6kMG1yp9OIX5aSGNYo/9I8wD1xyYIthXxlJrp4 ZDe6Pp0dg61PsVZXw9Fq =+d/G -----END PGP SIGNATURE----- --qcHopEYAB45HaUaB--