In moving from drgeo 0.9.12 to 0.9.14 a dependency for www-client/dillo was added. This is completely unneccessary, any webbrowser is sufficient for browsing the documentation. Reproducible: Always Steps to Reproduce: 1. 2. 3.
Thanks for reporting. However, I prefer dillo to remain a dependency of drgeo. Although it is possible to use any browser to read the documentation, the GUI offers a help menu which, when using the default configuration, launches the dillo browser. If dillo was not installed, the GUI would fail to open the documentation, which is unacceptable. The dependency is therefore required. It is Gentoo's policy to conform to upstream's default configuration whenever possible. In this case, the authors selected dillo, a lightweight gtk-based browser, probably to ensure consistency with their gtk-based interface. Users of drgeo will likely expect dillo to be used as the documentation browser. This is not different from having to install a ScrollKeeper browser such as KHelpCenter or Nautilus when installing a KDE or GNOME application. You may still change the browser used to read the documentation in the settings menu. If you absolutely want not to install dillo, just copy the ebuild in a Portage overlay and remove the dependency.
Ok then let's do like the Macaulay2 ebuild does and add the following to the install section: cp ${D}/usr/share/drgeo/scm/preferences.scm tmp if has_version 'kde-base/kdebase' ; then einfo "Using konqueror as default help-browser!" sed "s:dillo :konqueror:g" < tmp >{D}/usr/share/drgeo/scm/preferences.scm elif has_version 'net-www/mozilla' ; then einfo "Using mozilla as default help-browser!" sed "s:dillo :mozilla:g" < tmp > ${D}/usr/share/drgeo/scm/preferences.scm elif has_version 'net-www/mozilla-firefox' ; then einfo "Using mozilla-firefox as default help-browser!" sed "s:dillo :firefox:g" < tmp > ${D}/usr/share/drgeo/scm/preferences.scm elif has_version 'net-www/epiphany' ; then einfo "Using epiphany as default help-browser!" sed "s:dillo :epiphany:g" < tmp > ${D}/usr/share/drgeo/scm/preferences.scm fi rm tmp If the guy who wrote this liked to use Konqueror would you make KDE a dependency for this?! It's just rather absurd to me, especially given that I already have 7 different webbrowsers on my system and you want me to pull in a 8th in addition to a whole new X11 toolkit (I don't have GTK+-1.*) just so I can not have to worry about his help dialog working out of the box.
The code you suggest will please some users, but not all: It assumes Konqueror should be used as the default browser as soon as it is installed. It will make plain mozilla the default over mozilla-firefox. Why is that? I might have Konqueror installed but prefer to use Mozilla. What about users who worked with drgeo on other systems and who expect to get the same interface they are used to? What if I install drgeo on two computers and get a different "default" browser on each though I use the same "USE" flags? Just to avoid dillo? This may seem trivial, but it is not if you use drgeo in a teaching environment where students are not familiar with Linux (or with computers at all). Advanced users can easily avoid installing dillo by using Portage's flexible overlay system. Doing so would take less time than finding a (flawed) hack and reopening a bug. As I said already, it is Gentoo's policy to conform to upstream's decisions when it makes sense and to have packages working out of the box (emerge <package> should be enough whenever possible). Having help buttons working out of the box is mandatory. Many users (myself included) expect such basic functions to actually work. Many users (again, myself included) also expect software packages to behave the same on different operating systems. Debian GNU/Linux has similar policies and requires dillo as a mandatory dependency of drgeo. If the upstream developers wanted to use Konqueror as the default documentation browser, they would probably have developed drgeo using the KDE development toolkit; I would have added Konqueror as a dependency. (I guess one could try to stretch this example by proposing absurd situations such as a team developing a package using GTK+ but configuring a KDE browser as the default, but there is ample provision in "when it makes sense" to deal with these extreme cases. In fact, I had to change the default browser in "app-sci/staden" since it is security masked in Portage.) If this issue is very important to you, then you might want to suggest adding "virtual/graphical-browser" to our virtual package system. If other developers agree to implement this, I will change dregeo to use it if a certain "USE" flag is enabled. (I will not, however, use dirty hacks in the meanwhile if I can avoid it. Sorry.)
Ok, I somewhat changed my mind overnight. I added the local "USE" flag "no-helpbrowser" to the ebuild, so you can avoid pulling in dillo.
Fixed in CVS.
Thanks for the use flag it is at least makes it possible to mask gtk+1.* and not break the tree. In the end though I think this is indicative of some more basic problems with Gentoo -- to which I will probably write an open letter to the community over the next few days -- where developers are being too hemmed in by policy. I recognize that having well defined policy can be useful, but I think you also have to consider what is in the best interest of your user. Requiring the user to install a browser which has been in beta for almost 2 years now while mozilla variants are into their second generation of stable is not a decision that RedHat Mandrake SuSe etc. would make. The danger of getting sucked into these rigid policies is that you end up like Debian hamstrung by arguments in your different departments about who is following policy, what licenses are actually open source, and in the end not providing the best experience for your users. I think for this package you have to consider who is installing and who is using. If the end user is the sys-admin then setting the global preference in /usr/local/drgeo/scm/preferences.scm or using a virtual-browser is fine. On the other hand if there are multiple users then drgeo is already broken because it doesnt recognize any of the standardized ways of setting a prefered browser, and the sys-admin will have to make the best decision he can on behalf of his users. In either case the sys-admin has to make a decision and modify the preferences file. Given that this install can't be ``automagic'' it makes sense to me to install the absolute minimum, set a sensible -- but probably not perfect -- default using the Macaulay2 code, and then print a message to the sys-admin telling them what to do if they don't like the default.