The (masked) gaim-2.0.0 ebuilds have a dependency xscreensaver? ( x11-misc/xscreensaver x11-libs/libXScrnSaver ) Shouldn't it only depend on libXScrnSaver? And if not, xscreensaver _OR_ gnome-screensaver?
Please, read Bug 116982 and the upstream one as well.
I have read both, and neither addresses my question in any way. To elaborate: I do not have xscreensaver installed. I do however have gnome-screensaver on my system, which is a replacement for xscreensaver. gaim-2.0.0_beta3-r2 has been emerged with USE=xscreensaver and changing status based on X usage works perfectly. I do not want to be forced to additionally install xscreensaver.
So disable xscreensaver use flag, that's the whole point why the flag is there. Thanks.
In this case at least the description in use.local.desc should be changed to reflect that -- it IMHO very clearly states something different. It is very annoying to constantly have to find out whether some ebuild interprets the USE flag as referencing the xscreensaver package or the XScreenSaver extension. Sorry that you seem annoyed by my perseverance, but this is about making Gentoo a more pleasant experience for _everyone_ -- right now the USE flag does not work intuitively, therefore more bug reports are likely to pop up when the package is unmasked. Regards.
This functionality requires xscreensaver, so... either you want it and install it, or don't. gaim uses xscreensaver for this to work, see src/gtkidle.c - so yes, it *does* need xscreensaver specifically. [- ] xscreensaver (net-im/gaim): Enable X idle time support instead of gaim idle time. Closing.
(In reply to comment #1) > Please, read Bug 116982 and the upstream one as well. Quoting a comment from the upstream bug: "okay, as you can see in the information you pasted, you compiled without support for the X Screen Saver extention, thus gaim is not able to use X Idle type computation." So it's the X Screen Saver extension that counts, not the xscreensaver program. (In reply to comment #5) > gaim uses xscreensaver for this to work, see src/gtkidle.c - so > yes, it *does* need xscreensaver specifically. I had a look at gtkidle.c and don't see it like this. While one comment is formulated in terms of the xscreensaver-command binary, the actual implementation in the function (ll. 104-112) uses XScreenSaverQueryExtension and XScreenSaverQueryInfo. Those symbols are provided by /usr/lib/libXss.so which is part of x11-libs/libXScrnSaver, which installs the matching man pages as well. > [- ] xscreensaver (net-im/gaim): > Enable X idle time support instead of gaim idle time. Which does imply the use of the Xss extension to get this idle time information, but not necessarily the xscreensaver program, which is not required at all. http://ftp.x.org/pub/X11R6.8.1/doc/Xss.3.html > Closing. I don't see this as invalid, at least not based on your arguments stated so far. I just checked this on my ~x86 system without xscreensaver package: 1. added xscreensaver to USE flags 2. emerge --nodeps gaim => remerged cleanly, configure said: checking for XScreenSaverRegister in -lXext... no checking for XScreenSaverRegister in -lXss... yes Use XScreenSaver Extension.... : yes 3. started Gaim, called Help/about, found XScreenSaver: XScreenSaver: Enabled 4. no error messages indicating something were missing Therefore I consider it proven that Gaim can use the XScreenSaver extension without the xscreensaver program installed, and the USE flag should do just that. Having the xscreensaver package around changes nothing at all. Please REOPEN this bug and remove the superfluous dependency.
Comment #6 includes most of what I was going to write just now. One additional point though: the actual lines of code from src/gtkidle.c are present in src/idle.c for gaim-1.5, which does _not_ depend on xscreensaver. So, the implementation hasn't actually changed -- how did this dependency creep in, anyway?
(In reply to comment #7) > [...] gaim-1.5, which does _not_ depend on xscreensaver. This is not a valid argument. As far as I can see the gaim-1.5.0.ebuild has no xscreensaver support whatsoever. Still, the same USE flag and conditional RDEPEND we want for gaim-2.0 would probably make sense for gaim-1.5 as well, especially in case 1.5 is going to stay around a while longer. > how did this dependency creep in, anyway? Looking at the history in CVS, the xscreensaver dep was there first, and libXScrnSaver was _added_ later on, instead of _replacing_ xscreensaver. Adding a package xscreensaver for an xscreensaver USE flag seems plausible at first glance, and not removing a dep could have come from playing save. For details, you'd have to ask gothgirl; all xscreensaver relevant changes were by her.
> This is not a valid argument. As far as I can see the gaim-1.5.0.ebuild has no > xscreensaver support whatsoever. Hm?? Both gaim versions have the exact same support for getting idle times from the XScreenSaver extension. Therefore both should optionally depend on the library providing the query functions. (In modular xorg-x11 these can only be provided by libXScrnSaver AFAICS!?) Neither of them should depend on xscreensaver. If this got across any other way, I may have chosen an unfortunate wording.
I just noticed that my Gaim gets compiled to use Xss even if the xscreensaver USE flag is not set. I assume the configure script finds Xss.so automatically. To really compile a gaim that does not to dependent on Xss even if libXScrnSaver is around at compile time, one would probably have to add $(use_enable xscreensaver screensaver) to the configure arguments. This allows you to remove libXScrnSaver without breaking gaim. Very likely the same holds for 1.5. Maybe other configure arguments should be checked as well, to avoid hidden dependecies.
Geeez, away with this discussion forum from bug wranglers...
Okay, when the xscreensaver dep was first added it appeared on my system as necessary. I've removed xscreensaver and run depclean, changed the ebuild and the x idle time is still available. The depend on xscreensaver is removed in -r3 being added to the tree tonight.