Migrating from perl5-5.20 to perl5.22 using custom packages?
david at catwhisker.org
Sat Sep 5 16:29:09 UTC 2015
For my "development machines (laptop & build machine), I track stable/10
& head daily, and update ports (also daily) under stable/10 using
portmaster. There's been a bit of turbulence now and then, but overall,
the process generally works.
In particular, ports/UPDATING has fairly explicit instructions for
performing migrations of this nature -- e.g., extrapolating a bit from
the instructions for portmaster users in the 20150513 entry:
portmaster -o lang/perl5.22 lang/perl5.20
portmaster -f -D `pkg shlib -R libperl.so.5.20|tail +2`
which worked (as shown on my laptop):
g1-252(10.2-S) pkg info -o perl\*
Up to a few weeks ago, I had also been using portmaster on my
"production" machines. My primary incentive for migrating to using "pkg
upgrade" on these systems was their conversion from i386 to amd64 (and
the daunting prospect of rebuilding all of those ports -- and having
the machines' services disabled during that period. (I documented that
I have since continued to use poudriere on my build machine on a
weekly cycle, then updating FreeBSD base, then the installed packages
on the production machines every Sunday since -- which process has
been working rather well.
Now, however, after having updated my development machines to use
Perl5.22, I'd like to do the same for the production machines.
The above-referenced ports/UPDATING entry merely states:
The default Perl version has been switched to Perl 5.20. If you are using
binary packages to upgrade your system, you do not have anything to do, pkg
upgrade will do the right thing....
Fortunately, I have a test machine that is set up like the producton
one that has the bulk of the ports/packages installed, so I tried
an upgrade cycle on it.
The update of FreeBSD from:
FreeBSD pogo.catwhisker.org 10.2-BETA1 FreeBSD 10.2-BETA1 #417 r285346M/285355:1001519: Fri Jul 10 04:29:33 PDT 2015 root at freebeast.catwhisker.org:/common/S2/obj/usr/src/sys/ALBERT amd64
FreeBSD pogo.catwhisker.org 10.2-STABLE FreeBSD 10.2-STABLE #465 r287480M/287482:1002500: Sat Sep 5 04:17:26 PDT 2015 root at freebeast.catwhisker.org:/common/S1/obj/usr/src/sys/ALBERT amd64
was (quite) uneventful -- it Just Worked.
After the successful reboot, I then stopped services (that relied
on installed ports/packages) on the machine and performed "pkg upgrade".
While it claimed success and exited with an exit status of 0, it says
that what it did with respect to Perl was:
perl5: 5.20.2_5 -> 5.20.2_6
which isn't quite what I had in mind.
In checking the package repository, I see:
freebeast(10.2-S) (cd All; ls -lT perl*)
-rw-r--r-- 5 nobody wheel 13746168 Aug 16 04:33:03 2015 perl5-5.20.2_6.txz
-rw-r--r-- 5 nobody wheel 13935800 Jul 4 14:53:37 2015 perl5.18-5.18.4_15.txz
-rw-r--r-- 1 nobody wheel 13958800 Sep 5 05:53:23 2015 perl5.22-5.22.0_2.txz
I suppose a bit of housecleaning is in order... but is the existence
of the the perl5-5.20.2_6.txz the reason/excuse for not picking up
What do I need to do to switch to perl5.22 on my production machines?
David H. Wolfskill david at catwhisker.org
Those who would murder in the name of God or prophet are blasphemous cowards.
See http://www.catwhisker.org/~david/publickey.gpg for my public key.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Size: 949 bytes
Desc: not available
More information about the freebsd-ports