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


Reply via email to