• We’re currently investigating an issue related to the forum theme and styling that is impacting page layout and visual formatting. The problem has been identified, and we are actively working on a resolution. There is no impact to user data or functionality, this is strictly a front-end display issue. We’ll post an update once the fix has been deployed. Thanks for your patience while we get this sorted.

Anyone here tried the CVS X.org?

Sunner

Elite Member
Since I'm pretty bored, I think I'm gonna try the latest and greatest from X.org, what will (hopefully) soon be X11R6.8, just wanted to know if anyone else has tried it?

Wish me luck anyway 🙂
 
I used it on my previous Gentoo install. I think it was a little more responsive...but for the life of me I couldn't get ATI + OpenGL to work, so now im back to Debian with Xfree4.3 🙂
 
I haven't tried it, but have heard many good things of it. XFree is the old and busted, and Xorg is the new hotness 🙂 😉
I would try it, but am not sure that it would get along with my ati card. haven't heard too many good things of it working with ati cards.
 
Is R6.8 going to the one where they break up the huge, monolithic X source into separate, small servers and packages? From what I've read, that's the big move that a lot of developers are looking forward to because it will allow for much faster and cleaner development. I'd certainly be interested in hearing how that works out if it's available. I've heard the recent work on the old monolithic stuff is mostly just a few bug fixes and minor bureaucratic changes reflecting the new maintainers - basically, nothing that exciting.
 
One of the things that is mentioned in a paper by Keith is talking about how Xlib got completely out of hand. Originally it was just intended to do a few simple things but people kept piling features on features on features and a lot of stuff like the older font stuff was suppose to be a stop gap solution, but eventually everybody used it so X got stuck with it.

I think the direction is to create a very simplistic core with compatability code (kept in a seperate library or extension of something) for older stuff based on Xlib, and then impliment all new functionality thru extensions. At least that's how it seems.

The next release is due out pretty soon so that the various Linux distros can start testing and hacking away on it to get it ready for the next bunch of distro releases.

It's going to introduce the Composite, Damage, and XFixes extensions. Ate least their going to try.. If it seems like they are going to miss the deadline they are going to drop features.

With these new extensions you will be what is needed to get real alpha blending.

It's suppose to be much more flexible solution then what is provided by Windows and OS X's guis.

X windows is already faster then OS X, for instance, but it doesn't seem like it because OS X provides a much smoother interface, and even with the aggressive pre-emptive scedualling introduced with kernel 2.6 smoothness and tearing in X leave a lot to be desired.

As lots of you probably already know, the solution is that Windows are going to be rendered off screen. That's what Damage and Composite is going to be for. X windows will implement a off screen buffer in which it will render all the individual windows, then composite will generate a single image that is presented to you on the screen. It should impove the quality of the smoothness and potential for eye candy much.

Also the way they are planning are doing it will be much more flexible. In OS X, for instance, does the same thing, but in a technically simplier way. It's basicly hard coded into the GUI how all the alpha blending and all that will work, but in X windows it's will have a default method but will offer much more control so that you could do more special effects type stuff.

The downside to all this off screen buffer stuff is that it's going to use gobs of video RAM. I don't know how much, but people with only old fasion 8meg cards I would expect that it would cause some issues. You could probably turn these features off if you want.

Also it should move a lot of the load for rendering stuff off of the CPU and begin taking advantage much more of the video performance offered by modern video cards.

I am looking forward to this stuff very much.

Of course they are working on more then just this stuff, but of course eye candy and improving the perception of performance is very important because the need to provide a marketable product (the guys working on this stuff generally do it for a living).

Other things they are working include trying to figure out a way to setup a effective messaging cue between Windows being rendered off screen for stuff like mouse prompt control, having moving images being rendered properly thru stuff like transparences, trying to work with commercial hardware vendors to create a more universal way to program drivers for X windows (hopefully this would include moving drivers back into userland and out of the kernel so that bad vid drivers aren't going to take out the whole box no more), and bunches of other stuff. Then also looking into implimenting stuff from other projects like Cairo (vector based rendering)

All thru the 1990's developement on X windows stagnated, but it seems like real progress has begun again. Over the next couple years we should see X windows getting completely modern and get cutting edge in software technology and get some real innovation going.

old screenshots with X with real transparencies

here is a bunch of talks and papers by Keith Packard (major X.org developer, previously kicked out of XFree86 😉 ) They go on and on about the various improvements and direction of developement for X Windows.

Interesting stuff.

edit:

Oh and another thing that they are working on, that I like, is the ability for X clients to save their states. That is when you move from display to display you don't have to kill and restart applications. Ever use "screen" terminal multiplexor? It should be like that. So that if you move from computer to computer, and you have X going over the network, then you would be able to do things like move your browser from window to window, or log off and then log back in on a different computer and not loose the paper your currently working on.

Or say your setting up a presentation or a movie for a meeting. So that you get it going and when time comes to play it on the projector or on the big screen you just move it from your laptop onto the big screen and play it. (network transparency is cool).

But it would be a while before they get there.
 
Check in how it works.
{Could you try to move one window over other with long redraw times? e.g. konsole over konqueror with difficult to render page loaded. Should be smooth as silk}
 
Originally posted by: Anubis08
Sorry, newbie, please don't kill me (exagerration), what is X.org?


Well since your a newbie I use the long explaination.

It's a organization dedicated to the developement of their version of the X windows X server.

X Windows is used as the graphical user interface of choice (GUI) of most Unix and Unix-like operating systems (meaning Linux). The one notable execption is OS X, which is Apple's operating systems for it's computers. It's based on a variation BSD Unix combined with a developement of older Unix OS called NextStep. It's GUI is called "Aqua".

X Windows is different from most other popular GUIs that people commonly used. One aspect is that it is kept seperate from the functioning of the operating system. Linux, for example, does not need to have X windows installed on it in order to function properly. Unlike Windows or OS X. Thus you can turn off and on X windows if you know how and you will almost never harm the functioning of the rest of the OS (unless their is a driver bug.). (OS is, of course, operating system. As in Linux or Windows, as in the software that operates the computer)

Now X Windows is very archaic. It is a very early peice of software that has survived for a long long time. It was around running 1024x768 with thousands of colors back when people in IBM personal computer land (x86 refers to this type of computer) were getting all exited about finally moving from 16 colors to 256 on 320x240 to 620x480 displays.

So it's terminology is a bit comfusing.

X Windows, stricly speaking, is a networking protocol. Like http or ftp. But it is very complex. Normally you see it operate completely encased in one computer, so it seems to operate much like the GUI used in Windows or Macs, but it doesn't have to operate like that. It can be ran spread out over many computers over any high-speed network, and even in a limited basis on the internet.

A X Server is what controls the display and other input/output controls (like mice and keyboards). This is couter intuitive in modern day computing terminology because it's often thought that the server is something that is far away, while the client is the computer your operating in. But in X Windows it's oppisite, the X server is something that is close, and the client can be on a different computer (but it is usually on the same computer anyways).

Think of it like your X server "serves" your input to the client, and the client replies with the output.

Now the X client is you GUI applications. Mozilla is a X client for example. And there are X clients other then just applications.

For instance you need what is called a "Window manager" program.

When a X server is started, with no other programs at all, there is very little you can do with it. You can type on the keyboard, and move the cursor around, but you will not have any response, because that's not your X server's job. It's just to handle input and setup and handle output.

The Window manager handles "Windows". These are the boxes that your applications output is a contained in. The Window Manager is what you use when resising Windows, when you move around Windows, and is what you use when you close windows. Without the Window manager you would not be able to move Windows around or change focus from one window to another.

Examples of Window managers are: Enlightenment, Windowmaker, TWM, OpenBox, Fluxbox, Icewm, and many many others.

That plus your applications is what you need to have a basic X Windows-based GUI, but other groups take it one step farther. These guys create Desktop enviroments.

Desktop enviroments are suppose to try to create a complete enviroment in which a user will operate. They not only include a vieriaty or Window managers, but numerious X clients. Such as Word Proccessors, basic "office" games, system utilities, start menus, panels, applets, docks, multimedia applications, editors, X terminals, and dozens of other programs. And they include services, like notification services, print services, clipboards, and stuff like Artsd which is a audio service.

2 Major desktop enviroments for Linux/Unix are Gnome and KDE.

Now X.org is a originization, a consortium. From their "background of X.org" webpage:
On 22nd January 2004, the original members of X.Org and several industry participants announced the formation of The X.Org Foundation.

The X.Org Foundation will assume the role of being the worldwide consortium empowered with the stewardship and collaborative development of the X Window System technology and standards previously managed by X.Org.

The X.Org Foundation is a Delaware registered LLC, seeking to act as a scientific charity under the IRS 501(c)(3) code. Its mission is to maintain and enhance the existing X Window System code base, engineering appropriate enhancements that will be driven by current and future market requirements. The X.Org Foundation will periodically provide official X Window System update releases to the general public free of charge. The X.Org Foundation will govern the evolution of the X11R6 specifications, working with appropriate groups to revise and post updates to the standard as required.

The X.Org web-site will evolve into the home of the X.Org Foundation as the group and its operating procedures are defined.

But what people are refering to as "have you tried out X.org" is X.org's particular version of X Server.

There are several X Servers that are aviable. Most of them are commercial, but the most popular ones are not.

Accelerated-X and XFree86's X Server are two other versions of X servers aviable to Linux users on the X86 platform. (although their are probably others)

Acclerated-X is owned and managed by the XiG company. It is a commercial X Windows server and thus, unlike XFree86, and X.org, costs money and is closed source.

However unlike XFree86 or X.org it has support for lots of hardware that XFree86/X.org that normally doesn't handle. Especially for troublesome laptops, and in a situation were they both support hardware equally well, Xaccl is generally faster. see here for hardware support

(and compatability? I don't know. I like Linux because I like Open source, so I never touched the stuff and don't know anybody that does. Not that it's expensive, cheapest versions are 36 dollars for desktops and 69 dollars for "laptop edition")

XFree86 was created to make a free version of X-accl for the x86 platform (hence Xfree86), but since has been ported to many many different platforms, so is no longer x86-only and hasn't been for a long long time.

Personally I've used XFree86 for a years and have been happy with it.

However in the past couple years or so XFree86 has shown some severe issues as a orginization. Innovation has stagnated, patches go unheaded and most of the head developers are (almost) no longer active in the project, although they retain their possitions. The latest thing they did was to change their liscence into something that was slightly/legally incompatable with the GPL licsence which would of broke the legal status of quite a few different open source products that depended on code from their libraries. This was "the camel that broke the straw's back"... Or something. 😛

So X.org took the last version GPL-compatable code and formed the X.org X Server based on it.

The version of the X.org Server that most people are using today is nearly identical to what XFree86 is currently using. The excitement for the "CVS code" is that soon we will be able to use the first real changes and innovations and first dramitic real improvements in the open source X server for a long time.

(CVS is concurrent versioning system.. it's a service that programmers use to make collaberation over a large orginization easier. Basicly manages all the different versions of the files that the programmers work on and provide means to access the code directly.)

This is all part of a larger movement spear headed by orginizations like Freedesktop.org and many computer industry leaders to create a viable, secure, user friendly, and competative open source alternative to Microsoft Windows for business desktops, and eventually home users. So you see how important the X server is to all of this. It is the program that controls the "feel" of the OS, if it is slow, screwed up, ugly, hard to develop for, or crashes often then that's what people will remember most.
 
Well since your a newbie I use the long explaination.
Oh man, that's the fvcking understatement of the year, that's a whole damn book 😛

And to update on my progress, the snapshot from yesterday didn't like me, so I'm trying today's steaming hot snapshot, doing better(so far).
 
Got it working, and it definitely still has some major issues:

* C+A+Fx doesn't work; I had to use chvt in a terminal to change vt's.
* xcompmgr definitely runs and does its thing, but not correctly: no shadows, and my root window is not refreshed; it just displays whatever garbage was last dragged over it.
 
Here's some help on installing it to somewhere other than /usr. Replace PREFIX with whatever you want to use for a prefix (I used ~/sw/xorg).

cvs -d 😛server:anoncvs@cvs.freedesktop.org:/cvs/xorg login
CVS password: <hit return>
cvs -d 😛server:anoncvs@cvs.freedesktop.org:/cvs/xorg co -P xc

cd xc

Put this in config/cf/host.def:
#define ProjectRoot PREFIX
#define NothingOutsideProjectRoot YES
#define HasFreetype2 YES
#define HasFontconfig YES
(i don't think you need the last two but whatever)

make World
make install

# make the X server suid
sudo chown root:root PREFIX/bin/Xorg
sudo chmod u+s PREFIX/bin/Xorg

cd ..

cvs -d 😛server:anoncvs@cvs.freedesktop.org:/cvs/xapps login
CVS password: <hit return>
cvs -d 😛server:anoncvs@cvs.freedesktop.org:/cvs/xapps co -P xcompmgr

cd xcompmgr
./autogen.sh
./configure --prefix=PREFIX
make install

cd ~

cp /etc/X11/XF86Config-4 PREFIX/etc/X11/xorg.conf
cp /usr/X11R6/lib/modules/drivers/mga_hal_drv.o PREFIX/lib/modules/drivers/ # only if you have a matrox card w/ mga driver

DISPLAY=:1
export DISPLAY
LD_LIBRARY_PATH=PREFIX/lib
export LD_LIBRARY_PATH

PREFIX/bin/X :1 &amp; sleep 5 &amp;&amp; xterm

then your new xorg server should pop up, and you can run PREFIX/bin/xcompmgr in your xterm, and do whatever else you want in there. if C+A+Fx doesn't work, use chvt, i.e. &quot;chvt 7&quot; is the same as C+A+F7. C+A+Backspace worked for me, so you always have that as a last resort.

(btw, a lot of this is from memory, i hope i didn't miss anything)
 
I am trying out the current release canadate, X11r6_7_99_902 got that from here

I did the cvs fetch like this:
$ cvs -d 😛server:anoncvs@cvs.freedesktop.org:/cvs/xorg login
CVS password: <hit return>
$ cvs -d 😛server:anoncvs@cvs.freedesktop.org:/cvs/xorg co -P -rXORG-6_7_99_902 xc


Will see how it goes. Hopefully this version will work out better then what BingBongWongFooey got.
 
Well I got it working and everything seems stable. I didn't mess around with it much though, ran out of time.

here is what I did (ignoring mistakes for post cleanliness).:
I wanted to start off with a clean install of Fedora Core2.
So I burned some more cdroms from some ISO's I had left on my destkop's download folder.
Backed up my user files onto my desktop, formated it and reinstalled Fedora Core2.
Did a custom install. (do a full install if you have the disk space avalable)
(Here I made a mistake, I should of installed the optional X developement libraries, which I didn't think about. I used apt to install them later.)
Everything was detected and setup nicely. Fedora is pretty good on this particular laptop.
After the install I went down to fedora wiki howto and downloaded the apt rpm for Fedora Core2.

To setup apt I did this from a terminal:

su
rpm -i apt-0.5.15cnc6-0.fdr.11.2.i386.rpm
apt-get mirror-select

(then here I selected the proper mirrors)
apt-get update
apt-get dist-upgrade
exit


And that got my system completely up to date.

Then I setup a tmp directory:
mkdir tmp
cd tmp


Then I pulled down the cvs code for the current release canandate:

cvs -d 😛server:anoncvs@cvs.freedesktop.org:/cvs/xorg login
CVS password: <hit return>
$ cvs -d 😛server:anoncvs@cvs.freedesktop.org:/cvs/xorg co -P -rXORG-6_7_99_902 xc

I didn't care about installing over my current X install, so I just left the configs default.
Then I compiled and installed the CVS sources:
cd xc
make World
make install


And that was that (after a couple hours). I shutdown and restarted X from a virtual console.
(hit control-alt-F1, login as root)
telinit 3
Now this would be a good time to edit the /etc/X11/xorg.conf file. I had to add the following lines to my config to enable xcomposite.:
section "Extensions"
option "Composite" "Enable"
endsection
telinit 5

And that started X right up. Ran the first time. (of course it took a while to figure out to enable composite)

Then I went and logged into my desktop again. Openned up a terminal and downloaded the xapps needed to do the transparency stuff.
cd tmp
cvs -d 😛server:anoncvs@cvs.freedesktop.org:/cvs/xapps login

CVS Password: <hit return>
(then I fetched xcompmgr cvs)
cvs -d 😛server:anoncvs@pdx.freedesktop.org:/cvs/xapps co xcompmgr
(then transset)
cvs -d😛server:anoncvs@freedesktop.org:/cvs/xapps co transset
cd xcompmgr
export PKG_CONFIG_PATH=/usr/X11R6/lib/pkgconfig
./autogen.sh
make


Then I started xcompmgr
./xcompmgr &amp;


Then the display should flicker or something. Then I compile transset and turned my terminal to 40% opaque.

cd ../transset
make
./transset .4


Then a my cursor turned into the crosshairs and I clicked on the terminal. Then it became instantly transparent. I could see the background thru it, and the icons too.

I openned up Mozilla and I could see the browser window thru my terminal window. Everything seems cool and stable.

My general impression?

SLOWWWWW on my laptop. My laptop has a crippled video card, though. It's a intel 855gm mobile chipset with the slightly older i830 chipset. I ran glxgears on it before running xcompmgr and it scored 286 fps on glxgears, and 70-80 fps afterwords (my desktop scores 4500 fps in comparision).

Plus it has a shared main memory sceme that is suppose to dynamicly allocate memory as I need it. But that doesn't work, because gateway sucks, and I am stuck with a maximum of 8megs. I am suppose to be able to get up to 128, but gateway had disabled manual manipulation of these settings in it's bios for whatever reason.

With this new xcompisite stuff on that laptop it reminds me of running OS X on a 400mhz powerg4.

But it works, and it does make a difference. Even thow responsiveness is less, all the images of the windows are clean and do not "smear" anymore.

For instance when xcompmgr is off, I will open Mozilla and maximize it. Then I openned up a terminal and clicked on it's title bar and dragged it around (this is with the whole window moving as apposed to just a outline). As long as I continued to quickly drag the window around it would leave trails of itself all over the Mozilla window, then when I stopped the Mozilla window would be alright again.

With xcompmgr on, I would do the same, although now the terminal Window now lagged behind the mouse slightly, and all the windows involved still looked sharp and correct, the trails were gone completely.

It was a little jerky, but much less then without the xcompmgr on.

I think that if I had a decent video card then the lag would be almost non-existant and everything would be much much smoother then before.

When I get back home I'll have to mess around with the DRI drivers a bit and see if I can speed things up. Also see how video playback looks thru transparencies and stuff like that.

Would be nice to run a movie fullscreen and use it for the background of full screen xterms.
 
drag, did you get dropshadows?

And I think it's just slow in general. On my p4 2.8, with a (well supported) matrox g400, it was still pretty damn slow. Just focusing a window has some delay.

mplayer worked with transparency if I set the driver to x11, but when you start playing with transparency, it gets pretty slow.
 
No nope dropped shadows that I can remember. I may be a option with xcompmgr. I am sure there is a way to do it.

And with x11 in mplayer, that's always been slow. I can do full screen with the xv drivers and it barely moves the cpu. (maybe try the sdl or opengl (double buffer?) drivers? I'll have to play around with it when I get back home in a couple hours...)

I just skimmed it. He keeps mentioning kernels (second or third page), and that scares me.


Ya I noticed the kernel mention. I don't like that, but I think that he means that they are moving towards working more closely with the kernel guys in order to utilize the hardware acceleration aviable with modern video cards. I don't think that we will end up with a "X Windows option"

Although personally I think that they should move the drivers out of the kernel as much as possible.

The goal, I beleive, is to move to a pure OpenGL implimentation. Right now for any one card you need to develope 2 different versions of drivers for any one application. You need to have one for 2d and then you need to have one for 3d.

X windows is pure 2d right now, and the only way you get OpenGL is by having applications interact with the 3d-ness of the video card and then display that in the window in a 2d enviroment. With everything in OpenGL applications will get the benifit of having accelerated hardware easily and you only have to write OpenGL drivers for each video card.

Like for example my video card on my laptop is a i830. I have a 810 driver for X Windows and a 830 driver from DRI. Or something like that.

That's what he could of ment by mentioning kernels. They want to restructure stuff to make it easier to make good drivers.
 
Originally posted by: drag
No nope dropped shadows that I can remember. I may be a option with xcompmgr. I am sure there is a way to do it.

And with x11 in mplayer, that's always been slow. I can do full screen with the xv drivers and it barely moves the cpu.

I just skimmed it. He keeps mentioning kernels (second or third page), and that scares me.


Ya I noticed the kernel mention. I don't like that, but I think that he means that they are moving towards working more closely with the kernel guys in order to utilize the hardware acceleration aviable with modern video cards. I don't think that we will end up with a "X Windows option"

Although personally I think that they should move the drivers out of the kernel as much as possible.

The goal, I beleive, is to move to a pure OpenGL implimentation. Right now for any one card you need to develope 2 different versions of drivers for any one application. You need to have one for 2d and then you need to have one for 3d.

X windows is pure 2d right now, and the only way you get OpenGL is by having applications interact with the 3d-ness of the video card and then display that in the window in a 2d enviroment. With everything in OpenGL applications will get the benifit of having accelerated hardware easily and you only have to write OpenGL drivers for each video card.

Like for example my video card on my laptop is a i830. I have a 810 driver for X Windows and a 830 driver from DRI. Or something like that.

That's what he could of ment by mentioning kernels. They want to restructure stuff to make it easier to make good drivers.

Maybe, I'll have to actually read the article I linked ( :Q ). Putting anything in the kernel is only going to complicate things. Unless they're only developping for Linux...
 
Originally posted by: n0cmonkey
Originally posted by: drag
No nope dropped shadows that I can remember. I may be a option with xcompmgr. I am sure there is a way to do it.

And with x11 in mplayer, that's always been slow. I can do full screen with the xv drivers and it barely moves the cpu.

I just skimmed it. He keeps mentioning kernels (second or third page), and that scares me.


Ya I noticed the kernel mention. I don't like that, but I think that he means that they are moving towards working more closely with the kernel guys in order to utilize the hardware acceleration aviable with modern video cards. I don't think that we will end up with a "X Windows option"

Although personally I think that they should move the drivers out of the kernel as much as possible.

The goal, I beleive, is to move to a pure OpenGL implimentation. Right now for any one card you need to develope 2 different versions of drivers for any one application. You need to have one for 2d and then you need to have one for 3d.

X windows is pure 2d right now, and the only way you get OpenGL is by having applications interact with the 3d-ness of the video card and then display that in the window in a 2d enviroment. With everything in OpenGL applications will get the benifit of having accelerated hardware easily and you only have to write OpenGL drivers for each video card.

Like for example my video card on my laptop is a i830. I have a 810 driver for X Windows and a 830 driver from DRI. Or something like that.

That's what he could of ment by mentioning kernels. They want to restructure stuff to make it easier to make good drivers.

Maybe, I'll have to actually read the article I linked ( :Q ). Putting anything in the kernel is only going to complicate things. Unless they're only developping for Linux...

It wouldnt' be in the article. Check out keith packard's home page he has a bunch of papers heading in that direction. He has outlines in a few places the reasoning and thinking behind the changes they are making.

And yes they are mostly Linux, but in about every peice of documentation/webpage they realy realy want to commucate with everybody. Window manager authors, game makers, application makers. All sorts of developers. They need good ideas and they are planning on restructuring everything... So if OpenBSD has some biggy security concerns, the sooner the better...

The guy in the article says they are aiming for a time-based release scedual. Something to go along with Fedora maybe. And that would mean a new release every six months.
 
I like the time based part, feature based release plans tend to not work out, which only leads to frustration IMO.
 
Back
Top