On Sun, Sep 25, 2016 at 11:49:40PM +0200, Tim Dengel wrote: > Hi Bill, > > Am 25.09.2016 um 16:42 schrieb Bill Allombert: > > Complex circular dependencies are known to cause problems during upgrade, > > so we > > should try to get rid of them. > > Thanks for pointing that out, I did not know that. > > > See threads > > http://lists.debian.org/debian-devel/2005/06/msg02111.html > > http://lists.debian.org/debian-devel/2005/11/msg01101.html > > As far as I can see, there are 3 possible solutions: > > 1) Remove the dependency from gnome-twitch on its player backends > + When uninstalling gnome-twitch, all additionally installed player > backends are removed > - When installing gnome-twitch, the user has to manually install a > player backend, which he might not be aware of. > > 2) Remove the dependency from the individual player backends on gnome-twitch > + When installing gnome-twitch, the user automatically installs a > player backend if he didn't manually do so > - When the user has manually installed additional player backends and > removes gnome-twitch, the player backends will stay, along with > their dependencies. > > 3) Replace the dependency from gnome-twitch on its player backends with > "Recommends". > + When uninstalling gnome-twitch, all additionally installed player > backends are removed > + When installing gnome-twitch, the user automatically installs a > player backend if he didn't manually do so and if he didn't > explicitly configure apt to not install recommended packages > + If there ever is a case where a third-party player backend enters > the archive, the user could install that without having one of the > player backends from this source package installed. Same goes for > locally built player backends. > > It seems I should go with option 3. Do you agree?
I would pick 2 in general because some users do not install Recommends by defaut and I do not know how well gnome-twitch react when there is no plugin, and "apt-get autoremove" will take care of removing the backends. What you can also do is to use a metapackage gnome-twitch-backend that all backend provides. This does not solve the circular dependency but this way you do not need to hard-code a list of backends. Cheers, Bill