Xr Renamed to Cairo 216
Charles Goodwin writes "Xr, the vector graphics extension for XFree86 that Keith Packard, Carl Worth, and a few others have been hard at work on, has been renamed and is now officially called Cairo. Keith and Carl recently gave a detailed presentation on Cairo (then known as Xr) which should be a useful read for those wishing to understand it a little better. There is already a useful Gtk+ rendering backend that uses Cairo, as well as an SVG test suite. This, along with Gnome2's subtle adoption of SVG and the inception of Xouvert (which now has goals for both the short term and long term, and an initial plan which includes coexisting with XFree86), spells a bright future for the eye candy of an X desktop."
Well now, that's just great. (Score:2, Insightful)
Re:Well now, that's just great. (Score:5, Insightful)
I know it's nice for the "see what is possible" factor, but pseudo-transparency has it's place. I might even opt for it at times if I had the choice.
Re:Well now, that's just great. (Score:4, Insightful)
Re:Well now, that's just great. (Score:2)
Re:Well now, that's just great. (Score:4, Funny)
Importing alpha-blending from Cairo is WAY to expensive. Just try getting it through customs!
KDE3? (Score:5, Informative)
The big issue with an alpha layer is that someone has to have the authority to impliment such a change in the X11 protocol, it can't be done as an extension. Anyone who uses the fucked up protocol won't be able to display their app on a different X server. This breaks compatibility with thin clients.
What I want is complete revamping of the X protocol with backward compatibility maintained (permanently), such that new apps can take advantage of new server-side widgets without breaking compatibility. Wouldn't it be sweet if GTK+ apps could run as well over a 256kb/s line as XAW apps do?
Re:KDE3? (Score:2)
Re:KDE3? (Score:5, Informative)
Re:KDE3? (Score:3, Interesting)
Here is what I think the Linux GUI needs. (Score:5, Interesting)
I think the whole friggin GUI should be vectors. The Icons should be vectors, and these vectors should be manipulated in realtime via the video card/hardware.
Forget software rendering, we need hardware rendered GUI, using SVG for the interface and icons.
We also need to somehow maybe via OpenGL or some technique, to get the special effects of the video card applied to the GUI.
Then someone can write KDE4 or whatever, and the eyecandy/special effects should be plugins, a person should be able to code an effect via a scripting or programming language, someone should be able to download say, the motion blur or sparkle plugin, and then I click it and suddenly my menus motion blur or sparkle with fairy dust when I move them.
You could break the effects up into groups.
Scaling effects
Trails for cursor
Trails for menu
Icon effects/animations
etc, and when this is done, then people can write themes easily etc and we can innovate.
The key should be a system that allows a newbie who isnt a coding genius to actually manipulate a video card either via scripting, or some high level interface.
What I want is complete revamping of the X protocol with backward compatibility maintained (permanently), such that new apps can take advantage of new server-side widgets without breaking compatibility. Wouldn't it be sweet if GTK+ apps could run as well over a 256kb/s line as XAW apps do?
I dont care so much about backward compatibility and I dont think most desktop users do. Servers sure as hell wont be running this. But if back compatbility is so important that can be handled to.
QT3 has translucent menu items and such. I haven't checked to see if they cheat by reading from the screen, or if they have implimented an alpha layer.
Fake translucency is not what people want, we want alpha channeling. This will only happen when the whole interface changes from pixel based to SVG based and then an OpenGL backend to access the video cards.
I think Evas has the right idea here, now its just time to have X catch up to it.
Re:Here is what I think the Linux GUI needs. (Score:2)
Years ago, I had a vector based GUI. Now, however, that old NeXTSTEP box is just too old and obsolete. It was nice, though, having the whole GUI use PostScript. Now, I don't really care if you want to use PostScript, SVG, or whatever. It would be nice if both were supported somehow, but this should be in some layer of abstraction. Make the basic protocol elegant and extensible---you'll be living
Re:Here is what I think the Linux GUI needs. (Score:2)
Re:Here is what I think the Linux GUI needs. (Score:2)
no, servers won't be running it (Score:2)
Re:Here is what I think the Linux GUI needs. (Score:2)
Re:WTF? (Score:3, Informative)
great (Score:4, Funny)
yesterday. (Score:2)
Cairo? Bill Gates will be contacting them. (Score:4, Funny)
Re:Cairo? Bill Gates will be contacting them. (Score:2)
I doubt it. Isn't NT about to be End-of-Lifed soon anyway?
Re:Cairo? Bill Gates will be contacting them. (Score:3, Informative)
Cairo was never the codename for NT anyway, it was the codename for the Object Oriented File System microsoft was working on that was going to go into Win2k.
Re:Cairo? Bill Gates will be contacting them. (Score:2)
Re:Cairo? Bill Gates will be contacting them. (Score:2)
Re:Cairo? Bill Gates will be contacting them. (Score:2)
Re:Cairo? Bill Gates will be contacting them. (Score:2)
Then we'll have to rename it to Butthead Astronomer, then.
Re:Cairo? Bill Gates will be contacting them. (Score:2)
You're thinking of Windows 95. NT's code name was, get ready for it, NT. It never escaped its codename except for adding a "Windows" in front of it when they added the Win32 layer.
Re:Cairo? Bill Gates will be contacting them. (Score:2)
This might even turn out better than expected (Score:5, Informative)
They even plan to contact Freedesktop.org.
Re:This might even turn out better than expected (Score:2)
Bagh, Freedesktop.org came to existence because the XFree team was unwilling to develop any new standards in the first place.
Now, roughly the same people who participate in the Freedesktop efforts are taking over the flag of free X server development as well. For me, it's definitely a turn to the better.
This is OLD OLD news (Score:2)
Why are we posting this when this happened like a month ago?
Anyway where can I donate money to Cairo development?I mean I dont have A PHD in software engineering and cannot help with the actual development, so how about accepting donations people?
Not eye candy!!! (Score:5, Interesting)
This is essentially untrue. Accepting vector graphics as the default in computers may alter our perception of what is eye candy completely. As far as I'm concerned the Fresco/Berlin project was the right way already several years ago. Today, the hardware has caught up and there is nothing to be lost in user space with vector graphics everywhere.
In fact, we have no idea what kind of possibilities may open up here. If we're unlucky, yes, it might be a can of worms...
Re:Not eye candy!!! (Score:5, Informative)
X11 doesn't support "vector graphics" any more or less than it used to. What has changed is that X11 now has an imaging model similar to PostScript (subpixel addressing, antialiasing, etc.) in addition to its older bitblit model (pixel-accurate, using boolean operations for drawing).
(Subpixel addressing also allows you to do zoomable or "resolution independent" graphics, while the bitblit model is resolution dependent. However, the term "resolution independent" is somewhat of a misnomer--even if your imaging model supports arbitrary zooming, you can't just zoom user interfaces up and down and expect them to be usable.)
When people talk about "vector graphics" in the context of window systems, that usually means the use of display lists: you give the server a list of "objects" to display (lines, triangles, rectangles, etc.), and the server takes care of displaying them when needed. But they might mean something else as well.
Display lists in X11 are still handled the way it has always been handled: by client-side libraries. Eventually, there may be a server-side extension for handling display lists and perhaps even the ability to transfer display lists and structured graphics in the form of SVG data. That would give you Quartz-like redrawing and rescaling, although while that looks nice it has few real advantages.
Now, what about Berlin vs. X11? First of all, one big thing in Berlin is the incorporation of GUI components into the server. That is an anathema to X11 designers. Also, while resolution-independent graphics is nice (the same thing X11 now supports with Cairo), it is a poor choice as the only graphics model: well-designed application for low-resolution and/or low-depth screens (e.g., a 160x160 Palm) must be able to draw with pixel-accurate drawing operations and precisely predictable results on every bit on the screen.
I don't think Berlin "got it right". Berlin concentrated on the obvious, convenient, clean, high-level stuff. Berlin would give you slick-looking OS X-like desktops if it ever caught on, but the Berlin designers have neglected the other imaging models that are really important to real window systems, and they have put way too much policy into the server.
Fortunately, the way X11 is evolving, we won't have to make a choice: you can have all the slick antialiased, structured graphics you like, and yet still have pixel-accurate drawing in a bounded memory X11 implementation. The only difference will be that X11 still won't enforce policy on the server side, and that's a good thing as far as I am concerned. But the market will decide that issue.
In fact, we have no idea what kind of possibilities may open up here. If we're unlucky, yes, it might be a can of worms...
There is no "can of worms". We have had window systems with antialiased drawing, structured graphics, and all that at least since the 1980s; maybe you remember NeXT and NeWS. The feature is nice, but it doesn't radically change what people do with GUIs.
Re:Not eye candy!!! (Score:2)
Replace all the X11 references with XFree86 and the parent was a very informative post!
Re:Not eye candy!!! (Score:2)
I view the Render extension as part of the X11 protocol family now, and Cairo as a portable client-library for it. So, in that sense, I do view this as a part of X11 now, not just some XFree86-specific hack. I believe some commercial vendors of X11 server implementations have already been tracking Render. I would hope that HP, Sun, and IBM will start supporting Render quickly.
Re:Not eye candy!!! (Score:2)
Then why does everyone else have it but Linux?
Re:Not eye candy!!! (Score:2)
And did the Windows or MacOS GUIs get significant functional changes as a result? Not really: it's still the same old menus, the same old dialog boxes, the same old title bars, etc. They just look a little prettier, and transparency and fading give people some slight additional visual cues. Nice, but not exactly a revolution.
Re:Not eye candy!!! (Score:2)
- it offers possibilities to take advantage of and adapt to the available hardware. (server knows if the screen is only a 4" PDA screen, or a 30" 3D display - the application shouldn't have to know these things)
- it should be the user (where the server is) who decides on policy, not the application
- it's bandwith friendly if you'
Re:Not eye candy!!! (Score:3, Insightful)
But the application has to know--scaling applications down to a PDA screen requires some hard choices to be made in terms of what is displayed. Merely scaling down the display won't help, and the server simply doesn't know enough about the application to do it automatically
- it's bandwith friendly
So, when does this turn in to a practical product? (Score:3, Interesting)
Re:So, when does this turn in to a practical produ (Score:2)
Zer-kai-roh. Sounds like an anime title to me.
That sample rasterized penguin looks contented! ;) (Score:2, Interesting)
Great news on the arrival of rasterized graphics output for Xfree86. That should allow for some superb gaming, visual modeling, and graphic apps for Linux.
XrStroke is sure to be a popular command...
maybe that explains the contented look... randy penguin!
If you are lost with these references, you might enjoy "Why a penguin?" and "linux" together as a google search.
Finally, buffering. (Score:5, Insightful)
Re:Finally, buffering. (Score:3, Interesting)
The *really* important thing to do after that is to provide an extension to use the backing store of each window as a pixmap, and as a OpenGL texture.
This will allow a window manager to do nice tricks.
* On a window move, unmap the window, get its backing store as a GL texture, and do all the flippy rolly effects that have got everybody salivating over longhorn and OSX.
* Expose like effects. See if those
Cairo, hmm, that has been a Windows codename (Score:2)
Bad, bad
Who names these things? (Score:5, Interesting)
In all seriousness, I think that poor name choices hurt the adoption of free software. Think about "Photoshop" vs. "The GIMP," or "Internet Explorer" vs. "Mozilla." Rather than something simple, descriptive, and catchy, we usually opt for indecipherable codenames, stupid recursive acronyms, or lame in-jokes that few people but the developers themselves will get.
Poor naming limits the spread of the software meme to those who are already in the know, especially when the names are designed to enforce an only-the-anointed-get-it, us-vs-them mentality.
Cheers,
IT
Re:Who names these things? (Score:2)
Re:Who names these things? (Score:2)
Well, exactly -- it's a cross-platform library not necessarily tied to X at all. That's why the name was changed *away* from "Xr".
Re:Who names these things? (Score:2, Interesting)
Names are all about first impressions, anyway.
Re:Who names these things? (Score:4, Informative)
"P" is the closest thing we have to the greek letter rho, which phonetically is "R." The "P" sound is taken by the greek letter pi.
Since Xr is written by people who speak English, not ancient Greek, it is likely that they're taking the letters from the modern alphabet, not the greek one. Therefore using the letters "Chi Rho" make sense when doing the translation into greek - since such translation is almost always done phonetically.
Re:Who names these things? (Score:2, Insightful)
Re:Who names these things? (Score:4, Insightful)
Oh? So Excel just says "spreadsheet" to you? How about Quark Express? Or Oracle? Or Solaris? These names are only "obvious" because you have heard them before. There is nothing descriptive about them.
Re:Who names these things? (Score:2)
Re:Who names these things? (Score:2)
Re:Who names these things? (Score:2)
Yes, I know my Greek history just fine, as does everybody else who did 8th grade high school. How's things, Josh? Haven't seen you in ages.
Re:Who names these things? (Score:2)
Re:Who names these things? (Score:2)
Generic names like word, office, windows... so unimaginative...
Everything is coming together (Score:4, Interesting)
Over the next few years, desktop graphical environments will move increasingly towards vector graphics and away from bitmaps. The Mac is already there. Windows and Linux are both in the development stage (Longhorn and Cairo respectively) and it will be interesting to see who gets there first. Desktops will finally scale properly to different sized monitors and there will be no excuse for apps that do not scale properly.
Once every operating system supports vectors natively, SVG will become a no-brainer. Why would we use vectors for everything on the desktop and then dumb it down to bitmaps for transmission over comparitively thin network pipes to devices of arbitrary size and shape? It would make no sense whatsoever. So SVG will replace a huge number of the GIFs and PNGs on the Web, to say nothing of Flash files.
A wonderful side effect of this will be that people will finally be able to have richly rendered text on the Web without resorting to binary formats like GIF and Flash. Imagine being able to cut and paste text even when it is embedded in highly stylized corporate graphics (as is becoming more and more common!).
There are really so many follow-on effects that we could have a long thread discussing them. Congratulations to the Cairo and X teams for taking a few more steps down the path!
X r == "Cairo" (Score:5, Informative)
X == Chi
r == Rho
Okay
Re:X r == "Cairo" (Score:2)
XP
Goody.
When Bill Gates Said... (Score:2)
All I know is I want.. (Score:3, Interesting)
For anyone who has not used an SGI machine before, windows often have one or two widgets (if two then one would be oriented on the horizontal axis, the other on the vertical) which resemble long, thin, ridged wheels. When you click and drage so as to rotate the wheel showing in a file manager window the file icons will all resize automatically in realtime and smoothly, since it is all drawn in vectors. To me this would make a graphic desktop in linux a lot more useable.
That, and the way you can use a mouse and three buttons in OpenInventor windows to navigate/manipulate in three dimensions are a couple of the best things about SGI user interfaces to my mind.
A picture of an IRIX desktop with an icon resizing wheel is here [nekochan.net]
Re:Who the hell cares? (Score:2)
Re:eye candy? (Score:2, Interesting)
We can do better than the mac implementation. (Score:2)
We can, should and MUST do better than MacOSX. We must also do better than Microsoft. If we are to compete with these rich billion dollar companies, Linux must simply be better. A person should be able to SEE that Linux is better and not just a clone.
How about some innovation?
Re:We can do better than the mac implementation. (Score:2)
It sounds better to me, anyway.
But, anyway, it will probably be better simply because it'll be a thin client, and the others aren't.
Re:We can do better than the mac implementation. (Score:2)
Desktop users dont want that. Thats what a company wants. Companies buy what is cheapest and most thin,
Desktop users buy whatever looks best.
Re:We can do better than the mac implementation. (Score:2)
I imagine other people might if they saw it as a possibility. It's not at the moment. Most people didn't think about having PDAs before they were actually useful for something.
I am a desktop user. Hence, there is at least one desktop user who prefers "with thin client" to "without thin client" because I see the potential.
You have no need to upgrade. (Score:4, Interesting)
Cairo is not for you! someone like you should use the old version of Xfree86 because you dont like cutting edge, you dont like polish, you dont need eye candy.
But please do not hold the rest of us back because you dont want progress.There's the commandline and original Xfree86 for people like you, we also need to attract desktop users, and this requires eyecandy.
They will not switch from Windows if Windows is better.
Re:You have no need to upgrade. (Score:2)
Replace 'is' with 'looks'. Everyone will be happier.
Re:eye candy? (Score:2, Interesting)
One of the parts in the article mentions a user-specified error tolerance to control quality vs performance. I'd be curious to see how this performs in the real world.
There's already a gnome theme by the name of scalable gorilla [ximian.com] that uses vector graphics. It runs a little slow on slow CPUs, but it looks fantastic and it's easily configurable. With a bitmap icon, I have to recreate the graphics file, with the Scalable Gorilla theme, I change text in a XML file. Another thing to keep in mind is the si
Its not done right, but its a start (Score:2)
Gorilla is a start. I think however there should be no more bitmap / pixel based interfaces. This is 2003 and Linux should just go 100 percent SVG. People who want to use pixels can use their 486.
Linux needs to prepare to take on Windows on the Desktop, this is going to require that Linux is cutting edge.
Isn't this a disk space vs CPU tradeoff?
Most people have more free CPU power than diskspace. Most people have 2ghz cpus, and super powered Gforce video cards which just dont get used at all except for
Re:Its not done right, but its a start (Score:3, Insightful)
Linux should have nothing to do with either bitmaps or SVG. You mean that XFree86 should be 100% SVG. (Which I think is a stupid idea, by the way. Breaking backwards compatibility for the sake of "market domination" is something that Microsoft would do, not engineers who actually care about the technical side of things.)
Re:Its not done right, but its a start (Score:2)
If you want backward compatibility why not use the old version? People like you would tell KDE not to upgrade to QT4 because it breaks backward compatiblity.
Ok Fossil, have fun running AfterStep, Fluxbox or any of the others on the old version of Xfree. Let those who want to progress have progress, stop holding the Linux community back with your nonsense!
is something that Microsoft would do, not engineers who actually care about the technical side of things.
Why is backward compatibility so important t
Re:Its not done right, but its a start (Score:3, Interesting)
Why is ba
Re:Its not done right, but its a start (Score:2)
>>>>>>>>>
Careful, that's the same logic that got us the current anti-aliasing fiasco! To this day, I can't use most non-Qt or GTK+ apps because non-AA text is almost unreadable on my LCD.
Re:Its not done right, but its a start (Score:2)
Re:Its not done right, but its a start (Score:2)
Consider this: what if the XFree guys had just decided to add AA automagically to the X text functions? Some apps that used X in an unusual way would break and need to be fixed. On the other hand, the way it is now, some apps are still broken (they don't do AA text) but there is far less of an impetus to fix them (they still kinda work). Plus, on top of all that, we had to deal with that tra
Re:Its not done right, but its a start (Score:2)
Unfortunately, the "just" is no small thing. The text rendering in X was not designed for that (unfortunately, but it's about twenty years too late now), and making it work would be somewhere between "horrible kludge" and "impossible." (I don't know exactly where it would fall; I've never looked at the XFree code and haven't done a whole lot of X programming.) Nothing they do can change the fact that old apps aren't
Re:Its not done right, but its a start (Score:2)
I care about Linux, not Xfree. Perhaps its time that Xfree gets a (Linux)fork.
Xfree is like Mozilla, because of all these people trying to make it compatible with every OS and make it run the oldest software, it cannot compete with anything released in the last 5 years.
Re:Its not done right, but its a start (Score:2)
If you want to ignore the benefits of collaberation and portability, buy yourself a copy of Windows. That's what you really want.
Re:Its not done right, but its a start (Score:2)
Don't you think I know the difference between the Linux kernel and the Linux OS? If the best arguement you can come up with is to redefine the definition of Linux, I suppose you conceed and I officially win.
If you want to ignore the benefits of collaberation and portability, buy yourself a copy of Windows. That's what you really want.
I dont use Linux for portability, I could care less if
Re:eye candy? (Score:3, Interesting)
Is having X over low bandwidth eye candy?
Re:eye candy? (Score:2)
Have you ever heard of NX? It's not vector based yet beats the shit out of vector based protocols.
Re:eye candy? (Score:2)
Of course, if you control both sides, it's nice.
It needs to be standardized to be useful. But anyway, it'll work even better with vector-based additions.
Re:eye candy? (Score:2)
It's not really that awesome without that.
Re:eye candy? (Score:3, Insightful)
Re:Then you want Windows Millennium. (Score:2)
Re:Windows NT 4.0 (Score:2)
Re:Windows NT 4.0 (Score:2)
Re:Windows NT 4.0 (Score:3, Interesting)
Actually, it was Windows XP which was code-named Cairo. X and P refer to Greek Letters Chi and Rho. Possibly Xr changed to Cairo using the same logic. Just a guess, though.
Re:Windows NT 4.0 (Score:2)
The official code-name for Windows XP was Whistler. However, it is safe to say that the name XP is an intended pun referring to the early 90s project Cairo. The actual Cairo project was only hyped and never came to light. Apparently, Windows XP had all the features that were promised in Cairo.
Re:Windows NT 4.0 (Score:2)
See the following link. Cairo is listed as "Originally Windows NT 4.0, later a designation of technologies, which were planned partly for NT 4 and/or NT 5. Cancelled.
Bink.nu: Microsoft Codenames [bink.nu]
Re:Windows NT 4.0 (Score:2, Interesting)
Windows NT 4
A version of Microsoft's Windows NT operating system, originally code named "Cairo". It was supposed to ship in the first half of 1995. Details are scarce, but it is intended to provide an object-oriented version of Windows.
(1996-07-09)
Re:Windows NT 4.0 (Score:2)
Re:Windows NT 4.0 (Score:2)
Sorry, is it just me, or did I read that as "object breaker"?
Re:Dumb name of the month (Score:2)
disclaimr: I'm biased. [slashdot.org]
Re:Watch out for the WTO! (Score:2)
Re:things slowly moving on, but still it's a monol (Score:2)
If you bothered to read the mailing lists, or even the three links to roadmap/goals in the article, you'd recognise that it's not that simple.
Yes, Xouvert intends to be a development branch of XFree. No, Xouvert does not intend to be shackled by a slow adoption of new features in XFree. If XFree fails to move with the times, Xouvert will be a drop-in replacement for (and indeed coexist with) XFree.
In fact, the goal/roadmap links suggest massive architectural changes in
Re:Not really a rename, is it? (Score:4, Funny)
Makes you wonder what that "XP" in Windows XP and Athlong XP really stands for. A plot by the religious right to infiltrate Microsoft? Hmmm...
What DOES (Windows) XP stand for? (Score:2)
Well, I'm not a bible college professor (But my brother is, and my sister-in-law is Academic Dean [stbi.edu]) but I can read the Bible just fine. Since XP is the symbol for 'Christ' . . .