On Sun, May 30, 2010 at 04:02:57PM +0200, Stefan Haller wrote:
> Hi Bill,
> 
> I try to explain it in detail:
> 
> The main package “desktopnova” provides only the user interface and the
> background daemon. The daemon uses modules (plugins) which contain the 
> features the user expects. These modules are packaged as
> “desktopnova-modules-*”. Before the modules are fully loaded, the version of
> the main program and the modules are checked. If they’re not equal, the module
> is discarded.
> 
> Now I think that neither the main package nor the modules should depend on
> each other. No error will be raised if the main program has no modules or the
> modules are installed without the main package. But if the main package is
> installed, the version must (ok, should -- no error will be raised either) be 
> equal to the version of the installed modules.
> 
> I would express this as the following dependency:
> 
> 
> desktopnova recommends desktopnova-module-*
> desktopnova conflicts with desktopnova-module-* (!= $version)
> 
> desktopnova-module-* recommends desktopnova
> desktopnova-module-* conflicts with desktopnova-* (!= $version)
> 
> Could you tell me if this is the correct way to go? Is there any problem with 
> the circular recommendation? (no explicit version given)

Hello Stephan,

Circular Recommends do not cause issues, since it is allowed to break
Recommends

>From the information you give, I would suggest:
desktopnova-module-* Depends desktopnova (=$version)
desktopnova Recommends desktopnova-module-gnome|desktopnova-module-xfce

Conflicts should be avoided.

Generally you should first consider the dependencies before naming and
splitting yours packages. The key are what is the primary package from
an user point of vue.
>From the information you give, I expect that a user either run GNOME or
XFCE, so will want to install either desktopnova-module-gnome or
desktopnova-module-xfce, but never desktopnova alone, so desktopnova-module-*
are the primary packages. So according to this theory I would have named them
desktopnova-gnome and desktopnova-xfce, and desktopnova would have been
named desktopnova-common.

Cheers,
Bill.



--
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]

Reply via email to