From nobody@FreeBSD.org  Sun Aug 29 04:57:40 2010
Return-Path: <nobody@FreeBSD.org>
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
	by hub.freebsd.org (Postfix) with ESMTP id 37A491065674
	for <freebsd-gnats-submit@FreeBSD.org>; Sun, 29 Aug 2010 04:57:40 +0000 (UTC)
	(envelope-from nobody@FreeBSD.org)
Received: from www.freebsd.org (www.freebsd.org [IPv6:2001:4f8:fff6::21])
	by mx1.freebsd.org (Postfix) with ESMTP id 28BC88FC08
	for <freebsd-gnats-submit@FreeBSD.org>; Sun, 29 Aug 2010 04:57:40 +0000 (UTC)
Received: from www.freebsd.org (localhost [127.0.0.1])
	by www.freebsd.org (8.14.3/8.14.3) with ESMTP id o7T4vdXG068453
	for <freebsd-gnats-submit@FreeBSD.org>; Sun, 29 Aug 2010 04:57:39 GMT
	(envelope-from nobody@www.freebsd.org)
Received: (from nobody@localhost)
	by www.freebsd.org (8.14.3/8.14.3/Submit) id o7T4vdaN068446;
	Sun, 29 Aug 2010 04:57:39 GMT
	(envelope-from nobody)
Message-Id: <201008290457.o7T4vdaN068446@www.freebsd.org>
Date: Sun, 29 Aug 2010 04:57:39 GMT
From: Jens <jan0sch@gmx.net>
To: freebsd-gnats-submit@FreeBSD.org
Subject: Recursive dependencies on ports tor and vidalia and weird vidalia default dependencies.
X-Send-Pr-Version: www-3.1
X-GNATS-Notify:

>Number:         150078
>Category:       ports
>Synopsis:       security/tor: Recursive dependencies on ports tor and vidalia and weird vidalia default dependencies.
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    bf
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sun Aug 29 05:00:18 UTC 2010
>Closed-Date:    Mon Aug 30 15:09:29 UTC 2010
>Last-Modified:  Mon Aug 30 18:40:02 UTC 2010
>Originator:     Jens
>Release:        8.1-RELEASE
>Organization:
>Environment:
FreeBSD tjalfi.nowhere.home 8.1-RELEASE FreeBSD 8.1-RELEASE #0: Mon Jul 19 02:36:49 UTC 2010     root@mason.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC  amd64
>Description:
When installing tor via ports and selecting vidalia in the config make install bails out with an error as vidalia depends per default on tor and tor-devel.
If you remove tor-devel from the config of vidalia and repeat the make install in /usr/ports/security/tor the install part gets caught in an endless loop as tor checks for vidalia and vidalia checks for tor.

>How-To-Repeat:
cd /usr/ports/security/tor
make config
select vidalia
make install clean
-> first error (vidalia dependencies)
cd /usr/ports/net-mgmt/vidalia
make config
remove tor-devel
cd /usr/ports/security/tor
make install clean
-> after build you'll encounter the endless loop

>Fix:
Don't select vidalia as build option for tor and build and install it after installing tor.
This is not a big problem but somewhat annoying. Maybe it should be mentioned somewhere.

>Release-Note:
>Audit-Trail:
Responsible-Changed-From-To: freebsd-bugs->freebsd-ports-bugs 
Responsible-Changed-By: remko 
Responsible-Changed-When: Sun Aug 29 08:35:52 UTC 2010 
Responsible-Changed-Why:  
Ports thingy 

http://www.freebsd.org/cgi/query-pr.cgi?pr=150078 

From: "b. f." <bf1783@googlemail.com>
To: bug-followup@FreeBSD.org
Cc: miwi@FreeBSD.org, Jens <jan0sch@gmx.net>, Fabian Keil <fk@fabiankeil.de>
Subject: Re: ports/150078: security/tor: Recursive dependencies on ports tor
 and vidalia and weird vidalia default dependencies
Date: Sun, 29 Aug 2010 10:27:25 +0000

 The solution is to remove the VIDALIA option, and hence any
 dependencies on net-mgmt/vidalia, from security/tor and
 security/tor-devel, because this option introduces circular
 dependencies, and was only there for convenience: there is no actual
 dependency.
 
 As an aside, I should mention that the dependency handling in
 net-mgmt/vidalia is problematic.  The use of != and calls to utilities
 like pkg_info in port Makefiles, outside of targets that are not run
 during 'make describe'  is actively discouraged, because it makes
 computing the INDEX more costly, and this is one of the bottlenecks in
 Ports.  portmgr went to some trouble to remove these calls earlier
 (see, for example:
 
 http://lists.freebsd.org/pipermail/freebsd-ports/2008-July/049777.html
 http://lists.freebsd.org/pipermail/cvs-ports/2008-July/153224.html
 
 ), and they should be removed from vidalia.  Yes, the handling of
 alternative dependencies is clumsy in Ports, but the tools that most
 people use for dealing with this, like portmanager and portupgrade,
 have means of dealing with this problem, and as long as the entry for
 'make describe'  is correct for default package builds in clean
 sandboxes, efficiency is more important. Also, it seems to me that the
 TOR_DEVEL and TOR OPTIONS can be combined into one option.
 
 b.

From: Fabian Keil <fk@fabiankeil.de>
To: bf1783@gmail.com
Cc: bug-followup@FreeBSD.org, miwi@FreeBSD.org, Jens <jan0sch@gmx.net>
Subject: Re: ports/150078: security/tor: Recursive dependencies on ports tor
 and vidalia and weird vidalia default dependencies
Date: Sun, 29 Aug 2010 13:33:00 +0200

 --Sig_/2tcN6e3Herr1SLlg=us.blr
 Content-Type: text/plain; charset=US-ASCII
 Content-Transfer-Encoding: quoted-printable
 
 "b. f." <bf1783@googlemail.com> wrote:
 
 > The solution is to remove the VIDALIA option, and hence any
 > dependencies on net-mgmt/vidalia, from security/tor and
 > security/tor-devel, because this option introduces circular
 > dependencies, and was only there for convenience: there is no actual
 > dependency.
 
 I agree that the Tor ports should drop the dependency.
 
 This has already been discussed in 2007 when lx@ first
 reported the problem. IIRC, at that time the Tor maintainer
 agreed as well, so I'm not sure why it hasn't happened.
 
 > As an aside, I should mention that the dependency handling in
 > net-mgmt/vidalia is problematic.  The use of !=3D and calls to utilities
 > like pkg_info in port Makefiles, outside of targets that are not run
 > during 'make describe'  is actively discouraged, because it makes
 > computing the INDEX more costly, and this is one of the bottlenecks in
 > Ports.  portmgr went to some trouble to remove these calls earlier
 > (see, for example:
 >=20
 > http://lists.freebsd.org/pipermail/freebsd-ports/2008-July/049777.html
 > http://lists.freebsd.org/pipermail/cvs-ports/2008-July/153224.html
 >=20
 > ), and they should be removed from vidalia.  Yes, the handling of
 > alternative dependencies is clumsy in Ports, but the tools that most
 > people use for dealing with this, like portmanager and portupgrade,
 > have means of dealing with this problem, and as long as the entry for
 > 'make describe'  is correct for default package builds in clean
 > sandboxes, efficiency is more important. Also, it seems to me that the
 > TOR_DEVEL and TOR OPTIONS can be combined into one option.
 
 The use of !=3D for the dependency handling is the result of
 a discussion on freebsd-ports@ and at that time nobody had
 any better ideas.
 
 Fabian
 
 --Sig_/2tcN6e3Herr1SLlg=us.blr
 Content-Type: application/pgp-signature; name=signature.asc
 Content-Disposition: attachment; filename=signature.asc
 
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.16 (FreeBSD)
 
 iEYEARECAAYFAkx6RXAACgkQSMVSH78upWPHjACePFVQ96DzM6vMZWOPxLgv0C3D
 IwUAn0Cp1/SXicDsXCqb5HH3QFEwAULd
 =I5Hu
 -----END PGP SIGNATURE-----
 
 --Sig_/2tcN6e3Herr1SLlg=us.blr--

From: "b. f." <bf1783@googlemail.com>
To: Fabian Keil <fk@fabiankeil.de>
Cc: bug-followup@freebsd.org, miwi@freebsd.org, Jens <jan0sch@gmx.net>
Subject: Re: ports/150078: security/tor: Recursive dependencies on ports tor
 and vidalia and weird vidalia default dependencies
Date: Sun, 29 Aug 2010 12:10:40 +0000

 --00163646ced284b9e7048ef53c79
 Content-Type: text/plain; charset=ISO-8859-1
 
 On 8/29/10, Fabian Keil <fk@fabiankeil.de> wrote:
 > "b. f." <bf1783@googlemail.com> wrote:
 
 > The use of != for the dependency handling is the result of
 > a discussion on freebsd-ports@ and at that time nobody had
 > any better ideas.
 
 I find that surprising, because, typically, that is not how
 dependencies are handled in Ports.  Most ports have a dependency
 triplet, say,
 
 ..._DEPENDS= ${LOCALBASE}/bin/foo:${PORTSDIR}/bat/bar...
 
 but they don't go to any trouble to determine whether foo, if present,
 is actually from, for example,  the bat/bar or bat/bar-devel port.
 It's enough that it is present, and the dependency is correctly
 registered for default package builds.  A few might have a knob to
 toggle dependencies for the convenience of the user, but the version
 isn't usually checked even when such a knob is present.  Something
 like the attached patch is usually considered sufficient.
 
 b.
 
 --00163646ced284b9e7048ef53c79
 Content-Type: application/octet-stream; name="pr_vidalia.diff"
 Content-Disposition: attachment; filename="pr_vidalia.diff"
 Content-Transfer-Encoding: base64
 X-Attachment-Id: file0
 
 LS0tIE1ha2VmaWxlLm9yaWcJMjAxMC0wNi0wNiAwMzoxNzo0OS4wMDAwMDAwMDAgLTA0MDAKKysr
 IE1ha2VmaWxlCTIwMTAtMDgtMjkgMDc6NDc6MzcuMDAwMDAwMDAwIC0wNDAwCkBAIC0yMCwzMyAr
 MjAsMTQgQEAKIFFUX0NPTVBPTkVOVFM9CWd1aSBtb2NfYnVpbGQgcW1ha2VfYnVpbGQgcmNjX2J1
 aWxkIHVpY19idWlsZCBuZXR3b3JrIHhtbCBsaW5ndWlzdF9idWlsZAogTUFLRV9KT0JTX1NBRkU9
 CXllcwogCi1IQVZFX1RPUiE9CWlmIHBrZ19pbmZvIC1JIHRvci1cKiA+L2Rldi9udWxsIDI+JjEg
 OyB0aGVuICR7RUNIT30gWUVTOyBmaQorT1BUSU9OUz0JVE9SX0RFVkVMCSJEZXBlbmQgb24gdG9y
 LWRldmVsLCByYXRoZXIgdGhhbiB0b3IiCU9uCiAKLS5pZiAoJHtIQVZFX1RPUn0gPT0gIllFUyIp
 Ci1IQVZFX1RPUl9ERVZFTCE9CWlmIHBrZ19pbmZvIC1JIHRvci1kZXZlbFwqID4vZGV2L251bGwg
 Mj4mMSA7IHRoZW4gJHtFQ0hPfSBZRVM7IGZpCi0KLS5pZiAoJHtIQVZFX1RPUl9ERVZFTH0gPT0g
 IllFUyIpCi1PUFRJT05TPQlUT1JfREVWRUwJIkRlcGVuZCBvbiB0b3ItZGV2ZWwgKGFscmVhZHkg
 aW5zdGFsbGVkKSIJT24KLS5lbHNlCi1PUFRJT05TPQlUT1IJCSJEZXBlbmQgb24gdG9yIChhbHJl
 YWR5IGluc3RhbGxlZCkiCU9uCi0uZW5kaWYKLQotLmVsc2UKLQotT1BUSU9OUz0JVE9SX0RFVkVM
 CSJEZXBlbmQgb24gdG9yLWRldmVsIglPbiBcCi0JCVRPUgkJIkRlcGVuZCBvbiB0b3IiCQlPZmYK
 LQotLmVuZGlmCi0KLS5pbmNsdWRlIDxic2QucG9ydC5wcmUubWs+CisuaW5jbHVkZSA8YnNkLnBv
 cnQub3B0aW9ucy5taz4KIAogLmlmIGRlZmluZWQoV0lUSF9UT1JfREVWRUwpCi0uaWYgZGVmaW5l
 ZChXSVRIX1RPUikKLUlHTk9SRT0JCWNhbm5vdCBkZXBlbmQgb24gdG9yIGFuZCB0b3ItZGV2ZWwg
 YXQgdGhlIHNhbWUgdGltZQotLmVuZGlmCiBSVU5fREVQRU5EUys9CSR7TE9DQUxCQVNFfS9iaW4v
 dG9yOiR7UE9SVFNESVJ9L3NlY3VyaXR5L3Rvci1kZXZlbAotLmVsaWYgZGVmaW5lZChXSVRIX1RP
 UikKKy5lbHNlCiBSVU5fREVQRU5EUys9CSR7TE9DQUxCQVNFfS9iaW4vdG9yOiR7UE9SVFNESVJ9
 L3NlY3VyaXR5L3RvcgogLmVuZGlmCiAKLS5pbmNsdWRlIDxic2QucG9ydC5wb3N0Lm1rPgorLmlu
 Y2x1ZGUgPGJzZC5wb3J0Lm1rPgo=
 --00163646ced284b9e7048ef53c79--

From: dfilter@FreeBSD.ORG (dfilter service)
To: bug-followup@FreeBSD.org
Cc:  
Subject: Re: ports/150078: commit references a PR
Date: Mon, 30 Aug 2010 14:45:16 +0000 (UTC)

 bf          2010-08-30 14:45:04 UTC
 
   FreeBSD ports repository
 
   Modified files:
     security/tor         Makefile 
     security/tor/files   pkg-message.in 
   Log:
   --Add LICENSE information
   --Add a reference to net/tsocks in the pkg-message, but remove the dependency
   on that port [1]
   --Remove the VIDALIA option, which led to (false) circular
   dependencies when enabled [2]
   
   PR:             150078 [2]
   Requested by:   Fabian Keil [1]
   Approved by:    miwi (co-mentor, maintainer)
   
   Revision  Changes    Path
   1.58      +7 -10     ports/security/tor/Makefile
   1.3       +1 -0      ports/security/tor/files/pkg-message.in
 _______________________________________________
 cvs-all@freebsd.org mailing list
 http://lists.freebsd.org/mailman/listinfo/cvs-all
 To unsubscribe, send any mail to "cvs-all-unsubscribe@freebsd.org"
 

From: dfilter@FreeBSD.ORG (dfilter service)
To: bug-followup@FreeBSD.org
Cc:  
Subject: Re: ports/150078: commit references a PR
Date: Mon, 30 Aug 2010 14:48:07 +0000 (UTC)

 bf          2010-08-30 14:47:40 UTC
 
   FreeBSD ports repository
 
   Modified files:
     security/tor-devel   Makefile 
     security/tor-devel/files pkg-message.in 
   Log:
   --Add LICENSE information
   --Add a reference to net/torsocks in the pkg-message, but remove the dependency
   on that port [1]
   --Remove the VIDALIA option, which led to (false) circular
   dependencies when enabled [2]
   --Re-enable the regression-test target
   
   PR:             150078 [2]
   Requested by:   Fabian Keil [1]
   Approved by:    miwi (co-mentor)
   
   Revision  Changes    Path
   1.94      +6 -8      ports/security/tor-devel/Makefile
   1.4       +1 -0      ports/security/tor-devel/files/pkg-message.in
 _______________________________________________
 cvs-all@freebsd.org mailing list
 http://lists.freebsd.org/mailman/listinfo/cvs-all
 To unsubscribe, send any mail to "cvs-all-unsubscribe@freebsd.org"
 
Responsible-Changed-From-To: freebsd-ports-bugs->bf 
Responsible-Changed-By: bf 
Responsible-Changed-When: Mon Aug 30 15:04:41 UTC 2010 
Responsible-Changed-Why:  
I'll take it. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=150078 
State-Changed-From-To: open->closed 
State-Changed-By: bf 
State-Changed-When: Mon Aug 30 15:09:28 UTC 2010 
State-Changed-Why:  
Fixed, after the VIDALIA option was removed from both security/tor and 
security/tor-devel.  Thanks for the report. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=150078 

From: Fabian Keil <fk@fabiankeil.de>
To: bf1783@gmail.com
Cc: bug-followup@freebsd.org
Subject: Re: ports/150078: security/tor: Recursive dependencies on ports tor
 and vidalia and weird vidalia default dependencies
Date: Mon, 30 Aug 2010 20:38:36 +0200

 --Sig_/YEi=.7pOqIFXrZ5Bob=lLVa
 Content-Type: text/plain; charset=US-ASCII
 Content-Transfer-Encoding: quoted-printable
 
 "b. f." <bf1783@googlemail.com> wrote:
 
 > On 8/29/10, Fabian Keil <fk@fabiankeil.de> wrote:
 > > "b. f." <bf1783@googlemail.com> wrote:
 >=20
 > > The use of !=3D for the dependency handling is the result of
 > > a discussion on freebsd-ports@ and at that time nobody had
 > > any better ideas.
 >=20
 > I find that surprising, because, typically, that is not how
 > dependencies are handled in Ports.  Most ports have a dependency
 > triplet, say,
 >=20
 > ..._DEPENDS=3D ${LOCALBASE}/bin/foo:${PORTSDIR}/bat/bar...
 >=20
 > but they don't go to any trouble to determine whether foo, if present,
 > is actually from, for example,  the bat/bar or bat/bar-devel port.
 > It's enough that it is present, and the dependency is correctly
 > registered for default package builds.  A few might have a knob to
 > toggle dependencies for the convenience of the user, but the version
 > isn't usually checked even when such a knob is present.  Something
 > like the attached patch is usually considered sufficient.
 
 Your patch removes the option to not depend on any Tor version.
 
 While Vidalia is useless without Tor, there's no requirement
 to run Vidalia and Tor on the same system, so "no dependency"
 is a valid choice.
 
 If the current construct is considered too expensive,
 maybe it should simply be removed completely.
 
 Fabian
 
 --Sig_/YEi=.7pOqIFXrZ5Bob=lLVa
 Content-Type: application/pgp-signature; name=signature.asc
 Content-Disposition: attachment; filename=signature.asc
 
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.16 (FreeBSD)
 
 iEYEARECAAYFAkx7+rQACgkQSMVSH78upWPELQCbB/jS0cYAtgI2oT46sk39gQc/
 ueYAniqB0QfD0WO3X4H38++qt2AfP3GM
 =awlZ
 -----END PGP SIGNATURE-----
 
 --Sig_/YEi=.7pOqIFXrZ5Bob=lLVa--
>Unformatted:
