Date: Thu, 06 Dec 2007 22:32:51 -0500 From: Alex Goncharov <alex-goncharov@comcast.net> To: Erik Trulsson <ertr1013@student.uu.se> Cc: freebsd-ports@freebsd.org Subject: Re: (Very) bogus package dependencies Message-ID: <E1J0TxL-000J4O-8V@[24.61.20.41]> In-Reply-To: <20071207001315.GA58050@owl.midgard.homeip.net> (message from Erik Trulsson on Fri, 7 Dec 2007 01:13:15 %2B0100) References: <E1J0Q3W-0000NQ-D9@[24.61.20.41]> <20071207001315.GA58050@owl.midgard.homeip.net>
next in thread | previous in thread | raw e-mail | index | archive | help
,--- I=Alex (Thu, 06 Dec 2007 18:22:58 -0500) ----* | | But I cannot find any justification for this: | | -------------------- | $ pkg_info -R cdrtools* | Information for cdrtools-2.01_6: | | Required by: | hal-0.5.8.20070909 | xf86-input-keyboard-1.2.2_1 | xf86-input-mouse-1.2.3 | xf86-video-i810-1.6.5_3 | xf86-video-radeonhd-1.0.0 | xorg-server-1.4_3,1 | -------------------- | | `xf86-video-radeonhd-1.0.0' requires `cdrtools'?... | | How can this happen? Am I missing something? | | -------------------- | pwd; echo ===; cat ./+REQUIRED_BY; echo ===; ls -l ./+REQUIRED_BY | /var/db/pkg/cdrtools-2.01_6 | === | hal-0.5.8.20070909 | xf86-input-keyboard-1.2.2_1 | xf86-input-mouse-1.2.3 | xf86-video-i810-1.6.5_3 | xf86-video-radeonhd-1.0.0 | xorg-server-1.4_3,1 | === | -rw-r--r-- 1 root wheel 140 Dec 6 17:05 ./+REQUIRED_BY | -------------------- | `-------------------------------------------------* ,--- You=Erik (Fri, 7 Dec 2007 01:13:15 +0100) ----* | | It looks like an ordinary indirect dependency. | The drivers as well as the xorg-server all require 'hal'. Yes: -------------------- $ pkg_info -r xf86-video-radeonhd-* .... Dependency: hal-0.5.8.20070909 Dependency: xorg-server-1.4_3,1 -------------------- | 'hal' depends on 'cdrtools'. (It may be that the drivers only | depend on xorg-server, | As for why 'hal' requires 'cdrtools' I have no idea, but there is | probably some reason for it. And this is precisely the second of the two questions I have in mind: 1. (Purely technical): Where is this originally recorded? I don't see anything applicable in the port's directory: -------------------- # find /usr/ports/sysutils/hal -type f| wc -l 567 # find /usr/ports/sysutils/hal -type f -exec grep -Hn 'cdrtools' {} \;| wc -l 0 -------------------- But I do see it in `/var/db/pkg': -------------------- # find /var/db/pkg/hal-0.5.8.20070909/ -type f -exec grep -Hn 'cdrtools' {} \; /var/db/pkg/hal-0.5.8.20070909/+CONTENTS:187:@pkgdep cdrtools-2.01_6 /var/db/pkg/hal-0.5.8.20070909/+CONTENTS:188:@comment DEPORIGIN:sysutils/cdrtools -------------------- So, is it that a port maintainer creates `/var/db/pkg/PKG/*' files by hand? Based on individual ideas? Not on really "must-to-have" things, like dependencies on shared libraries? (I am totally unfamiliar with the mechanism to maintain and package the ports and would like to understand it.) 2. (Conceptual): How reasonable are these dependencies? In this case, `/usr/sbin/burncd' is all I need to burn CD's. I have no practical reason to have `cdrtools' on my computer. Why would the "Hardware Abstraction Layer for simplifying device access" depend on a specific set of "CD/CD-R[W] and ISO-9660 image creation and extraction tools" -- on this set and not on another? Thanks, -- Alex -- alex-goncharov@comcast.net -- /* * If at first you don't succeed, you're doing about average. * * -- Leonard Levinson */
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E1J0TxL-000J4O-8V>