portupgrade -- is there a way to only build and update ports that actually NEED it?

2012-06-25 Thread Dan Mahoney, System Admin

Hey there,

I'm presently in the process of trying to do a portupgrade from rt-3.8.8 
to 3.8.13.  By all estimations, this is a minor bump.


Already, I've encountered several annoyances due to ABI changes, such as 
the libtool2.4 fun.  With normal portupgrade, this forces you to go fix 
the dependent port.


Finally, I just applied -r, which should update all dependent packages, 
but it seems to upgrade them unconditionally.


Ergo, I've since built a new version of perl, a new verion of python, 
rebuilt every perl module on the system, am presently rebuilding apache22, 
and I'm sure the system will turn around and require me to rebuild 
postgres real soon.


You would think there's an option to portupgrade that says don't upgrade 
every single package I've got, but if somewhere in the dependency chain I 
need a newer version of a thing, then do it.


Am I just missing it in the manpages, or does such a thing really not 
exist?


-Dan

--

You recreate the stars in the sky with cows?

-Furrball, March 7 2005, on Katamari Damacy

Dan Mahoney
Techie,  Sysadmin,  WebGeek
Gushi on efnet/undernet IRC
ICQ: 13735144   AIM: LarpGM
Site:  http://www.gushi.org
---

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


Re: portupgrade -- is there a way to only build and update ports that actually NEED it?

2012-06-25 Thread Damien Fleuriot


On 6/25/12 9:53 AM, Dan Mahoney, System Admin wrote:
 Hey there,
 
 I'm presently in the process of trying to do a portupgrade from rt-3.8.8
 to 3.8.13.  By all estimations, this is a minor bump.
 
 Already, I've encountered several annoyances due to ABI changes, such as
 the libtool2.4 fun.  With normal portupgrade, this forces you to go fix
 the dependent port.
 
 Finally, I just applied -r, which should update all dependent packages,
 but it seems to upgrade them unconditionally.
 
 Ergo, I've since built a new version of perl, a new verion of python,
 rebuilt every perl module on the system, am presently rebuilding
 apache22, and I'm sure the system will turn around and require me to
 rebuild postgres real soon.
 
 You would think there's an option to portupgrade that says don't
 upgrade every single package I've got, but if somewhere in the
 dependency chain I need a newer version of a thing, then do it.
 
 Am I just missing it in the manpages, or does such a thing really not
 exist?
 
 -Dan
 

We've been happily using portmanager for ages, it does just that :)
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to freebsd-questions-unsubscr...@freebsd.org


Re: portupgrade -- is there a way to only build and update ports that actually NEED it?

2012-06-25 Thread Matthew Seaman
On 25/06/2012 08:53, Dan Mahoney, System Admin wrote:
 I'm presently in the process of trying to do a portupgrade from rt-3.8.8
 to 3.8.13.  By all estimations, this is a minor bump.
 
 Already, I've encountered several annoyances due to ABI changes, such as
 the libtool2.4 fun.  With normal portupgrade, this forces you to go fix
 the dependent port.
 
 Finally, I just applied -r, which should update all dependent packages,
 but it seems to upgrade them unconditionally.
 
 Ergo, I've since built a new version of perl, a new verion of python,
 rebuilt every perl module on the system, am presently rebuilding
 apache22, and I'm sure the system will turn around and require me to
 rebuild postgres real soon.
 
 You would think there's an option to portupgrade that says don't
 upgrade every single package I've got, but if somewhere in the
 dependency chain I need a newer version of a thing, then do it.
 
 Am I just missing it in the manpages, or does such a thing really not
 exist?

It has been many years since I used portupgrade with any regularity, and
many of those neurones have been recycled.  However, I do recall
that:

   portupgrade -a should update all out-of-date ports on your system.

   portupgrade -r pkgname should update pkgname (if out of date) and
  all packages that depend on pkgname.

   portupgrade -R pkgname should update everything that pkgname depends
  on plus pkgname (if out of date).

'portupgrade -R' sounds like what you want.  I believe that the meaning
of the -r and -R flags in portupgrade is reversed from pkg_info(1) which
is annoyingly inconsistent.

Nowadays I usually use portmaster, where:

   portmaster pkgname

works equivalently to 'portupgrade -R pkgname' except that portmaster
/always/ reinstalls pkgname even if it is up to date.  ie. the standard
default action of portmaster is to do exactly what you want.

Cheers,

Matthew

-- 
Dr Matthew J Seaman MA, D.Phil.
PGP: http://www.infracaninophile.co.uk/pgpkey





signature.asc
Description: OpenPGP digital signature


Re: portupgrade -- is there a way to only build and update ports that actually NEED it?

2012-06-25 Thread Andrea Venturoli

On 06/25/12 10:40, Andrea Venturoli wrote:

On 06/25/12 09:53, Dan Mahoney, System Admin wrote:

Hey there,

I'm presently in the process of trying to do a portupgrade from rt-3.8.8
to 3.8.13.  By all estimations, this is a minor bump.

Already, I've encountered several annoyances due to ABI changes, such as
the libtool2.4 fun.  With normal portupgrade, this forces you to go fix
the dependent port.

Finally, I just applied -r, which should update all dependent packages,
but it seems to upgrade them unconditionally.


-r will upgrade all dependent ports *if* a newer version is available.
-rf will upgrade all dependent ports unconditionally.






You would think there's an option to portupgrade that says don't
upgrade every single package I've got, but if somewhere in the
dependency chain I need a newer version of a thing, then do it.


I'm not sure what you mean.
I guess you waned portupgrade -R rt, which will upgrade all ports rt

  ^
  wanted

is depending on.





HTH.

  bye
 av.



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


Re: portupgrade -- is there a way to only build and update ports that actually NEED it?

2012-06-25 Thread Andrea Venturoli

On 06/25/12 09:53, Dan Mahoney, System Admin wrote:

Hey there,

I'm presently in the process of trying to do a portupgrade from rt-3.8.8
to 3.8.13.  By all estimations, this is a minor bump.

Already, I've encountered several annoyances due to ABI changes, such as
the libtool2.4 fun.  With normal portupgrade, this forces you to go fix
the dependent port.

Finally, I just applied -r, which should update all dependent packages,
but it seems to upgrade them unconditionally.


-r will upgrade all dependent ports *if* a newer version is available.
-rf will upgrade all dependent ports unconditionally.






You would think there's an option to portupgrade that says don't
upgrade every single package I've got, but if somewhere in the
dependency chain I need a newer version of a thing, then do it.


I'm not sure what you mean.
I guess you waned portupgrade -R rt, which will upgrade all ports rt 
is depending on.






HTH.

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


Re: portupgrade -- is there a way to only build and update ports that actually NEED it?

2012-06-25 Thread John Levine
You would think there's an option to portupgrade that says don't upgrade 
every single package I've got, but if somewhere in the dependency chain I 
need a newer version of a thing, then do it.

The problem is that the versioning in the ports system doesn't
distinguish between upgrades that present interface changes and
upgrades that are just nits, new features, or minor bug fixes.
Port makefiles can contain version dependency info, e.g., this
port needs at least version N.M of package X, but few of them do.

This has bitten me in the past with PHP and pcre.  In fact, PHP5
won't work with old versions of pcre, but the PHP port maintainer
refuses to put in version dependency info, because he thinks that
every port should be up to date all the time.

R's,
John
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to freebsd-questions-unsubscr...@freebsd.org


Re: portupgrade -- is there a way to only build and update ports that actually NEED it?

2012-06-25 Thread Daniel Staal

On 2012-06-25 11:47, John Levine wrote:
You would think there's an option to portupgrade that says don't 
upgrade
every single package I've got, but if somewhere in the dependency 
chain I

need a newer version of a thing, then do it.


The problem is that the versioning in the ports system doesn't
distinguish between upgrades that present interface changes and
upgrades that are just nits, new features, or minor bug fixes.
Port makefiles can contain version dependency info, e.g., this
port needs at least version N.M of package X, but few of them do.

This has bitten me in the past with PHP and pcre.  In fact, PHP5
won't work with old versions of pcre, but the PHP port maintainer
refuses to put in version dependency info, because he thinks that
every port should be up to date all the time.


There's also the issue of things like Perl modules - most of them will 
just work, even with a newer version of perl, but a few have sections 
that need to be compiled against perl itself.  So if you update the Perl 
port, you need to at least recompile those.  (I'm simplifying a bit.)  
But there is no good way to mark in general which ports will 'just work' 
with an updated dependency, and which care what version of the 
dependency was installed when they were compiled.  This is separate from 
versioned dependencies: Again to use Perl modules as an example, DBI for 
instance is will work with any version of perl since 5.8 or so - but if 
you change which version of perl you are using you'll need to recompile 
and reinstall.


Rebuilding everything is a bit overkill, but it beats missing one that 
needed to be rebuilt.


Daniel T. Staal

---
This email copyright the author.  Unless otherwise noted, you
are expressly allowed to retransmit, quote, or otherwise use
the contents for non-commercial purposes.  This copyright will
expire 5 years after the author's death, or in 30 years,
whichever is longer, unless such a period is in excess of
local copyright law.
---
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to freebsd-questions-unsubscr...@freebsd.org


Re: portupgrade -- is there a way to only build and update ports that actually NEED it?

2012-06-25 Thread RW
On Mon, 25 Jun 2012 00:53:50 -0700 (PDT)
Dan Mahoney, System Admin wrote:

 Hey there,
 
 I'm presently in the process of trying to do a portupgrade from
 rt-3.8.8 to 3.8.13.  By all estimations, this is a minor bump.
 
 Already, I've encountered several annoyances due to ABI changes, such
 as the libtool2.4 fun.  With normal portupgrade, this forces you to
 go fix the dependent port.

I don't know what you mean by that

 Finally, I just applied -r, which should update all dependent
 packages, but it seems to upgrade them unconditionally.

That's because the revisions numbers will have been bumped, it's
nothing to do with portupgrade.

 Ergo, I've since built a new version of perl, a new verion of python, 
 rebuilt every perl module on the system, am presently rebuilding
 apache22, and I'm sure the system will turn around and require me to
 rebuild postgres real soon.
 
 You would think there's an option to portupgrade that says don't
 upgrade every single package I've got, 

Firstly it doesn't. Secondly no one is forcing you to do this, if you
want to go through the ports and work out which need an update and which
don't then portupgrade will let you do that.

 but if somewhere in the
 dependency chain I need a newer version of a thing, then do it.
 
 Am I just missing it in the manpages, or does such a thing really not 
 exist?
 
 -Dan
 
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to freebsd-questions-unsubscr...@freebsd.org