Making Mac OS X Work Like X Windows?
X Fiend asks: "Is it possible to configure Mac OS X's window manager to run in a client-server mode like X Windows? I'd like to use my (rather anemic) iBook as an X Terminal, with apps running on my (manly dual-processor) desktop machine, but I don't want to have to use X Windows to do it- I want to use Mac OS X's native window manager. Any ideas?"
The closest thing I've seen to that is OroboroX which makes things look nativish. Or you can use Tenon X tools Click Here which apparently is built using Carbon/Quartz
The closest you'll get to this is using software like VNC, Apple Remote Desktop, or Timbuktu to display the desktop's screen on your laptop.
I hold it, that a little rebellion, now and then, is a good thing. -- Thomas Jefferson
http://www.apple.com/remotedesktop/faq.html
/. articles, *EVER*.
...
This is one of the most useless
Go to www.apple.com. Hit the Search field. Type in "Apple Remote Desktop".
'nuff said.
Dude, its not karma-whoring
; -- the corruption of government starts with its secrets. a truly free people keep no secrets. --
In theory, all IPC is done through Mach messages, whether the underlying transport is TCP/IP or shared memory.
In theory, you can intercept messages between two ports and run them through arbitrary filters.
Since the window server process is nothing but another port to Mach, you *should* be able to catch everything going to it, send it over the network and have it appear on another Window Server on another machine.
In practice there would be a lot of details to take care of like configuration and non-display. But the nature of Mach is that any IPC can be generalized to take place over any kind of network connection.
That's completely uninformative.
Apple Remote Desktop is a VNC or Timbuktu-like program, which pushes the (compressed) bitmap of a desktop to the client machine. While it can work for the situation the questioner asked about, it
(a) is not a truely native solution, in which the API calls are transmitted rather than the bitmap of the screen, and
(b) is geared towards education, where it can be used by a teacher to show a demonstration on a set of student computers.
It also costs $300.
NeXT's Display Postscript had the ability to run remotely, like X, but those hooks were abandoned when Apple converted the display model to Quartz/Display PDF.
four nine eighteen twenty-7 thirty-nine forty-7 fiftyeight sixty-nine seventy-9 eighty-8 one-hundred-and-nine one-twenty
That, of course, is the real answer. It is also no fun
/., really.
The fun comes in watching every karma-whore wax technical about different characteristics of the underlying technology that make it easy / difficult to implement feature X on system Y, while missing the original point entirely. Just part of the fun of reading
___
Cogito cogito, ergo cogito sum.
Point a) You sure about that?
Point b) Makes no sense whatsoever, at all.
Shee-it.
; -- the corruption of government starts with its secrets. a truly free people keep no secrets. --
Sorry I was aggressive in my post. But your aggression to the asker of the question rankled me. The submitter has a point.
As for my points:
(a) Yes. Apple Remote Desktop is a bitmap-pusher, like VNC or Timbuktu. It does *not* hook into Quartz in the same manner that remote X hooks into X, or that RDP hooks into Window's GDI.
(b) Read about the product. It's not a protocol for sharing apps across different computers, although it could work that way. As I (admittedly awkwardly) said, it emphasizes a scenario in which a teacher has a program running on his or her computer, and that teacher's screen is "pushed" onto a bunch of student computers, so they can watch the teacher's demo.
And I'll elevate the price issue to
(c) it costs $300.
So while the poster may appreciate your link, Apple Remote Desktop is not a direct answer to his question, any more than a link to VNC or Timbuktu would be.
There remains a real issue here of the non-remoteness of the Quartz APIs, an issue that Apple really should try to deal with. Many, many people want them to re-implement this, after it was lost from NeXT.
(By the way, if you have an old copy of OS X Server 1.2 around, you CAN do remote display on that platform, since it still used Display Postscript instead of Aqua)
four nine eighteen twenty-7 thirty-nine forty-7 fiftyeight sixty-nine seventy-9 eighty-8 one-hundred-and-nine one-twenty
Point b) is also very valid because it details what the intended purpose of different technologies is. Whereas X allows you to load JUST an application, such as eterm, on the remote machine, ARD forces the entire server screen buffer to be loaded...in its own window (blech!). X also lets you log into the server as any user and run programs, regardless of which user is currently logged into the GUI. ARD forces you to use the current user, and takes the machine over.
mithras was right in his analysis of the technology. ARD is to be used in labs, large deployments, etc to manage multiple machines (install files, mass reboot, system status, monitoring, etc), but is hardly a client-server ideal setup like X.
I had heard somewhere that rumors persist of the hooks still existing in OS X, but the APIs are secret. That's not fact though. I WISH Apple would produce a system like that, but I fear they will not. It might also be possible that because of how Display PDF works (creating a PDF for each screen element, then compositing them together), it is not possible to merely send the screen draw APIs. Maybe?
But if you're like me, and you WANT this capability, Tell Apple!
Okay then, now you're starting to get informative.
...
I was under the impression - admittedly a glib one - that it's possible to send remote Aqua events using Applescript over any of the network layers.
I also was under the impression - mistakenly, since you've said ARD is a bitmap pusher - that ARD used this capability to reduce network clutter.
I still don't agree with you that the fact that ARD is meant for teachers makes this unusable. That makes no sense whatsoever. I've used ARD, and I'm certainly no teacher.
X was meant for rocket scientists, but that doesn't stop the kiddies from using it.
The bitmap issue, of course, is key. VNC wins, hands-down - since ARD ain't free.
If it came down to it, though, ARD will still get the job done - and may have the added advantage that with a fast network connection, ARD may one day be able to do such things as play Quicktime movies (albeit buffered) seamlessly
Also, isn't ARD included with all 10.2 Server packages now?
; -- the corruption of government starts with its secrets. a truly free people keep no secrets. --
break the interface off your apps, and run them as apache modules (or learn how to drive the network object stuff I believe lives in Cocoa)
in other words, make a cut down window manager. (or run the remote desktop, but you'll have more fun rolling your own)
Not being a teacher certainly doesn't make ARD off-limits to you, as I mentioned below, it is great for managing apps and interacting with a single machine from a single terminal if you do not have to do it for very long as a time. But it kills productivity and is not very fun to work on for a period of more than a few minutes.
But a good point was made in that ARD IS good for teachers. I worked as a sysadmin for a school that was going to OS X, and we installed ARD for teacher use in demos, etc. And yes, others can use it, but for the purposes the poster was getting at, I think he wants the full X functionality.
I just want sloppy focus. Please someone, make this happen. Clicking in the window has been the hardest thing to get used to.
here's a link for the only OS X VNC server that I know of:
http://www.redstonesoftware.com/osxvnc/
Other VNC servers and clients can be found at:
www.realvnc.com
It works, but you'd better be running a 100Mbps LAN with plenty of horsepower on both ends of the connection. OS X is a lotta GUI to be managing remotely.
I was under the impression - admittedly a glib one - that it's possible to send remote Aqua events using Applescript over any of the network layers.
...
It may be, but not for ARD.
I also was under the impression - mistakenly, since you've said ARD is a bitmap pusher - that ARD used this capability to reduce network clutter.
If only. It's a bitmap pusher, that's all.
The bitmap issue, of course, is key. VNC wins, hands-down - since ARD ain't free.
VNC is also MUCH more reliable and can easily be invoked (and shut down) from a remote shell.
If it came down to it, though, ARD will still get the job done - and may have the added advantage that with a fast network connection, ARD may one day be able to do such things as play Quicktime movies (albeit buffered) seamlessly
ARD is not suitable as an X replacement. For starters it only supports one client connection at a time. Secondly it freezes - often. No good having a remote admin tool if it doesnt work. Thirdly it's bandwidth intensive, as it's a bitmap pusher. Admittedly bandwidth is becoming less of an issue however the less you need to push around the faster you can do it.
Also, isn't ARD included with all 10.2 Server packages now?
No it isn't, but it should be.
ARD is a screen controller, nothing more. There is also the security aspect - if you are controlling a machine remotely, anyone who is physically able to can see what you are doing and take over at any time. For example - someone sees you log in as the admin, or perhaps root then unplugs the network cable to tinker with the box. This would not be possible with correctly configured X.
Does anything like this exist for OS X? I know there is a notion of a "Console user" in OS X (e.g. default user id for mounting disks) which might hinder this ... any tips?
www.osxvnc.com
'Nuff Said
the multiple user GUI Aqua interface rumor has been running around for a while. most recently Mac OS Rumors has been reporting that it is something Apple is working on. MOSR recommends those who want to be able to use Aqua as if it were X-windows should contact Apple and make the request.
but to answer your question, there is NO way to do what you want short of taking over the desktop machine's screen. (or buying a new faster *book...)
Both NextSTEP and its later Apple incarnation, Rhapsody, included a feature very similar to Xwindows remote hosts: NSHosting.
This was supported by the windowing system, then based on Display Postscript. If my memory serves me well, you could even display an application running on different OSs as long as you had OpenStep installed locally.
Moving to Quartz, this wonderful feature unfortunately didn't make it...
Some say some of the hooks are there for a third party to implement it (CGRemoteOperation.h).
I think that Aqua is such a high overhead system that under current hardware it isn't justified to spend scare Apple engineering hours implementing this functionality. Where it would make sense though would be in the next generation of hardware.
The PPC 970 seems to be much more multi-processor friendly from what's been released so far. Creating a 8, 16, or 32 way house server in partnership with housing construction firms would make a compelling business proposition because you would have a relatively secure system with low virus potential and you could fold the $10k-$15k cost of such a system into that venerable institution, the home mortgage. Talk about a digital lifestyle, upscale developments created with such home servers as stock features would actually fit into Apple's business plan, be very profitable while expanding the Mac user base, and would provide a compelling need to be able to run multiple graphical user sessions.
It's such a compelling solution that you might even get Steve Jobs to sign a clone license for such a beastie if Apple didn't want to pursue such a system itself.
The rumor mills seem to think this'll be available in a future version of OS X.
See macosrumors.com
Mod point free since 2001
has any one bothered to see at the terminal if NXHost or man NXHost is even anywhere within the OS X underpinnings of WindowServer.app?
I would but I don't have OS X to run.
It's designed to give you a remote virtual desktop for an instance of the OS. It is more like LTSP for Mac than it is like VNC.
Of course, it is not simply another Mac app, and would involve wiping the machine and starting over, so it's not for the faint-of-heart...
My son's 5th grade teacher actually assigned them "write a limerick about a planet". I'm not kidding.
Remote Desktop Connection Client for Mac OS X
Think of how productive you can be with local OSX Apps, remote OSX Apps, local windows Apps via Virtual PC, remote Windows Apps via WRD, local X11 apps on XDarwin, remote X11 Apps also with XDarwin and a VNC client for your Apple Newton's VNC Server. All on the same desktop.
I nearly pissed myself when I read the title the first time as "Making Mac OS X Work Like Windows?".
It's X. Or X11. X-Windows is something you might tell newbies, but it's not an official name, and slashdot really does know better. Ah but I forgot: slashdot's editors don't.
I've finally had it: until slashdot gets article moderation, I am not coming back.
the non-remoteness of the Quartz APIs
And, frusteratingly, I hear calls for X to do the same. An irritating but vocal minority keeps yelling that X is bloated (it's not, and RAM usage requirements are because of server-side pixmap storage), slow (it's not, and if you wanted it to it could buffer all client windows to get "smooth dragging" if you wanted to blow huge quantities of RAM like Quartz does), and complicated (because they aren't using the straightforward, reliable front ends to set it up). A lot of this gets blamed on the remote capabilities of X, and I keep hearing calls for a windowing system using a local framebuffer. Ick.
It's good to see that some people *took* this step and regretted it. I would hope that X users can *learn* from this.
May we never see th
the bitmap of the screen
That's gotta suck based just on the Mac OS X pixmaps. People I know that use VNC regularly use a solid color background, solid color widgets, solid color titlebars to keep things light and usable...all that glitzy translucency and racing strips across everything wreak havoc on attempts to do an efficient pixel-pushing system.
May we never see th
Tenon's Xtools is nothing more than a rebadged version of the original Xdarwin (Xfree86 on MacOS X) release, spiffed up with a rootless patch and a slightly improved control panel. For this, they wanted $200.
Even if the price weren't a ripoff, you don't want it anyway: the current release has a substantial number of showstopper bugs, and they have yet to update to the XFree 4.2.0 codebase. The last update to Xtools was in December of 2001, and they appear to have completely abandoned the product since then. (The support boards on tenon.com are a rather unhappy place as a result; I wouldn't be surprised to see a class-action suit arise out of this.)
News for Nerds. Stuff that Matters? Like hell.
sheesh.
See here.
News for Nerds. Stuff that Matters? Like hell.
... is X Windows?
Acts@core.mailboks.com Acrux@core.mailboks.com Adam@core.mailboks.com Adar@core.mailboks.com Ada@core.mailboks.com
There are those who ask questions, and there are those insecure wannabe peons who delight in berating those who dare show any signs of ignorance.
Given Xfree86, wouldn't it make sense for the open source communtiy to offer an X11 client that could be run on a Mac under OSX? Then, presumably, anyone running Xfree86 could log into such a machine graphically, and run OroborOSX if they wanted to use an Aqua-like window manager. Does this already exist?
Wouldn't Apple would be reinventing this if they were to develop their own graphical remote user interface?
If so, this would not seem to be as useful as X11, which would allow logins from diverse X servers rather than Macs only.
ThosEM
OS X is just whoring the letter X as the X-box is. X was first used in a computer project in X10 and later X11(unrelated, but much more fun).
If OS X is gonna whore the name around, they should do so with style rather than beauty.
To the original author, just do what I did and install Linux on your iBook. If necessary you can run MoL on your dual processing G4 and run it remotely on your iBook. I use MoL for programs such as Bryce and Flash MX with no trouble to speak of. Configuring networking will be a bitch, I warn you.
You can't judge a book by the way it wears its hair.
I concur with "useless articles on /." comment.
Gee, I wonder if I can run WinXP on my PB540 under System 7.1?
Why do such obviously inane questions get posted? Doesn't anyone, in addition to the excellent search comment for apple.com/support, know how to use google.com?
Session from OS X 10.2.1:
----------
% man NXHost
No manual entry for NXHost
One thing that needs to be kept in mind in all of this is that much more than the GUI is involved. In case you had not noticed, OS X changes the ownership of several files and directories to match whomever is the current console user. For example, the OS 9 Applications directory and the /Documents folder. THese changes are needed to support the classic environment. Thus, if you have two folks logged in via a GUI who should get ownership of these files/directories? One solution would be to limit classic to just the 'console' user, but that would probably mean changing large portions of Aqua/Quartz.
In addition,Aqua would have to be changed to understand how to lock USB and FireWire resources so that remote and console users don't crash into each other.
In my opinion, however, the biggest issue that would kill having an X-style remote GUI is philosophical: nearly all of the software vendors and general Mac users assume that the console user is the only user and having the ability to have multiple GUI logins would really confuse the heck out of them.
Is this freehand, or was a certain image somehow converted?
Just curious.
The OSX Window manager can be made to start without the finder by writing a shell script that , in one file, starts the window manger and then starts an application like the terminal. If you go into the console from the login window with ">console" and login as root, you can then start this shell script and will be blessed thereafter to be able to use MAC OSX without the rather slow finder.
Why do I write this? This simply illustrates that Apple has done quite a lot in order to hide the window manager, and a lot of other functionality, in the normal view and it is very possible that there are indeed hidden hooks in the window manager to get it to work over a network, such as the ability to create a seperate window from another machine, not just pushing bitmaps around. The technology is certainly there, with Remote Objects in Cocoa. I also don't think it has that much to do with Quartz, as quartz is simply the drawing system and the window manager is the system that actually manages all created windows. Quartz simply composits and draws them. The fact that 10.1 had the hack of enabling one to enable window buffer compression lends some support to this theory. In theory one would simply have to know whether the window manager could send and receive window objects across the network, or if window objects were confined to the local machine.
good stuff.
As the resolution of displays gets higher, the "overhead" of quartz and the PDF-based rendering of graphic elements in OS X will probably start to seem less like overhead and more like an elegant solution to the HD GUI issue.
I was under the impression that the actual data required to specify aqua elements (ie, the vectors needed to specify the rounded corners of the windows, the positions of the windows, etc...) was lower than a decent res bitmap of the session. I remember reading somewhere early on (like in the Public Beta days) that quartz was designed to be relatively lightweight as far as the actual data is concerned, making it well suited for transmission over networks.
Furthermore, I would be very surprised, given Apple's recent thrusts into the server market if this functionality wasn't in the pipeline, short as that pipeline may be.
These solutions solve the problem of running X-Windows programs on the Mac... something that can be done by just installing X-Windows on you mac. (You'd just have to set the window manager up to look like a mac)
Fact is the GUI isn't as UNIX like that I'd hope. Don't get me wrong, I love the interface and the GUI (despite a few small bugs) looks great. However, I think features similar to X, such as launching remote programs (either other mac programs or other X-Windows programs) would be great. One thing I love about linux is being able to type ssh -X host and be able to launch those programs on my X server.
-Chris
If you want the horsepower of your tower when at home but still want the mobility of the ibook and the convenience of only using one machine(by this I mean hard drive/OS installation), consider doing this:
1. Put your ibook into firewire target disk mode (hold down "t" during boot iirc).
2. Use a firewire cable to connect the ibook to the tower.
3. Hold down option on the tower to get to the boot selection menu, and select the external firewire drive (your ibook)
4. Tell all of your wintel using friends about how great apple hardware is.
I find this surprising because ordinary X windows VNC servers can use virtual screens. I'm sure there must be some way of creating a virutal screen for the macs too because you can buy KVM switches that use the USB port rather than the Graphics adapter for the video display. Also I have found that if I plug a screen in to the graphics card, launch osxvnc and then unplug the screen that OSX VNC functions fine until the next reboot.
Does anyone know how to permenantly fool or otherwise use aqua VNC on a mac without a graphics card attached. I contacted the folks maintaining OSX VNC and they would like to know of a solution too.
in a large rack is sure would be nice not to have to attatch any keyboards or screens yet still have access to the aqua desktop on each machine.
Some drink at the fountain of knowledge. Others just gargle.
I use both the OroborOSX and twm window managers for X11 forwarding. I am at an institution (MIT) that has a unique and massive network and hundreds of X-apps I can run on my (OS X/Linux) laptop. For those who are unfamiliar with this type of system, the gimp (for example) runs on their (MIT's) servers and just the X11 session is forwarded to me. I am getting addicted to exploring these different apps, just for the fun of making it all work. And it really works great.
I typically use both of these window managers in rootless mode although full-screen is an option. What I haven't been able to figure out is how to get XFree86 to run when I login as console (when you are at the login screen for OS X you can type ">console" in the username field and you will be in aqua-less mode.
Does anyone know how to get this to work? Maybe I just need a new version of XFree86, mine is kind of old.
Anyway, I say to this guy...just use an X client of your choice...I know you can get gnome even for OS X/Darwin, but I just use twm or OroborOSX.
I nearly pissed myself when I read your post for the first time:
"I nearly pissed myself when I read the title the first time as "Making Mac OS X Work Like Windows?""
The title clearly says "Making Mac OS X work like X -windows." Check it again and I hope you do piss yourslef!
It ain't free but it rocks like Gilbralter
AND IT HAS Focus Follows Mouse!
My life is complete
Check it out here
This
That's rather unfair. Mac OS X has legitimate reasons to use X--first, because it's the 10th full version of the Macintosh system software, and the Roman numeral for 10 is (*gasp*) X. It is, in fact, also built on a *nix-ish framework, that can, in fact, run X (it comes with XDarwin!). M$'s XP and X-box are completely different--simply leveraging the marketing of the letter X as being "cool", and perhaps as being associated with this great OS.
Dan Aris
Fun. Free. Online. RPG. BattleMaster.