On Thu, 2009-08-27 at 20:51 -0500, Neal Hogan wrote: > <I posted this to getoo-media@ mut the list looks to be . . . "not-active."> > > I'm new to gentoo and the main reason for coming to gentoo is that I > have an extra machine that I'd like to use as a DVR. Thus, I've > installed mythtv.
Welcome to Gentoo. > In general, the experience has been pleasant. However, I wonder about > two things regarding emerge and mythtv's dependencies. The first is > that mythtv failed to fully compile the first time because unzip was > not installed. Next, is once mythtv finished compiling I tried to fire > it up (mythtv-setup) and it was apparent that X was not installed. I do not know anything about the unzip issue, as I have not run into it in the past. However, regarding the second issue, an X server is not a strict dependency of mythtv. As a result, it is not included in the list of dependencies. On the other hand, certain X libraries such as libX11 and libXext are included in the dependency list, as they are necessary to compile mythtv. As an example, I run a mythtv server on a box that lacks any form of video output. The box sits in a corner of a basement and streams video over the network to my main workstation. The initial mythtv setup process was performed by forwarding the X setup application over ssh. An X server has never been installed, as it was never needed, nor could it be used without adding hardware. Why have mythtv require an X server if it is not strictly needed? That is software I would have to download, compile, and install that would never be used. It would be great if there were a text interface to configure mythtv, so I do not need all those pesky X libraries and Qt, but that is another issue. Sure, the argument could be made that many people will run the mythtv frontend on their system, so X should be installed automatically when mythtv is emerged to make it easy. The same could be said about firefox or mplayer. But then again, there are those people who will install full desktops for use in a VNC session and not on an X server, or those who want to use mplayer right on the framebuffer instead of using the normal GUI to watch a movie. For the most part, Gentoo tends to require opt-in of features, rather than opt-out, so everyone can get exactly what they want out of their system without any extra bloat. That is the purpose of the use flags. There are packages with an X use flag, but this is usually for features that require X libraries, not an X server itself. For example, adding the X use flag to gkrellm builds both the desktop application and gkrellmd, the server component; omitting the X use flag builds only gkrellmd. So an xserver use flag could be added to every package that could possibly use X, such as mythtv, but then I could also say a vnc use flag should be added for every package that uses X libraries in addition to an NX use flag in addition to an ssh-forwarding use flag in addition to whatever else might display X applications to the user. It is much easier to install whatever software best displays X applications for your particular setup, rather than trying to handle it through the dependency system and use flags, even if the majority all install xorg-server. Having said that, X is about the only piece of software where this is the case. Most everything else is handled by dependencies and use flags. I can think of a few minor exceptions, but there are not many. > These are not major "problems," since gentoo seems to be a friendly > distro (so far) and emerging unzip and X went/is going just fine. I > just found it odd that the mythtv package didn't "make sure" unzip and > X were present before it was installed. Submit a bug report for the unzip if it caused the build to fail. The zip files for the mythtv ebuild are fairly new according to the changelog. Regards, Brandon Vargo