XFree86 4.3.0 Released
Dunkalis writes "The latest version of XFree86, 4.3.0, has been released! Release notes here, mirrors here. Enhancements include drivers for newer Radeons, better PS/2 protocol detection, the XRandR extension, better font support, and more!" Source tarballs are available, or wait for your distribution to package them...
Previous: Introduction to the 4.x Release Series
Next: Drivers 2. Summary of new features in 4.3.0. 2.1. Video Driver Enhancements
- ATI Radeon 9x00 2D support added, and 3D support added for the
Radeon 8500, 9000, 9100, and M9. The 3D support for the Radeon
now includes hardware TCL.
- Support added to the i810 driver for Intel 845G, 852GM, 855GM
and 865G integrated graphics chipsets, including 2D, 3D (DRI)
and XVideo. Support for the 830M has been improved, and XVideo
support added.
- National Semiconductor SC1x00, GX1, and GX2 chipset support added
with the "nsc" driver.
- Support added for the NVIDIA nForce2 integrated graphics, GeForce 4,
and GeForce FX.
- Major SiS driver updates for some of the latest chipsets. Unfortunately
the SiS 3D driver has had to be disabled because no one has yet
taken up the challenge to port it to Mesa 4.x.
- The s3virge driver now has support for double scan modes on the DX
(with XVideo disabled).
- Updates to the savage driver, including fixing problems with the
TwisterK, and problems with incorrect memory size detection.
- 2D acceleration added for the Trident CyberBladeXP/Ai1 chipsets.
- Support for big endian architectures has been added to the C&T
driver.
- Various updates and bug fixes have been made to most other drivers.
2.2. Input Driver Enhancements- The mouse driver now has automatic protocol detection for PS/2 mice.
- Several new input drivers have been added, including tek4957,
jamstudio (js_x), fpit, palmax, and ur98 (Linux only).
2.3. X Server and Extension Updates- Support for the RandR extension has been partially integrated
into the XFree86 server, providing support for resizing the root
window at run-time.
- The Mesa version used for OpenGL 1.3 and DRI
driver support has been updated to 4.0.4.
- The XFree86 server's hot keys (including those for switching
modes and virtual terminals) can now be configured via XKB.
Previously they were hard coded. An X server configuration
option has been added to allow the VT switching hot keys to be
disabled.
2.4. Client and Library Updates- An Xcursor library providing support for alpha blended (ARGB)
and animated cursors. Two Xcursor themes are provided (redglass
and whiteglass), as well as the default "core" theme (the traditional
cursors).
- Xterm updated to patch level 173, including the following bugfixes:
- Modify xterm to invoke luit.
- Add simple session management client capabilities.
- Add a modifyCursorKeys resource to control how the shift- and
similar modifiers are used to make a cursor escape sequence.
- Check if the printerCommand resource string is empty,
and use this to allow the user to disable printer function.
- Sort the options list which is displayed in help- and
syntax-messages at runtime to simplify maintenance.
2.5. I18N and Font Updates- Fix two infinite loops (special cases of mouse hilite tracking,
DECUDK parsing).
- Make repainting of the 256-color example work properly.
- Modify parser tables to improve detection of malformed
control sequences, making xterm behave more like a real
DEC terminal.
- Fix a problem with the blinking cursor which occasionally caused
xterm to pause until a key was pressed.
- Fix improper parsing of multiple items in the ttyModes resource.
and the following improvements:- FreeType2 updated to version 2.1.1.
- The "freetype" X server font backend has undergone a partial rewrite.
The new version is based on FreeType 2, and handles TrueType
(including OpenType/TTF), OpenType/CFF and Type 1 fonts. The old
"type1" backend is now deprecated, and is only used for CIDFonts
by default.
- A new utility called "mkfontscale", which builds fonts.scale files,
has been added.
- The Xft library has undergone a major restructuring, and is now
split into fontconfig (which deals with font discovery and
configuration and is independent from X), and Xft itself (which
uses fontconfig and deals with font rasterisation and rendering.
The format of the Xft font configuration files has changed in
an incompatible manner.
- Support has been added to the Xft library to do rendering with the
core X11 protocol. This allows clients using this library to
render to X servers that don't have support for the RENDER extension.
- There has been a significant reworking of the XKB support to allow
multi-layout configurations. Multi-layout configurations provide
a flexible way of supporting multiple language layouts and switching
between them.
2.6. OS Support UpdatesA more complete list of changes can be found in the CHANGELOG that is part of the XFree86 source tree. It can also be viewed online at our CVSweb server.
I'm going to have to endure ANOTHER 15 hour build of XFree when I go to emerge something innocuous...
I REALLY need to remember emerge -p
Black and grey are both shades of white.
Not true transparency yet (waiting on Keith Packard's tranparency server for 5,0), but cursors can be colored, shadowed, animated, and themed.
A new utility, mkfontscale, is included with this version. This creates fonts.scale files. In the past, in order to install third party TTF fonts (such as MS corefonts), a utility called ttmkfontdir was often needed (except in distros like RedHat that took care in making everything "just work") to build the fonts.scale file. This program depended on Freetype 1.x libraries (which can't always coexist peacefully with freetype2), and was generally a PITA.
Slashdot: Where people pretend to be twice as smart as they really are by behaving like children.
Its about damn time. I mean what are these people just doing this in thier spare time or what? =)
Man, I'll probably spend so much time compiling and configuring this weekend without graphics, I'll ony get to wank to ASCII art on the console....
Hey anyone know if this version of X fixed the mouse problems for Quake 3? I know it's a long shot, but I have not been able to upgrade X in a long time, because everytime I do I can't play quake 3. The mouse simply binds to the upper left hand corner and doesn't move.
Anyone who upgraded see it fixed? Or know of a fix?
XFree86 communicates with the local client over a Unix domain socket or a platform-specific transport (on SVR4 and Xenix, for example). In either case, there's no TCP involved.
It also uses shared memory to transmit images.
There have been some attempts to make XFree86 use a shared memory transport, but at least on Linux, it turned out that it's not worthwile. The kernel's Unix domain implementation turns out to be just as fast as any custom code that XFree86 could implement.
I've got the AIW Radeon working fine under Linux. I used the gatos drivers from gatos.sf.net, which have been ported to the new XFree 4.3 for a while now. Tuning and 3D support both work great, but capture is still an issue for the gatos project. They're working on things though.
"You tried your best and failed miserably. The lesson is...never try. Heh!" -Homer
There is a workaround using XFree86 4.3 and a script I created. When combined the mouse fixes itself when switching machines for a second time. First you have to change the mouse type to auto from imps/2. Another workaround is to use ps/2 as the type, but then you lose your wheel. Then make this file, and make it excutable and setuid.
#!/usr/bin/perl
use strict;
use warnings;
use Time::HiRes qw(sleep);
open(OUT,">/dev/psaux");
print OUT "\xF5";
sleep 0.5;
print OUT "\xF3\xC8\xF3\x64\xF3\x50\xF2";
sleep 0.5;
print OUT "\xF4";
close OUT;
The above requires the Time:HiRes perl module and perl-setuid installed. You can likely remove the Time:HiRes requirement and sleeps, but not sure . Then you bind the script to the scroll lock key. I do this via sawfish, my window manager. But there are probably a dozen different ways to bind it. If you are switching between two Linux boxes both need the script and XFree86. I currently am switching between RedHat 8.0(4.2) and RedHat 8.1 beta3(4.3, phoebe3). The beta works right and the non beta doesn't. 4.2 does hae auto detection, but when I tried it and someone else tried it it said in the logs it couldn't detect the type.
Havoc Penington, the bane of my Linux desktop.
This is excellently timed to the release of Nethack 3.4.1 - now I can play it in all of its black and white glory!
Cyde Weys Musings - Scrutinizing the inscrutable
I am a happy X user.
Since this is a story about X, all of the pre-programmed Slashbots are going to trot out and declare that X is broken, old, badly designed, missing features, whatever.
Meanwhile, the XFree86 team continues, release after release, to pound out great code that addresses all of the shortcomings people tend to cite. Faster direct rendering? Check. Anti-aliased text? Check. Multi-head? Check. Video extensions? Check. 3-D? Check.
Do you see a pattern here? X is versatile. X is extensible. X is the industry standard -- all Unix GUI programs use it.
And as always, X's killer feature is its network transparency. No "desktop-within-a-desktop" nonsense like you have to do on other platforms. Today I had the windows of programs from no less than three different computers running on my desktop. Transparently. Lots of X users do this every day, usually without even thinking about it.
Perhaps someday the tired old "X is obsolete and must be replaced" will finally cease. But today is probably not that day. Let the flames begin. I will ignore them and continue to praise the XFree86 developers for another job well done.
Tired of FB/Google censorship? Visit UNCENSORED!
ftp://ftp.netlabs.org/pub/xfree86/4.3.0/
https://en.wikipedia.org/wiki/Inverted_totalitarianism
Since yesterday? You mean you got a head start yesterday. You'll still be emerging it when Debian Stable gets it. ;)
I never thought the day would come. Watch out, Gnome and KDE, Athena is coming back! Er. Maybe not.
I thought maybe this was a joke... crazy.
Well, so tell us: in what way are Windows or Macintosh OS X supposed to be more efficient? Where are these great gains in efficiency in their architecture supposed to come from? I mean, it can't be the use of IPC or system calls for the application to communicate with a graphics server: Windows and Macintosh have that as well.
In reality, there is no fundamental difference in the client/server window system architecture between OS X and Linux. For NT, there is a difference: large chunks of the windowing code have moved into the kernel ad some point, but you still need system calls to talk to it. Of course, there is nothing to stop anybody from moving X11 into the kernel.
Overall, the idea that network transparency is some sort of special feature that one pays a high price for is nonsense: all major desktop operating systems run in protected mode, and most GUI applications run in a different context from the window system. X11 simply has been designed that way from the ground up, while Windows and Macintosh have evolved there from "direct mode" graphics. Network transparency in X11 is not so much an issue of IPC or how it does graphics--it uses IPC like all desktop windowing systems--but in having well-defined network transparent support for features like window management and configuration information. It's lack of those features in Windows and OS X that means that Windows and OS X are not network transparent.
In practice, XFree86 is a damned efficient window system that, when it has comparable drivers for the graphics cards, beats OS X handily in terms of performance and memory usage, and usually even beats Windows.
You need screen on another computer, use TightVNC.
TightVNC gives you a "screen on another computer". It does not give you network transparent windowing. If you are running a well-designed X11 desktop, you can run applications on any machine, and they will behave as if run locally. You can also move individual windows between machines and displays. Of course, Gnome and KDE both break this behavior, but that's not X11's fault.
MSWindows 98 is snappy, even on quite old hardware. XFree runs like shit. It feels klunky and laggy.
That's a ludicrous claim. X11 worked reasonably well on 1988 hardware already. X11 servers obviously can run like a charm on 1998 hardware, hardware that's more than an order of magnitude faster.
And that's also what one finds in practice: Windows 98 requires much more hardware (memory, CPU power) to run than Linux/XFree86. If you claim were having a problem with Linux/XFree86, either you are making it up, or you had a bad driver, or you misconfigured something.
Alpha blended cursors, but not true transparency?
That's what transparency is. Transparency is normally implemented using alpha blending. An alpha value of 1.0 is a fully opaque surface. An alpha value of 0.0 is a fully transparent surface. This can easily be done on a per-pixel level either by using a separate alpha map or by using a alpha channel on the main image.
Normally a 32-bit, RGBA image is used. This gives you normal 24-bit color, with 8-bits per channel for Red, Green and Blue. The extra space is an 8-bit alpha channel giving you 256 different levels of translucency.
I guess I'm just confused as to how you can have alpha blending, but not "transparency," as they are the same.
Justin Dubs
Since yesterday? You mean you got a head start yesterday. You'll still be emerging it when Debian Stable gets it. ;)
Bah. I emerged rsync at 12:00 today, and then niced an "emerge -u --deep world" shortly after that. On my dell 8200 laptop (1.6ghz), by 4:00 I had a shiney new X, mozilla 1.3_beta, and a whole bunch of other neat stuff.
It's not for someone with a p266 who wants to stay bleeding edge (bad idea anyway), but I see debian users complaing all the time (scroll up) about how it's gonna take forever for this stuff to even get into the unstable branch.
give gentoo a shot, portage rocks
---Usually when there's complaints from a wide amount of people, it's "the people" you trust. Not the few who complain about the complainers. If anything, it has too many features. I believe we insult/harass/jeer at MS for doing the similar thing to Windows/Office. Called something like creeping featurism....... BUT it's different when we're talking about XFree86 cause it's LINUX stuff.
You know having fully featured infrastructure components, which X is, is damn nice when writing applications. Feature creep is bad in a word processor, good in your display system.
X has little to do with Linux. X has been around for a long time.
---Yeah, it IS getting faster...
This goes directly to the network transparency myth. X window systems tend to be a little slower on login because things run in user space. Once things are running however, there is no performance penalty at all. With X you can choose a lot of things that can affect display performance. Seems to me that other display systems don't have this option. Want a blazing fast X system? Choose reasonable window managers. A machine running TWM these days is very fast yet will still do everything needed in a nice clean minimal way.
As a comparison, I have an older SGI IRIX machine running at a blistering 30Mhz. Scrolling text in a window, minimize, raise, lower and resize are all nice and fast. X is clearly not the problem here as it has been proven to be effective for years. That machine was manufactured in 91 and will still display 3D applications in a usable way.
---Yeah right. 3-D on linux/Xfree SUCK ASS. Want compairsons? Go play X game (with port to linux) on windows and then play it on Linux. You get shit for framerates, and dont tell me you're different.
I don't think so. OpenGl based games run just as well if not better than they do under windows. My current 3D machine used to be a windows machine and I ran the game in both environments. latency was a lot lower in the X environment than it was in the win32. Lots of people see this so you can forget your one guy argument. Running programs like Maya or Pro Engineer work very nicely as well. This used to be the case, but is not anymore. So, 3D, check.
------Do you see a pattern here? X is versatile. X is extensible. X is the industry standard -- all Unix GUI programs use it.
---Yeah, and all good games are out for Windows. Windows games are the industry standard. (sound dumb? same way you sound with X)
Yeah this does sound dumb. The X window environment has been setting the bar for display systems for years. Just think, they got it right long before win32 environments were even stable. X is the industry standard in many areas. Games are a niche. An important one, mind you, for the overall consumer market, but this does not make an industry standard all by itself. High end scientific applications, Mechanical CAD, Visualization are just a few of the true industry standard applications that have all ran under X for years. Ask users of any applications in any of these areas what the transition was like when moving to the win32 platform. It took a long time for things to work as well as they did under X. Very few things are really better.
Games? Direct X? These both sound dumb to me if they are to be considered the way of the future. Games will eventually end up on whatever platform has both power and marketshare to sell copies. Linux + X can do games very well right now, but marketshare is smaller. As that changes, you will see the games same as you did for win32.
I think it says something when the best graphics guy around continues to invest in OpenGL. Direct X is a capable, but clearly dead end API. Hardly competitive at all really. Got your killer application running under Direct X, but want to run it on higher end graphics systems? Sorry, win32 only. Maybe the next revision, that they make damn sure you keep paying for, will have what you need. Using OpenGL avoids this problem nicely.
If you want do discuss other aspects of the interface, you might equate OpenGL to X in that they have the same core design ethics. OpenGL has also set the bar in its way for years before Direct X was even a consideration. To get Direct X where it needed to be Microsoft had to thrash and almost kill SGI through their Faherienhit (sometimes spelling sucks --sue me) project.
Finally, if you want to again consider industry standards, consider this:
Every last high end scientific and engineering application that actually matters uses OpenGL for its display engine. Why? Because it is accurate, stable, scaleable and just works well. Microsoft would love for this to change, but creators of these applications know all to well the dead end nature of the Direct X API.
---And you're 1 out of how many??? You need screen on another computer, use TightVNC. Uses a bunch of less bandwidth too.
I will agree with you about the bandwidth issue, though this can be mitigated with ssh and compression. However you totally miss all the points here while showing that you really have no idea why people, who know what X does, use it this way.
X is a big part of why UNIX systems are true multi-user systems and the network transparancy is the key feature making this a reality today.
Any X window user can basically run any application from any machine they want from the machine they are on. Lots of people do this. It is called multi-user computing. Most people not doing this really just don't know it is an option.
This feature has some interesting ramifications when it comes to systems design and implementation. Not having it eliminates many choices that could reduce administration and costs.
Example:
Company uses high-end MCAD product; namely, EDS I-DEAS. This is complex and powerful software with included data managment.
If you are running win32, then you have only one choice. You load that software onto every machine that will ever use it. Outfit every machine that will ever use it with high end CPU, video, disk and RAM. To administer, you must deal with each and every machine all the time. Service packs, driver changes and other things like applications that change core system shared library code hose things up on a regular basis. Heavy users as well as light duty users must possess all necessary resources on their local machine.
Upgrades to software must be deployed locally on each machine. Complex scripting is needed to really get things done in a reasonable manner. Upgrades to hardware get quite expensive over time as each user gets new hardware which means new OS which means new display and drivers along with the reloading and rebooting that comes with that.
Now consider your options when you are running a real multi-user OS and the X Window display system.
You configure one multi-cpu server and remote display on just about any 3D capable PC. Machines can be new or old just as long as they have a good network interface and graphics engine. Almost any recent vintage machine made in the last 3 years or so will perform this task nicely. Because the application is running directly on the server, many data intensive applications that used to bottleneck on the network now run smoothly. Cost per user is low because the OS is multi-user. Properly sized shared resources make for a good computing experience for all the users. For the occasional power user, go ahead and give them local compute if you need to. The choice is yours with X, you don't even get to consider it with anything else.
Now upgrade time. Add CPU or RAM to the server, all users benefit. Want to change software revisions? Great, it will take a fraction of the time because of shared code and configuration data. This leaves plenty of time to deal with those power users computing locally. Users local machine gets hosed up, what do you do? Give them a replacement one with the standard applications loaded and fix theirs as you have time without impacting their workflow at all. Since their critical data is in a shared stable environment, they will hardly notice.
When Open Office gets just a bit better, this will be possible for more mundane applications as well. The savings and advantages are obvious --if you know you have the option.
BTW, Apple is now beginning to ship an Aqua supported X server. Wonder why that is? Could it be because X has some advantages? Maybe they are interested in high-end applications being ported to the Mac. Not sure of the reason, but I am sure they would not do it if X really was as you say...
Schools all across the country are all working on implementations of the Linux Terminal server project. This project depends on X and its features. Administration will be remoted and centralized to save costs and improve response time.
At home here, I run win32, Linux and SGI irix. Each of the machines have applications I am interested in running. All the UNIX applications are avaliable on every machine with just two clicks and can be used by anyone at any time. My wife is currently watching a DVD as I type this. That same machine is providing Evolution e-mail to the win32 machine via X at the same time. Why bother running more than one mail client. With X, I can choose any client I want and use it anywhere I want.
It is easier than you think and very well worth it.
Finally, Tight VNC is pretty cool for what it is, but it is not multi-user. Sure, it will save you a trip to a machine, but will not allow any sort of multi-user action of any kind. Limited and totally non-competitive compared to X.
Network transparancy is *huge* and most of the industry is blind to it because Microsoft and Apple do not provide it. Their loss really.
---How about modularizing the obsolete crap (like the XT module in the linux kernel) or pulling the garbage out altogether? MSWindows 98 is snappy, even on quite old hardware. Now take that nice dual cpu motherboard and slap linux on that with a well-supported XFree video card. XFree runs like shit. It feels klunky and laggy. And no, I'm not using KDE to use as a test. I'm using TWM. The smallest gui manager out there.
I will give you points here. A lot of OSS software has been gaining in functionality in trade for speed. I wrote an article about this a while back titled "Where Is the New Linux Experience?" When I wrote that, I had the same experience you did.
Things are changing now. The feature growth is needed to capture users interest and get things done. Truth is, hardware fast enough to run most things is very cheap now so this is becoming less of a problem. Development is now starting to address speed issues and it is showing results. Compare KDE 3 to KDE 2 and you will notice the difference.
Given the cost savings of OSS over software you pay for, and you do pay for all that win32 or Mac software don't you? The price of a newer machine is easily justified.
The parent post is dead on. Every time X gets mentioned, people like you, who really have little grasp of the bigger picture, bitch and moan about how X doesn't do exactly what their older and inferior system does.
Get over it, X kicks ass and the rest just don't.
Blogging because I can...