Re: portupgrade(1) | portmaster(8) -- which is more effective for large upgrade?

2013-06-28 Thread Ronald Klop

On Thu, 27 Jun 2013 16:14:31 +0200, Chris H  wrote:


Warren Block wrote:

On Wed, 26 Jun 2013, Chris H wrote:

On Wed, 26 Jun 2013, Chris H wrote:

Okay, look up the last time you installed or upgraded a port:
% ls -ltr /var/db/pkg

The last one is the most recently modified. Update your ports tree,
follow all the steps that apply to your system since that date.


That should say "all the steps in /usr/ports/UPDATING that apply to  
your

system since that date."


There is a nice command that helps you to list only relevant entries
from UPDATING (entries from UPDATING for already installed ports)

pkg_updating -d MMDD

Where MMDD is the last time you did ports update, for example
pkg_updating -d 20120923

Miroslav Lachman

Greetings Miroslav,
That _is_ nice. Thank you for taking the time post this.
That'll help quite a bit!


/usr/ports/ports-mgmt/portupdate-scan is also very usefull

Ronald.
___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"


Re: portupgrade(1) | portmaster(8) -- which is more effective for large upgrade?

2013-06-27 Thread Warren Block

On Thu, 27 Jun 2013, Garrett Wollman wrote:


In article ,
wbl...@wonkity.com writes:

On Thu, 27 Jun 2013, Garrett Wollman wrote:


Having just gone through this in two different environments, I can
very very strongly recommend doing the following.  It's not the "easy
button" of the TV commercials, but it will make things much much
easier in the future.


This is an interesting procedure and should be made into a
web-accessible document!  Setting up a build machine for a network is a
fairly common desire, and your procedure looks to be doing everything
the newest way.


See
.


Bookmarked--that could make a nice addition to one of the official docs, 
maybe the Handbook.  Thank you!

___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"


Re: portupgrade(1) | portmaster(8) -- which is more effective for large upgrade?

2013-06-27 Thread Garrett Wollman
In article ,
wbl...@wonkity.com writes:
>On Thu, 27 Jun 2013, Garrett Wollman wrote:
>
>> Having just gone through this in two different environments, I can
>> very very strongly recommend doing the following.  It's not the "easy
>> button" of the TV commercials, but it will make things much much
>> easier in the future.
>
>This is an interesting procedure and should be made into a 
>web-accessible document!  Setting up a build machine for a network is a 
>fairly common desire, and your procedure looks to be doing everything 
>the newest way.

See
.

-GAWollman

___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"


Re: portupgrade(1) | portmaster(8) -- which is more effective for large upgrade?

2013-06-27 Thread Chris H
> Warren Block wrote:
>> On Wed, 26 Jun 2013, Chris H wrote:
 On Wed, 26 Jun 2013, Chris H wrote:

 Okay, look up the last time you installed or upgraded a port:
 % ls -ltr /var/db/pkg

 The last one is the most recently modified. Update your ports tree,
 follow all the steps that apply to your system since that date.
>>
>> That should say "all the steps in /usr/ports/UPDATING that apply to your
>> system since that date."
>
> There is a nice command that helps you to list only relevant entries
> from UPDATING (entries from UPDATING for already installed ports)
>
> pkg_updating -d MMDD
>
> Where MMDD is the last time you did ports update, for example
> pkg_updating -d 20120923
>
> Miroslav Lachman
Greetings Miroslav,
That _is_ nice. Thank you for taking the time post this.
That'll help quite a bit!

--Chris

> ___
> freebsd-stable@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-stable
> To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"
>

___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"


Re: portupgrade(1) | portmaster(8) -- which is more effective for large upgrade?

2013-06-27 Thread Miroslav Lachman

Warren Block wrote:

On Wed, 26 Jun 2013, Chris H wrote:

On Wed, 26 Jun 2013, Chris H wrote:

Okay, look up the last time you installed or upgraded a port:
% ls -ltr /var/db/pkg

The last one is the most recently modified. Update your ports tree,
follow all the steps that apply to your system since that date.


That should say "all the steps in /usr/ports/UPDATING that apply to your
system since that date."


There is a nice command that helps you to list only relevant entries 
from UPDATING (entries from UPDATING for already installed ports)


pkg_updating -d MMDD

Where MMDD is the last time you did ports update, for example
pkg_updating -d 20120923

Miroslav Lachman
___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"


Re: portupgrade(1) | portmaster(8) -- which is more effective for large upgrade?

2013-06-27 Thread Warren Block

On Thu, 27 Jun 2013, Garrett Wollman wrote:


Having just gone through this in two different environments, I can
very very strongly recommend doing the following.  It's not the "easy
button" of the TV commercials, but it will make things much much
easier in the future.


This is an interesting procedure and should be made into a 
web-accessible document!  Setting up a build machine for a network is a 
fairly common desire, and your procedure looks to be doing everything 
the newest way.



Then look through the output of "pkg query" to identify the leaf
packages that are the ones you actually wanted explicitly to have
installed.


On a single machine, this can be approximated with portmaster's 
"--list-origins" option.  It gives a list of root and leaf ports which 
can be edited to just the desired ones.  Feed that list to portmaster on 
a system with no ports installed, and it will install the leaf ports and 
dependencies.

___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"


Re: portupgrade(1) | portmaster(8) -- which is more effective for large upgrade?

2013-06-27 Thread Don Lewis
On 26 Jun, Bob Willcox wrote:
> On Wed, Jun 26, 2013 at 01:23:32PM -0700, Jeremy Chadwick wrote:
>> On Wed, Jun 26, 2013 at 09:42:43AM -0700, Chris H wrote:
>> > Greetings,
>> >  I haven't upgraded my tree(s) for awhile. My last attempt to rebuild 
>> > after an updating
>> > src && ports, resulted in nearly installing the entire ports tree, which 
>> > is why I've
>> > waited so long. Try as I might, I've had great difficulty finding 
>> > something that will
>> > _only_ upgrade what I already have installed, _and_ respect the "options" 
>> > used during the
>> > original make && make install, or those options expressed in make.conf.
>> > As portupgrade(1) && portmaster(8) appear to be the most used in this 
>> > scenario,
>> > I'm soliciting opinions on which of these works best, or if there is 
>> > something else to
>> > better manage this situation. Is there such a thing as a FreeBSD upgrade 
>> > "easy button"?
>> 
>> Use portmaster, avoid portupgrade.  And no I will not expand on my
>> reasoning -- I urge anyone even mentioning the word portupgrade to spend
>> a few hours of their day reading the horror stories on the mailing lists
>> over the past 10 years or so (including recently).  Choose wisely.
> 
> Well, just to offer a counter-opinion here, I use portupgrade and feel that it
> has improved significantly over the past year or two and has become quite
> usable. I run it every two to four weeks on about five systems and haven't had
> any problems with it in a long time. However, YMMV.

I'm also a long-time portupgrade user, though I've been running locally
tweaked versions for quite some time.  Currently I'm using the patch
from the PR ports/177365, which makes the -a -f and -r options play
together much better.

I always start my upgrades by running
  portupgrade -aFc
to fetch any needed distfiles and configure all the port options.  That
avoids breakage in the middle of the upgrade from an unfetchable
distfile, and avoids interactive pauses in the middle of the upgrade to
set options.

In my latest upgrade, I had to deal with the ruby version change as well
as the perl upgrade and the audio/flac library version bump.  On my sole
10-CURRENT machine, I just followed the initial steps listed in UPDATING
for the ruby version change, and then ran:
 portupgrade -afx ruby-1.8.\* -r lang/ruby18 lang/perl5.12 audio/flac
That upgrades all the ports that are out of date and rebuilds all the
ports that depend on the explictly listed ports, all in the correct
dependency order.

For my 8-STABLE machines, I build pkgng packages on one machine and then
use pkg to upgrade the others.  I build the packages in three steps:

 portupgrade -nfx ruby-1.8.\* -r lang/ruby18 lang/perl5.12 audio/flac >f

 edit the file "f" to get the list of the origins of the ports that
 would be upgraded

 portugrade -fpr `cat f`

I do this so that if port "foo" gets upgraded because it is out of date,
I want to rebuild all the packages that depend on "foo".  The reason for
that is if I install package "bar" that depends on "foo", I want pkg to
also install the correct version of "foo".

If I feel ambitious, I might tweak portouprade so that it can handle
this internally instead of having to do the extra steps manually.  On
the other hand, I might switch to poudriere, which is probably a better
solution.

___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"


Re: portupgrade(1) | portmaster(8) -- which is more effective for large upgrade?

2013-06-26 Thread Chris H
> In article <5e20544e3580a75759c3858f31894dc9.authentica...@ultimatedns.net>,
> bsd-li...@lcommand.com writes:
>
>> I haven't upgraded my tree(s) for awhile. My last attempt to rebuild
>>after an updating
>>src && ports, resulted in nearly installing the entire ports tree, which
>>is why I've
>>waited so long. Try as I might, I've had great difficulty finding
>>something that will
>>_only_ upgrade what I already have installed, _and_ respect the
>>"options" used during the
>>original make && make install, or those options expressed in make.conf.
>
> Having just gone through this in two different environments, I can
> very very strongly recommend doing the following.  It's not the "easy
> button" of the TV commercials, but it will make things much much
> easier in the future.
>
> 1) Switch your system to pkgng if you haven't already.  Unfortunately,
> this will not result in the right ports being marked as "automatic",
> so you'll need to do a bit of post-conversion surgery:
>
>   # pkg set -A 1 -g '*'
>   # pkg query -e '%#r==0' '%n-%v: %c'
>
> Then look through the output of "pkg query" to identify the leaf
> packages that are the ones you actually wanted explicitly to have
> installed.  For each one of those:
>
>   # pkg set -A 0 packagename
>
> Create a list of your desired packages:
>
>   # pkg query -e '%a==0' '%o' > pkg-list
>
> Clean up the unnecessary local packages:
>
>   # pkg autoremove
>
> (You can iterate the last three steps, aborting "pkg autoremove" each
> time but the last, until it doesn't offer to remove anything you care
> about keeping.)
>
> Repeat this process for each machine, and merge the resulting pkg-list
> files using sort -u.  Make sure that pkgng is enabled for ports in
> /etc/make.conf.
>
> 2) Install and set up poudriere.  Copy /var/db/ports, /etc/src.conf,
> and /etc/make.conf to /usr/local/etc (possibly with local variations
> as described in poudriere(8) under the heading "CUSTOMISATION").
>
> 3) Run "poudriere options" for each jail and setname (if you created
> any sets following the customization section referenced above),
> providing the package list you constructed, to make sure that any new
> options are configured as you require them.
>
> 4) Run "poudriere bulk" for each jail and setname (if you created
> any), providing the package list as before.  This will create a pkgng
> repository for each jail and set, which you can serve by HTTP (using
> your choice of Web server) or SSH (with pkgng 1.1+), and all of these
> packages will have been built in a clean jail and (if their
> dependencies were specified correctly) will have no library
> inconsistencies.
>
> 5) Configure your client machines to reference the appropriate
> repository created in step (4).
>
> 6) Run "pkg upgrade -fy" on all of your machines, and resolve any
> inconsistencies by "pkg remove"-ing the offending local package.
>
> That seems like a lot of work, and it is, but having done it, there's
> a huge benefit the next time you want to do update your systems:
>
> a) Update the ports tree (how you do this depends on how you set up
> poudriere -- see the man page).
>
> b) Repeat step (3).
>
> c) Repeat step (4).
>
> d) Check the ports UPDATING file for any warnings about packages you
> are about to install.  If it tells you to do "pkg install -fR
> somepackage", then do those.
>
> e) Run "pkg upgrade -y" to upgrade any remaining packages.
>
> Even for just three machines it was worth going through this process
> -- and worth unifying all of my package sets and options.  Since I now
> do one build instead of three, I'm no longer so ocncerned about
> minimizing dependencies; it's no big deal if some X libraries get
> installed on my server.
>
> -GAWollman
Greetings,
WOW! Thank you for the _very_ informative reply, Garrett.
_Greatly_ appreciated.

--Chris

> ___
> freebsd-stable@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-stable
> To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"
>

___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"


Re: portupgrade(1) | portmaster(8) -- which is more effective for large upgrade?

2013-06-26 Thread Garrett Wollman
In article <5e20544e3580a75759c3858f31894dc9.authentica...@ultimatedns.net>, 
bsd-li...@lcommand.com writes:

> I haven't upgraded my tree(s) for awhile. My last attempt to rebuild
>after an updating
>src && ports, resulted in nearly installing the entire ports tree, which
>is why I've
>waited so long. Try as I might, I've had great difficulty finding
>something that will
>_only_ upgrade what I already have installed, _and_ respect the
>"options" used during the
>original make && make install, or those options expressed in make.conf.

Having just gone through this in two different environments, I can
very very strongly recommend doing the following.  It's not the "easy
button" of the TV commercials, but it will make things much much
easier in the future.

1) Switch your system to pkgng if you haven't already.  Unfortunately,
this will not result in the right ports being marked as "automatic",
so you'll need to do a bit of post-conversion surgery:

# pkg set -A 1 -g '*'
# pkg query -e '%#r==0' '%n-%v: %c'

Then look through the output of "pkg query" to identify the leaf
packages that are the ones you actually wanted explicitly to have
installed.  For each one of those:

# pkg set -A 0 packagename

Create a list of your desired packages:

# pkg query -e '%a==0' '%o' > pkg-list

Clean up the unnecessary local packages:

# pkg autoremove

(You can iterate the last three steps, aborting "pkg autoremove" each
time but the last, until it doesn't offer to remove anything you care
about keeping.)

Repeat this process for each machine, and merge the resulting pkg-list
files using sort -u.  Make sure that pkgng is enabled for ports in
/etc/make.conf.

2) Install and set up poudriere.  Copy /var/db/ports, /etc/src.conf,
and /etc/make.conf to /usr/local/etc (possibly with local variations
as described in poudriere(8) under the heading "CUSTOMISATION").

3) Run "poudriere options" for each jail and setname (if you created
any sets following the customization section referenced above),
providing the package list you constructed, to make sure that any new
options are configured as you require them.

4) Run "poudriere bulk" for each jail and setname (if you created
any), providing the package list as before.  This will create a pkgng
repository for each jail and set, which you can serve by HTTP (using
your choice of Web server) or SSH (with pkgng 1.1+), and all of these
packages will have been built in a clean jail and (if their
dependencies were specified correctly) will have no library
inconsistencies.

5) Configure your client machines to reference the appropriate
repository created in step (4).

6) Run "pkg upgrade -fy" on all of your machines, and resolve any
inconsistencies by "pkg remove"-ing the offending local package.

That seems like a lot of work, and it is, but having done it, there's
a huge benefit the next time you want to do update your systems:

a) Update the ports tree (how you do this depends on how you set up
poudriere -- see the man page).

b) Repeat step (3).

c) Repeat step (4).

d) Check the ports UPDATING file for any warnings about packages you
are about to install.  If it tells you to do "pkg install -fR
somepackage", then do those.

e) Run "pkg upgrade -y" to upgrade any remaining packages.

Even for just three machines it was worth going through this process
-- and worth unifying all of my package sets and options.  Since I now
do one build instead of three, I'm no longer so ocncerned about
minimizing dependencies; it's no big deal if some X libraries get
installed on my server.

-GAWollman
___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"


re: portupgrade(1) | portmaster(8) -- which is more effective for large upgrade?

2013-06-26 Thread Warren Block

On Wed, 26 Jun 2013, Chris H wrote:

On Wed, 26 Jun 2013, Chris H wrote:

Okay, look up the last time you installed or upgraded a port:
% ls -ltr /var/db/pkg

The last one is the most recently modified.  Update your ports tree,
follow all the steps that apply to your system since that date.


That should say "all the steps in /usr/ports/UPDATING that apply to your 
system since that date."



I recommend portmaster.  It does almost everything portupgrade does, but
without the overhead of Ruby or bdb.

Greetings Warren, and thank you for your reply.

Sounds like the plan. I'll take your advice, and run with it.
Gave me just the confidence I needed. :)


Good!  Please post if you have any problems.
___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"


Re: portupgrade(1) | portmaster(8) -- which is more effective for large upgrade?

2013-06-26 Thread chrish
> On Wed, Jun 26, 2013 at 05:34:45PM -0700, Chris H wrote:
>> Greetings, and thank you for your reply.
>>
>> I understand that portupgrade _will_ pull in other dependencies _as
>> needed_ -- I _do_ read the man(1) pages. :)
>>
>> But it installed (pulled in) far more than those dependencies
>> actually required.  I believe, due to the fact that it doesn't
>> appear to honor the original build options recorded in
>> /var/db/ports//options. Nor, do I recall that it honored
>> /etc/make.conf -- make.conf(5). Maybe things have changed?
>
> You may have asked portupgrade to use packages first and fall back
> to building from source.  That would install the packages which were
> built with the default options on the package building cluster.  It
> saves time; but I don't like mixing packages with build from source,
> especially when I want custom options on anything.
>
> --
> Scott LambertKC5MLE   Unix SysAdmin
> lamb...@lambertfam.org
Greetings Scott, and thank you for the reply.

You may be right. Like I said, it's been awhile.
I don't like mixing things either. I have more than enough to think about, as 
it is.
Why try adding any additional unnecessary elements to reconcile.

I'm gonna give portmaster a try, I think. Seems to have more positive comments.
But, in all fairness to portupgrade; it may have been a misunderstanding on my 
part.

Thanks again, for taking the time to respond.

--Chris

> ___
> freebsd-stable@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-stable
> To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"
>

___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"


re: portupgrade(1) | portmaster(8) -- which is more effective for large upgrade?

2013-06-26 Thread Chris H
> On Wed, 26 Jun 2013, Chris H wrote:
>
>> But it installed (pulled in) far more than those dependencies actually 
>> required.
>
> It may bring in build dependencies, but should be no different than
> manually installing ports.
>
>> I believe, due to the fact that it doesn't appear to honor the original build
>> options recorded in /var/db/ports//options. Nor, do I recall that 
>> it
>> honored /etc/make.conf -- make.conf(5). Maybe things have changed?
>
> Both portupgrade and portmaster did and do honor these.  Both are
> automated versions of installing the ports manually.  That can be
> overridden with mis-recommended BATCH variable.  Don't do that.
>
>> I don't see it. Oh, and should it not have been clear; I _do_
>> anticipate the "upgrade" to re-build most everything, as that is why
>> I'm trying to find a "mass upgrader" port, to do the "dirty work".
>> Also should it not have been clear in the beginning; I am _not_ doing
>> anything more than upgrading everything _within_ my current version;
>> eg; no major point upgrade, or anything.
>
> Okay, look up the last time you installed or upgraded a port:
> % ls -ltr /var/db/pkg
>
> The last one is the most recently modified.  Update your ports tree,
> follow all the steps that apply to your system since that date.  If any
> ports are left to upgrade at the end, use either port upgrade program
> with "-a".
>
> I recommend portmaster.  It does almost everything portupgrade does, but
> without the overhead of Ruby or bdb.
Greetings Warren, and thank you for your reply.

Sounds like the plan. I'll take your advice, and run with it.
Gave me just the confidence I needed. :)

Thanks again, for taking the time to reply.

--Chris

> ___
> freebsd-stable@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-stable
> To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"
>

___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"


Re: portupgrade(1) | portmaster(8) -- which is more effective for large upgrade?

2013-06-26 Thread Scott Lambert
On Wed, Jun 26, 2013 at 05:34:45PM -0700, Chris H wrote:
> Greetings, and thank you for your reply.
>
> I understand that portupgrade _will_ pull in other dependencies _as
> needed_ -- I _do_ read the man(1) pages. :)
>
> But it installed (pulled in) far more than those dependencies
> actually required.  I believe, due to the fact that it doesn't
> appear to honor the original build options recorded in
> /var/db/ports//options. Nor, do I recall that it honored
> /etc/make.conf -- make.conf(5). Maybe things have changed?

You may have asked portupgrade to use packages first and fall back
to building from source.  That would install the packages which were
built with the default options on the package building cluster.  It
saves time; but I don't like mixing packages with build from source,
especially when I want custom options on anything.

-- 
Scott LambertKC5MLE   Unix SysAdmin
lamb...@lambertfam.org
___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"


re: portupgrade(1) | portmaster(8) -- which is more effective for large upgrade?

2013-06-26 Thread Warren Block

On Wed, 26 Jun 2013, Chris H wrote:


But it installed (pulled in) far more than those dependencies actually required.


It may bring in build dependencies, but should be no different than 
manually installing ports.



I believe, due to the fact that it doesn't appear to honor the original build
options recorded in /var/db/ports//options. Nor, do I recall that it
honored /etc/make.conf -- make.conf(5). Maybe things have changed?


Both portupgrade and portmaster did and do honor these.  Both are 
automated versions of installing the ports manually.  That can be 
overridden with mis-recommended BATCH variable.  Don't do that.


I don't see it. Oh, and should it not have been clear; I _do_ 
anticipate the "upgrade" to re-build most everything, as that is why 
I'm trying to find a "mass upgrader" port, to do the "dirty work". 
Also should it not have been clear in the beginning; I am _not_ doing 
anything more than upgrading everything _within_ my current version; 
eg; no major point upgrade, or anything.


Okay, look up the last time you installed or upgraded a port:
% ls -ltr /var/db/pkg

The last one is the most recently modified.  Update your ports tree, 
follow all the steps that apply to your system since that date.  If any 
ports are left to upgrade at the end, use either port upgrade program 
with "-a".


I recommend portmaster.  It does almost everything portupgrade does, but 
without the overhead of Ruby or bdb.

___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"


re: portupgrade(1) | portmaster(8) -- which is more effective for large upgrade?

2013-06-26 Thread Chris H
> Am 26.06.2013 18:42, schrieb Chris H:
>> Greetings,
>>  I haven't upgraded my tree(s) for awhile. My last attempt to rebuild after 
>> an updating
>> src && ports, resulted in nearly installing the entire ports tree, which is 
>> why I've
>> waited so long. Try as I might, I've had great difficulty finding something 
>> that will
>> _only_ upgrade what I already have installed, _and_ respect the "options" 
>> used during the
>> original make && make install, or those options expressed in make.conf.
>> As portupgrade(1) && portmaster(8) appear to be the most used in this 
>> scenario,
>> I'm soliciting opinions on which of these works best, or if there is 
>> something else to
>> better manage this situation. Is there such a thing as a FreeBSD upgrade 
>> "easy button"?
>>
>> Thank you for all your consideration.

> Chris,
>
> this time around, you will again rebuild almost your entire ports tree
> because some basic ports, such as Perl.
>
> Also, you will rarely be able to only upgrade what you already have
> installed because sometimes ports grow new requisite other ports you do
> not already have.
>
> I haven't used portupgrade in a long time because there was a period
> where it had fallen to bit-rot, but both tools are being maintained now.
>
> portupgrade has the decided advantage of being able to continue building
> some ports if another port failed as long as the failed port is not
> itself a requisite port for one that is yet to be built; portmaster
> bails out at the first error.
>
> portmaster, on the other hand, has a "rebuild everything" approach in
> the manual page, and can be used to list only leaf ports -- but that
> approach will require you to deinstall all ports so that the machine
> becomes unusable while it builds.
>
> There are other approaches, like using portmaster just to list this
> ports tree, and then use Tinderbox or poudriere to build packages in a
> chroot, and then only deinstall and install if you have all packages
> built successfully - but I am not familiar with automating this, not
> familiar with poudriere, and it requires a bit of work to get your
> options transferred to these build systems.  Such a "build all packages
> first before you start deinstalling" would reduce the downtime, though.
>
> Hope that helps a little.
>
> Best regards
> Matthias Andree

Greetings, and thank you for your reply.
I understand that portupgrade _will_ pull in other dependencies _as needed_ -- 
I _do_ read
the man(1) pages. :)
But it installed (pulled in) far more than those dependencies actually required.
I believe, due to the fact that it doesn't appear to honor the original build
options recorded in /var/db/ports//options. Nor, do I recall that it
honored /etc/make.conf -- make.conf(5). Maybe things have changed? I don't see 
it.
Oh, and should it not have been clear; I _do_ anticipate the "upgrade" to 
re-build
most everything, as that is why I'm trying to find a "mass upgrader" port, to 
do the
"dirty work". Also should it not have been clear in the beginning; I am _not_ 
doing
anything more than upgrading everything _within_ my current version; eg; no 
major point
upgrade, or anything.

Thank you again, for taking the time to respond.

--chris

___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"


Re: portupgrade(1) | portmaster(8) -- which is more effective for large upgrade?

2013-06-26 Thread Daniel O'Connor

On 27/06/2013, at 5:53, Jeremy Chadwick  wrote:
> cd /usr/ports/whatever
> make install clean
> {lather rinse repeat until done}

The faster version of this is
find /usr/ports -maxdepth 3 -name work -type d -print0 | xargs -0 rm -rf

Simpler is to put..
WRKDIRPREFIX=/foo/bar
in /etc/make.conf

Then you can just rm -rf /foo/bar/work to delete all of the port build goop.

--
Daniel O'Connor software and network engineer
for Genesis Software - http://www.gsoft.com.au
"The nice thing about standards is that there
are so many of them to choose from."
  -- Andrew Tanenbaum
GPG Fingerprint - 5596 B766 97C0 0E94 4347 295E E593 DC20 7B3F CE8C






___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"


Re: portupgrade(1) | portmaster(8) -- which is more effective for large upgrade?

2013-06-26 Thread Warren Block

On Wed, 26 Jun 2013, Jeremy Chadwick wrote:


When rebuilding everything, I have always resorted to this:

rsync -avH /usr/local/ /usr/local.old/
pkg_delete -a -f
rm -fr /usr/local/*
rm -fr /var/db/ports/*
rm -fr /usr/ports/distfiles/*
cd /usr/ports/whatever
make install clean
{lather rinse repeat until done}


I don't generally rebuild from scratch, but there is a procedure at the 
end of the portmaster man page for doing it.


Something that should be mentioned: if you are not deleting and 
reinstalling everything, always--yes, always--check the new entries in 
/usr/ports/UPDATING first.

___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"


Re: portupgrade(1) | portmaster(8) -- which is more effective for large upgrade?

2013-06-26 Thread Bob Willcox
On Wed, Jun 26, 2013 at 01:23:32PM -0700, Jeremy Chadwick wrote:
> On Wed, Jun 26, 2013 at 09:42:43AM -0700, Chris H wrote:
> > Greetings,
> >  I haven't upgraded my tree(s) for awhile. My last attempt to rebuild after 
> > an updating
> > src && ports, resulted in nearly installing the entire ports tree, which is 
> > why I've
> > waited so long. Try as I might, I've had great difficulty finding something 
> > that will
> > _only_ upgrade what I already have installed, _and_ respect the "options" 
> > used during the
> > original make && make install, or those options expressed in make.conf.
> > As portupgrade(1) && portmaster(8) appear to be the most used in this 
> > scenario,
> > I'm soliciting opinions on which of these works best, or if there is 
> > something else to
> > better manage this situation. Is there such a thing as a FreeBSD upgrade 
> > "easy button"?
> 
> Use portmaster, avoid portupgrade.  And no I will not expand on my
> reasoning -- I urge anyone even mentioning the word portupgrade to spend
> a few hours of their day reading the horror stories on the mailing lists
> over the past 10 years or so (including recently).  Choose wisely.

Well, just to offer a counter-opinion here, I use portupgrade and feel that it
has improved significantly over the past year or two and has become quite
usable. I run it every two to four weeks on about five systems and haven't had
any problems with it in a long time. However, YMMV.

I do get ports that won't build from time to time, but I haven't seen any
connection between their failures and portupgrade.


-- 
Bob Willcox|   The future lies ahead.
b...@immure.com |
Austin, TX |
___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"


Re: portupgrade(1) | portmaster(8) -- which is more effective for large upgrade?

2013-06-26 Thread Jeremy Chadwick
On Wed, Jun 26, 2013 at 01:23:32PM -0700, Jeremy Chadwick wrote:
> On Wed, Jun 26, 2013 at 09:42:43AM -0700, Chris H wrote:
> {snipping}

Also, hoping the OP is subscribed to -stable -- you should probably deal
with this.  This is not the first time I've seen problems with mail
delivery to a 1command.com address.

: host male.ultimateDNS.NET[209.180.214.225] said: 550
5.0.0 SPAM and BULK mail REJECTED (in reply to MAIL FROM command)

-- 
| Jeremy Chadwick   j...@koitsu.org |
| UNIX Systems Administratorhttp://jdc.koitsu.org/ |
| Making life hard for others since 1977. PGP 4BD6C0CB |

___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"


Re: portupgrade(1) | portmaster(8) -- which is more effective for large upgrade?

2013-06-26 Thread Jeremy Chadwick
On Wed, Jun 26, 2013 at 09:42:43AM -0700, Chris H wrote:
> Greetings,
>  I haven't upgraded my tree(s) for awhile. My last attempt to rebuild after 
> an updating
> src && ports, resulted in nearly installing the entire ports tree, which is 
> why I've
> waited so long. Try as I might, I've had great difficulty finding something 
> that will
> _only_ upgrade what I already have installed, _and_ respect the "options" 
> used during the
> original make && make install, or those options expressed in make.conf.
> As portupgrade(1) && portmaster(8) appear to be the most used in this 
> scenario,
> I'm soliciting opinions on which of these works best, or if there is 
> something else to
> better manage this situation. Is there such a thing as a FreeBSD upgrade 
> "easy button"?

Use portmaster, avoid portupgrade.  And no I will not expand on my
reasoning -- I urge anyone even mentioning the word portupgrade to spend
a few hours of their day reading the horror stories on the mailing lists
over the past 10 years or so (including recently).  Choose wisely.

And before going on any sort of "update crusade", I recommend you
re-examine your make.conf methodologies for options if you haven't
already.  The OPTIONS framework has been revamped and improved many
times over, so you will find things like this on a system whose admin
keeps up with the times (compare this to older ways/methods, which may
break or stop working):

OPTIONS_UNSET+= X11 IPV6 NLS

php5_SET+=  APACHE
php5_UNSET+=CGI
postfix_SET+=   PCRE TLS SASL2
samba36_SET+=   AIO_SUPPORT
samba36_UNSET+= LDAP CUPS ACL_SUPPORT WINBIND POPT
wget_SET+=  OPENSSL
wget_UNSET+=IDN

When rebuilding everything, I have always resorted to this:

rsync -avH /usr/local/ /usr/local.old/
pkg_delete -a -f
rm -fr /usr/local/*
rm -fr /var/db/ports/*
rm -fr /usr/ports/distfiles/*
cd /usr/ports/whatever
make install clean
{lather rinse repeat until done}

And add some pkg_add -r's in there for large-ish things I don't want to
rebuild from source (I think folks who use X probably do this quite a
bit; I remember hearing how Open/LibreOffice takes something like 3-4
hours to build on some systems).

But that's just how I do things.  My advice on using portmaster,
however, still stands.

-- 
| Jeremy Chadwick   j...@koitsu.org |
| UNIX Systems Administratorhttp://jdc.koitsu.org/ |
| Making life hard for others since 1977. PGP 4BD6C0CB |

___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"


Re: portupgrade(1) | portmaster(8) -- which is more effective for large upgrade?

2013-06-26 Thread Matthias Andree
Am 26.06.2013 18:42, schrieb Chris H:
> Greetings,
>  I haven't upgraded my tree(s) for awhile. My last attempt to rebuild after 
> an updating
> src && ports, resulted in nearly installing the entire ports tree, which is 
> why I've
> waited so long. Try as I might, I've had great difficulty finding something 
> that will
> _only_ upgrade what I already have installed, _and_ respect the "options" 
> used during the
> original make && make install, or those options expressed in make.conf.
> As portupgrade(1) && portmaster(8) appear to be the most used in this 
> scenario,
> I'm soliciting opinions on which of these works best, or if there is 
> something else to
> better manage this situation. Is there such a thing as a FreeBSD upgrade 
> "easy button"?
> 
> Thank you for all your consideration.

Chris,

this time around, you will again rebuild almost your entire ports tree
because some basic ports, such as Perl.

Also, you will rarely be able to only upgrade what you already have
installed because sometimes ports grow new requisite other ports you do
not already have.

I haven't used portupgrade in a long time because there was a period
where it had fallen to bit-rot, but both tools are being maintained now.

portupgrade has the decided advantage of being able to continue building
some ports if another port failed as long as the failed port is not
itself a requisite port for one that is yet to be built; portmaster
bails out at the first error.

portmaster, on the other hand, has a "rebuild everything" approach in
the manual page, and can be used to list only leaf ports -- but that
approach will require you to deinstall all ports so that the machine
becomes unusable while it builds.

There are other approaches, like using portmaster just to list this
ports tree, and then use Tinderbox or poudriere to build packages in a
chroot, and then only deinstall and install if you have all packages
built successfully - but I am not familiar with automating this, not
familiar with poudriere, and it requires a bit of work to get your
options transferred to these build systems.  Such a "build all packages
first before you start deinstalling" would reduce the downtime, though.

Hope that helps a little.

Best regards
Matthias Andree
___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"


portupgrade(1) | portmaster(8) -- which is more effective for large upgrade?

2013-06-26 Thread Chris H
Greetings,
 I haven't upgraded my tree(s) for awhile. My last attempt to rebuild after an 
updating
src && ports, resulted in nearly installing the entire ports tree, which is why 
I've
waited so long. Try as I might, I've had great difficulty finding something 
that will
_only_ upgrade what I already have installed, _and_ respect the "options" used 
during the
original make && make install, or those options expressed in make.conf.
As portupgrade(1) && portmaster(8) appear to be the most used in this scenario,
I'm soliciting opinions on which of these works best, or if there is something 
else to
better manage this situation. Is there such a thing as a FreeBSD upgrade "easy 
button"?

Thank you for all your consideration.

--chris

___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"