Gentoo Archives: gentoo-user

From: Brandon Vargo <brandon.vargo@×××××.com>
To: gentoo-user@l.g.o
Subject: Re: [gentoo-user] mythtv dependencies
Date: Fri, 28 Aug 2009 00:07:35
Message-Id: 1251436604.16847.218.camel@mercury
In Reply to: [gentoo-user] mythtv dependencies by Neal Hogan
1 On Thu, 2009-08-27 at 20:51 -0500, Neal Hogan wrote:
2 > <I posted this to getoo-media@ mut the list looks to be . . . "not-active.">
3 >
4 > I'm new to gentoo and the main reason for coming to gentoo is that I
5 > have an extra machine that I'd like to use as a DVR. Thus, I've
6 > installed mythtv.
7
8 Welcome to Gentoo.
9
10 > In general, the experience has been pleasant. However, I wonder about
11 > two things regarding emerge and mythtv's dependencies. The first is
12 > that mythtv failed to fully compile the first time because unzip was
13 > not installed. Next, is once mythtv finished compiling I tried to fire
14 > it up (mythtv-setup) and it was apparent that X was not installed.
15
16 I do not know anything about the unzip issue, as I have not run into it
17 in the past. However, regarding the second issue, an X server is not a
18 strict dependency of mythtv. As a result, it is not included in the list
19 of dependencies. On the other hand, certain X libraries such as libX11
20 and libXext are included in the dependency list, as they are necessary
21 to compile mythtv.
22
23 As an example, I run a mythtv server on a box that lacks any form of
24 video output. The box sits in a corner of a basement and streams video
25 over the network to my main workstation. The initial mythtv setup
26 process was performed by forwarding the X setup application over ssh. An
27 X server has never been installed, as it was never needed, nor could it
28 be used without adding hardware. Why have mythtv require an X server if
29 it is not strictly needed? That is software I would have to download,
30 compile, and install that would never be used. It would be great if
31 there were a text interface to configure mythtv, so I do not need all
32 those pesky X libraries and Qt, but that is another issue.
33
34 Sure, the argument could be made that many people will run the mythtv
35 frontend on their system, so X should be installed automatically when
36 mythtv is emerged to make it easy. The same could be said about firefox
37 or mplayer. But then again, there are those people who will install full
38 desktops for use in a VNC session and not on an X server, or those who
39 want to use mplayer right on the framebuffer instead of using the normal
40 GUI to watch a movie. For the most part, Gentoo tends to require opt-in
41 of features, rather than opt-out, so everyone can get exactly what they
42 want out of their system without any extra bloat. That is the purpose of
43 the use flags. There are packages with an X use flag, but this is
44 usually for features that require X libraries, not an X server itself.
45 For example, adding the X use flag to gkrellm builds both the desktop
46 application and gkrellmd, the server component; omitting the X use flag
47 builds only gkrellmd.
48
49 So an xserver use flag could be added to every package that could
50 possibly use X, such as mythtv, but then I could also say a vnc use flag
51 should be added for every package that uses X libraries in addition to
52 an NX use flag in addition to an ssh-forwarding use flag in addition to
53 whatever else might display X applications to the user. It is much
54 easier to install whatever software best displays X applications for
55 your particular setup, rather than trying to handle it through the
56 dependency system and use flags, even if the majority all install
57 xorg-server.
58
59 Having said that, X is about the only piece of software where this is
60 the case. Most everything else is handled by dependencies and use flags.
61 I can think of a few minor exceptions, but there are not many.
62
63 > These are not major "problems," since gentoo seems to be a friendly
64 > distro (so far) and emerging unzip and X went/is going just fine. I
65 > just found it odd that the mythtv package didn't "make sure" unzip and
66 > X were present before it was installed.
67
68 Submit a bug report for the unzip if it caused the build to fail. The
69 zip files for the mythtv ebuild are fairly new according to the
70 changelog.
71
72 Regards,
73
74 Brandon Vargo