PDA

View Full Version : Windows is the new Classic


khad
May 24, 2007, 05:50 AM
Moved from "Parallels Desktop for Mac"

Windows is the new Classic
Make Parallels behave like the Classic environment

Blast it all. I had a post and OmniWeb ate it. Argh. Anyway...

I am one step closer to realizing my dream of making Windows as easy to use and seamless as Classic apps in OS X on PowerPC chips.

Some tips:

- set Parallels to show Windows apps in the dock (the default)
- set Parallels to suspend on quitting (via CMD-Q or AppleScript, again the default)
- swap CMD/CTRL (so you can use CMD-T in Web browsers, not just ZXCVAF)
- Disable all animations/transitions
- use Dockless (http://www.versiontracker.com/dyn/moreinfo/macosx/18195) to hide Parallels icon from the dock and CMD-TAB
- enable "Start VM automatically when it is opened" in the VM
- start VM in Coherence mode (that should be obvious)
- install FlyakiteOSX (http://www.osx-e.com/downloads/misc/flyakite_osx.html) in Windows XP (for a smoother blend with OS X aesthetics)


Download wclassic (http://www.getmorphed.com/wclassic) bash script and put it in ~/Library/Parallels/ (you will have to create the folder). You can run it manually to see it's output. It writes a file ~/.wclassic to keep track of how many programs were running in Parallels and if there are no programs currently running and no programs were running the last time you ran the script, it quits Parallels...gracefully. If you have it set to suspend on quit, that's exactly what it will do. It does not kill any process! It tells Parallels to quit via AppleScript.

In order for this to worthwhile, you'll need to set a cron job for wclassic every xx minutes (I use 10) and it will close Parallels if no programs have been running in it for the last xx minutes:

sudo nano /etc/crontab

Add a line to the end:


# The periodic and atrun jobs have moved to launchd jobs
# See /System/Library/LaunchDaemons
#
# minute hour mday month wday who command
*/10 * * * * khad ~/Library/Parallels/wclassic


Don't copy and paste it. You need to use the TAB key and line each bit up with the name above it. Replace 10 with the number of minutes you want Parallels to wait before closing, and replace my name with your OS X short user name.

Press CTRL-X, then Y, then ENTER. This says you want to exit, yes please save it, and verifies the filename to save it as.

Then click a Windows app in your dock. Parallels will launch in the background displaying its progress bar. When you are done, close the program and go about your business. If you need to run another Windows program (or the same one), just click its dock icon. If no Windows apps have been used in the last 10 minutes (or whatever you set it to) then Parallels will quit, suspending Windows and freeing up your memory. It's pretty much like the Classic environment over in PowerPC land.

I think that's all. I probably forgot something really important, but it is 5:41 AM and I have to get up in a few hours.... I'll check back later to see if anyone even cares about this. It's not that fancy but it brings a smile to my face.


khad

alien2k
May 24, 2007, 02:30 PM
Note that this probably won't work if you're running Windows from a Boot Camp partition, as Parallels won't allow you to suspend the VM to disk. This is to prevent data corruption by suspending the VM, quitting Parallels, forgetting about it then rebooting into Windows natively.

Other than that, this is an amazing idea - I applaud Parallels for not only being the first to market, but also for continuing to build innovative features into their software that allow users to not only use these new features but to customise them as has been done here. And I'd say all that even if I wasn't angling for a beta invite :-P.

Remember that if you hide an application's dock icon, you will lose access to its menus - and with Parallels the ability to bring up the start menu, using the mouse, with the taskbar hidden.

Sam

khad
May 24, 2007, 04:30 PM
You make excellent points, Sam. Hopefully more people will be interested and really make this amazing. I would love to see a prefence pane similar to the Classic one with a slider for Parallels "sleep" time. Something more accurate would be nice as well.

My method is only accurate from x to 2x-1 minutes. (In my case, that's 10 to 19 minutes. For example, if I am running a Windows app at 1:20, but then I quit it at 1:21, when the script is run at 1:30 it says, "Nothing is running now, but something was running last time we checked, so you have one more chance to use Parallels, otherwise it will quit." Then when it runs at 1:40, it quits. From 1:21 to 1:40 is 19 minutes. That's the longest it can possible run with no Windows apps open. The shortest would obviously be if I close my last Windows app at 1:19:59, it checks at 1:20, sees nothing running, checks again at 1:30 and quits Parallels since nothing was running the last 2 times it checked. That's 10 minutes.

I am not sure how taxing it would be on the system to run every minute and check the past x times according to a simple setting. That would allow a more accurate sleep time, but I am not sure it's worth running the script every minute. What would be nice is if the Parallels folks added this funcionality in a later version. They have already done a really great job with Coherence mode. My dream (of Windows as Classic) would never be at this point if not for Coherence mode!

Anyway, I am going to add a bit to the original post per your comments. Thanks!


khad