On 29/05 17.37, Jyri Virkki wrote: > Thava Alagu wrote: > > > > As I understand dependency does not serve any purpose other than > > usability -- for users > > to easily discover dependencies and get the software up and running. > > So, too obvious dependencies may be omitted. For example, a package > > may not > > specify (directly or indirectly) the dependency to libc.so. I think it > > Not really, take a look at the default depend file which includes all > the basics. > > At the end of the day, most importantely, consider the end user! > > If you provide component foo, I (as a user) want to be able to take a > freshly installed OpenSolaris 2008.05 instance and type > > % pkg install foo > > and once that's done, foo needs to work. So foo needs to have > dependencies to bring in anything else it needed.
OK, but let's then say foo doesn't "work" on its own but is a package that can optionally be used as an add-on by others. If package bar is the only available package which can use foo, does foo depend on bar? You may decide it does because it's "useless" without bar, but then along comes a new package baz which can also use foo because foo provides a standard interface. Now you may install foo+baz instead of foo+bar. I'm not trying to be difficult, just pointing out that dependency between packages may not always be so easy to define. :-) - Bjorn