Donnie Berkholz ([info]spyderous) wrote,
@ 2006-01-28 02:51:00
Previous Entry  Add to memories!  Tell a Friend!  Next Entry
[Gentoo] Configurability of X.Org 7.0 and Portage
Take a look at these screenshots for how you'll be able to configure X.Org 7.0. Normally you would set VIDEO_CARDS and INPUT_DEVICES in /etc/make.conf. I'm just showing them on the command line to illustrate the configurability and power you'll get.

Use case 1: You've got a keyboard, a mouse, and either one or a couple of video cards, and you hate bloat. You're a developer, so you want to compile all your X stuff with debugging support.



Use case 2: You use the binary ATi drivers, because you really want to play the latest games (Quake 4 and Doom 3) and no released r300 driver can handle them. You want to try the new evdev driver, a replacement for keyboard and mouse drivers that uses the Linux event interface. You still hate bloat, of course. You want your system to be lightning-fast and optimized.



Use case 3: You want things to just work, and you don't want to know what sort of video card your computer has. What's a video card, anyway? You just use X.Org's autodetection. You do know that you have a keyboard and a mouse though, so you set those up.



Now, I'll explain the output a little bit. Just before the package name, there's something like this:
[ebuild N ]

The "N" means it's a package we haven't installed before. If it were a "U," we'd be upgrading. "R" means reinstallation of the same version. The "ebuild" part means we're compiling from source, not using a binary package.

Take a look at all the USE, INPUT_DEVICES and VIDEO_CARDS flags after the package names. The yellow flags and % symbols mean they're something new that wasn't around last time you installed that package. So synaptics, fglrx and nvidia are new options. The green flags with a * after them indicated something you've changed yourself since last time you installed the package. The red indicates an active flag -- support will be built for it. The blue flag with a minus sign indicates an inactive flag -- support won't be built for that option.



(Post a new comment)

Incremental?
(Anonymous)
2006-01-28 12:04 pm UTC (link)
Just wondering, but wouldn't it be a good thing if this vars were incremental (like USE is for instance). That would mean that if I have INPUT_DEVICES="keyboard mouse synaptics" in make.conf, but I want to test "evdev", i would have to add only this one to my command line:
% INPUT_DEVICES="evdev" emerge ...

That would make easier to have sane defaults in profiles (like INPUT_DEVICES="keyboard mouse"), so that users just have to add there non-standard stuffs to make.conf ("synaptics" in my case). And sure it would still allow users who don't like defaults to empty them, thanks to the "-*" syntax.

And something else: I understand that if INPUT_DEVICES or VIDEO_CARDS are unset/empty, you default to enabling all possible values. While i think it's a right thing (safe default), i don't find the "emerge -pv" output very clear in that case: looking at your last example, one would probably think "WTH? They are all off, but emerge wants them all?". Maybe it should be a special case in the display, something like:

[ebuild N ] x11-base/xorg-x11-7.0-r1 USE="..." INPUT_DEVICES="..." !VIDEO_CARDS

(with "!VIDEO_CARDS" meaning: "This var could have been taken into account, but was not set. Maybe you should take a few seconds to configure it...")

(Reply to this) (Thread)

Re: Incremental?
[info]spyderous
2006-01-28 09:23 pm UTC (link)
Both ideas sound reasonable. Why don't you search for a portage bug on them (might search for USE_EXPAND instead of VIDEO_CARDS etc), or file a new one if you can't find any?

Post the URLs here so I can follow them, too.

(Reply to this) (Parent)

r300
(Anonymous)
2006-01-28 03:18 pm UTC (link)
r300 have an open source 3d driver, you should change your example to r400 instead :)

(Reply to this) (Thread)

Re: r300
[info]spyderous
2006-01-28 09:24 pm UTC (link)
Yes, it does, and I specifically mentioned that in the use case. =) Even some r400's, such as r420, work with it.

Read the last half again: "You use the binary ATi drivers, because you really want to play the latest games (Quake 4 and Doom 3) and no released r300 driver can handle them."

(Reply to this) (Parent)


[info]vxjasonxv
2006-01-28 03:32 pm UTC (link)
So that's what the yellow/% means.
I've been meaning to ask about that (And a lot of the new pretty colors in general) for some time.

Thanks!

(Reply to this) (Thread)

%-symbol after USE-variables
(Anonymous)
2006-02-10 02:02 pm UTC (link)
I also wonder what this means. Doesn't look like it is mentioned in the man-pages.

(Reply to this) (Parent)(Thread)

Re: %-symbol after USE-variables
[info]vxjasonxv
2006-02-10 08:59 pm UTC (link)
You did read the post right?
I was saying that I understood what it means. I didn't ask.

(Reply to this) (Parent)

automating with lspci
(Anonymous)
2006-01-28 07:20 pm UTC (link)
that is very nice!
How hard would it be to create a mapping between lspci output and VIDEO_CARDS?
(This same database could also be used to map from lspci to kernel config options.)

(Reply to this) (Thread)

Re: automating with lspci
[info]spyderous
2006-01-28 09:26 pm UTC (link)
I don't know. Let me know how hard it was when you finish it. =)

(Reply to this) (Parent)

Ebuild
[info]cynyr
2006-01-28 07:52 pm UTC (link)
I looks like that ebuild is in an overlay, is there a possability that it will be available for people to test?

(Reply to this) (Thread)

Re: Ebuild
[info]spyderous
2006-01-28 09:23 pm UTC (link)
I committed it last night.

(Reply to this) (Parent)(Thread)

Re: Ebuild
[info]cynyr
2006-01-30 05:21 am UTC (link)
firstly thanks for all the hard work, modular X certinaly was not an easy task, and yep it's in there now, i must have sync'ed just before you commited it. works great, now if i could just get evdev to work.

(Reply to this) (Parent)


[info]smitty1e
2006-01-29 04:39 am UTC (link)
First, thanks.
I migrated rather st00pidly from the monolitic to the modular X11.
I read your howto about halfway through, and there is no way I'd have recovered my system without it.
Second, is there an architectural overview of the portage system anywhere? I've read the man pages a few times, and I'm a decent user, but I'm curious if there is anything like a spec for portage, or if I should roll my own as a learning tool and offer it up to the Gentoo g0dz for shredding.

(Reply to this) (Thread)


[info]spyderous
2006-01-29 05:30 am UTC (link)
Not that I'm aware of, but probably want to ask on the gentoo-portage-dev list. http://dev.gentoo.org/~g2boojum/portage.html has something based on 2.0.54, and other than that, I'd expect anything to be around http://www.gentoo.org/proj/en/portage/ or available within the portage release itself.

(Reply to this) (Parent)(Thread)


[info]smitty1e
2006-01-29 01:09 pm UTC (link)
thank'ee

(Reply to this) (Parent)

wow...
(Anonymous)
2006-01-29 11:07 pm UTC (link)
That looks great! Thanks for your hard work, I look forward to trying it when it hits ~arch :)
-dsd

(Reply to this)

Wacom
(Anonymous)
2006-01-30 01:10 pm UTC (link)
Hi, great news. I do have a working wacom pad currently. What option would enable that in the modular X11 world?

(Reply to this) (Thread)

Re: Wacom
[info]spyderous
2006-01-30 07:04 pm UTC (link)
INPUT_DEVICES="wacom" -- I probably added it after taking this screenshot.

(Reply to this) (Parent)(Thread)

Re: Wacom
(Anonymous)
2007-03-25 05:37 pm UTC (link)
Hellow Donnie,


now I tries already a week to get my Wacom tablet working.
The devices react. The only thing is the X-windows?
I have no xorg.conf, does that mean that X works
modular? Have you any idea how to get Wacom
working as it has to do?
You can react to:
r.hassel1@chello.nl

best regards,

Rene'

(Reply to this) (Parent)


Create an Account
Forgot your login or password?
Login w/ OpenID
English • Español • Deutsch • Русский…