A Proud Moment: VMware Workstation 8

Today is kind of a career highlight for me. A moment I’m especially proud of. We just released VMware Workstation 8. Code-named “Nitrogen,” this release has been in the planning stages since around the time I joined VMware 7 years ago. It has been in active development for the past 3 years. Easily the longest development cycle we’ve had for Workstation, but also easily the best release we’ve ever done.

Previous users of Workstation will notice quite a lot of improvements to this release. We have a lot of changes, but I want to go into a few that I’ve worked on over the past three years, which I think are of particular interest.

Remoting

Remote Server Connection

This is the big one.

Workstation 8 can share VMs with other Workstation 8 clients. You can run a VM on one system (say, a beefy desktop machine in the back room) and access them from another (say, a light-weight laptop). All the processing happens on the machine running the VM. They can be made to start up along with the system, so you don’t even need Workstation running. You don’t even need X (on Linux).

Users of VMware Server or GSX should find this familiar. We’ve essentially succeeded the Server product with this release, with more features than Server ever had. For instance, one client can connect to multiple servers at once, alongside all your existing VMs.

That’s not all, though. You can also connect to ESXi/vSphere. As a developer, this is something I take advantage of nearly every day. I have an ESXi box running in my back room with several VMs for testing, and a couple for in-home servers. By running on ESXi, I minimize the overhead of a standard operating system, and gain a bunch of management capabilities, but previously I had to use vSphere Client to connect to it. Now I can just talk to it with Workstation.

Hear that, Linux admins? You don’t need vSphere Client running on Windows to connect to your ESXi/vSphere box anymore. That’s a big deal. (Unless you need to do some more advanced management tasks — we’re more about using the VMs, and light customization).

VM Uploading

We also make it easy to upload VMs to an ESXi/vSphere box. Connect to another server, drag a local VM onto it, and the VM will convert and upload directly to it. Super easy. Developing a VM locally and putting it up on a server as needed is just a simple drag-and-drop operation now.

No More Teams

Thumbnail Bar

Teams was a feature that we’ve wanted to rework for a long time. For those who aren’t familiar with them, Teams was a way to group several related VMs together (say, parts of a test server deployment) such that they could be viewed at the same time with a little live thumbnail bar. It offered some support for private virtual networks between them, with each NIC being able to simulate packet loss and different bandwidth limits.

We felt that these features shouldn’t have been made specific to “special” VMs like they were, so we tore the whole thing apart while preserving all the features.

Now, every VM’s NIC can simulate packet loss and bandwidth limits. Any VMs already together in some folder or other part of the inventory can be viewed together with live thumbnails, just like Teams. Any VM on the local system can be part of any other VM’s private virtual network.

It’s much more flexible. The restrictions are gone, and we’re back to using standard VMs, not special “Team VMs.”

Inventory Improvements

Inventory Filtering

You may have noticed the search field in the inventory in my screenshots. You can now filter the listed VMs by different criteria. Show the powered on VMs, the favorites, or search for VMs. Searching will take into account their name, guest OS, or data in the Description field in the VM. The Description searching is particularly helpful, if you’re good at documenting/listing what’s in a VM that you may care about (IE6, for instance).

Favorites

Favorites was reworked. It used to be that every VM in the sidebar was a “favorite.” Now we list the actual local VMs, and we don’t call them favorites. Instead, you can mark one of the listed VMs as a favorite (by clicking a little star beside it) and filter on that.

UI Improvements

Folder Thumbnail View

We’ve streamlined the UI quite a bit. All our menus are smaller and better organized. Our summary pages are cleaner and highlights the major things you want to see.

We have new ways of navigating your VMs, which is especially handy on large servers. You now get a tab for any folder-like node in the inventory showing your VMs in either a list view (with info on power states) or a zoomable live thumbnail view showing what’s happening on each VM.

And Much More

That’s just a few of the major things. There’s many, many more things in this release, but the official release notes will cover that better than me. (Honestly, I’ve been developing and using this release for so long, it’s hard to even remember what was added!)

Tip of the Hat

A lot of great people worked on this release. The engineers that developed the various components across the company. The QA groups who have provided valuable testing to make sure this was a solid release. The product marketing and management teams who kept us going and help draft the goals of this release and market it. The doc writers who spent countless hours documenting all the things we’ve done. Upper management who allowed us to take a risk with this version. Our beta testers who went through and gave us good feedback and sanity checks. And many others who I’m sure I’m forgetting.

I said this already, but I’m so proud of this release and what we’ve accomplished. More effort went into this than you would believe, and I really think it shows.

And now that we’re done, we’re on to brainstorming the next few years of Workstation.

Review Board 1.0 Released!

Review Board 1.0

Tonight, we hit a milestone in the Review Board project that we’ve been working toward for over two years. We finally pushed out our 1.0 release. A lot of blood, sweat and tears went into this release (okay, so not literally, but it was A LOT OF WORK!). The last few months in particular have been challenging, as we’ve had to solve some tricky bugs and scalability problems, but the end result is pretty great.

Just a short while ago, we announced the release and put up an overview of the entire release and product. We’ve already had some nice congratulatory e-mails and tweets, which is really nice :)

Some stats for this release:

  • 2 years, 9 months, 25 days have passed since our first commit.
  • 120 contributors have contributed to Review Board so far (in terms of code contributions).
  • 2,019 commits were made.
  • 899 review requests have been posted to our project’s actual Review Board server. 1,650 users are registered on there.
  • Our demo server, in comparison, has 2,082 review requests filed and 10,154 users.
  • 938 bugs were filed. 812 were fixed.
  • 232 feature requests were filed. 101 were implemented. Most remaining ones are scheduled for releases.
  • An estimated 200+ companies are now using Review Board. 26 have let us list them publicly.
  • The largest known Review Board install has over 83,000 filed review requests and over 2,000 users, doing upwards of 10GB of traffic per day.
  • 5 presentations on Review Board are known to have been given, 3 by us, 2 by others.
  • 552 users have joined our main mailing list, and 3,674 e-mails have been sent.

Now that Review Board 1.0 is out, we can get started on some awesome new features we’ve had planned. I have a little notebook full of ideas for our 1.1 and 1.5 releases (which may become 1.5 and 2.0, respectively, as this list grows). Some of the new features are actually ready to be committed within the next couple of days, so those of you using nightlies will start to see them soon.

We were accepted into this year’s Summer of Code, and have three students working on exciting projects for us, so hopefully we’ll start to see these trickle into the upcoming nightlies as well. Among these projects include diff viewer improvements (moved region detection, better whitespace-only change detection), IDE integration with Eclipse, and improved notification hooks and e-mail support.

We’re also working on providing support for third-party extensions, which will allow developers to extend Review Board in new, exciting ways without having to modify Review Board itself. This is especially handy for companies who wish to integrate better with their sandboxes, bug trackers or unit testing services. This will likely land in 1.5 (2.0?) at the earliest, as it’s a large change, but the code for this mostly works today. It’s just a matter of getting the codebase ready and figuring out what APIs we want to stabilize and expose.

As I mentioned in the release announcement, we’re planning a release party, tentatively on July 11th, 2009, in the Bay Area (somewhere around Palo Alto, CA). If any Review Board users want to join us, please RSVP!

Infect your application with Parasite!

Parasite

Ever find yourself stuck debugging an application because the UI is just doing something weird that you can’t track down? Maybe a widget isn’t appearing correctly, or you just need more information about the overall structure and logging statements aren’t doing you much good. Debugging complex UIs can be a pain.

We’ve had some real challenges at VMware, due to the complexity of our applications. It was enough to drive me mad one day, so rather than write more logging statements, I wrote Parasite.

Parasite is a debugging tool that David Trowbridge and I have been working on to give developers an interactive view of their entire application’s UI. It provides a number of really useful features, including:

  • See the entire widget hierarchy of your UI.
  • Watch properties update live.
  • Modify existing properties on a widget.
  • View all registered GtkActions.
  • Toggle GTK+’s debugging of graphic updates.
  • Inject custom code while the application is running.

Yes, you can inject new code into an application. With Python. Parasite runs in-process as a GTK+ module, so it has access to some internals of your application. We provide a Python shell equipped with PyGTK support for creating and modifying your UI on-the-fly, regardless of the language it was written in. Handy when you want to test out new concepts for a UI without writing new C code.

David has a nice screencast available showing some of what Parasite can do.

For more information on Parasite, including screenshots, a mailing list, and where to get the source code, see the Parasite homepage.

Review Board 1.0 alpha 1 released

Roughly two years ago, David Trowbridge and I began development of Review Board for use in our open source projects and our team at VMware. During that time, we’ve turned Review Board into a powerful code review tool that works with a variety of version control systems. Most of VMware has moved over to it, as have an estimated 50-100 companies world-wide. We’ve had over 100 contributors to the project, people providing volunteer support on the mailing list, and people have developed third party tools for integrating with Review Board.

After all this time in development, with this many people contributing, we decided it’s probably time to get a release out there. Sure, we could have done this a long time ago, but there’s a number of large things we were hoping to get in (a recently-committed UI rewrite, for instance). Now that we have most of the major features we want for our 1.0 release, we decided it was time for an alpha.

Over the coming months, we’ll be working on stabilizing the codebase, fixing a few large remaining usability quirks, enhancing performance, and writing some proper documentation (which is coming along nicely).

We’re eager to get a quality product out there and to begin development on the next release. There’s a lot of neat things planned:

  • Support for writing extensions to Review Board.
  • A fully-featured API covering every operation you’ll need to perform.
  • Some degree of policy support (specifying which users/groups can see which parts of a repository, for instance).
  • Reviews with statuses other than “Ship It”. This will probably be customizable to some degree.
  • Possibly some theme customization to allow Review Board to blend in better with corporate sites, Trac installs, etc.

Along with this, I plan to roll out a new website for the project that will have a browseable list of third party extensions, apps, Greasemonkey scripts, and more.

We have more information on our release on our release announcement.

libnotify 0.4.5 and notification-daemon 0.4.0 released

It’s been a long time since I’ve really put out a libnotify or notification-daemon release. Review Board and VMware have taken up a lot of time the past year, so development has been slow, but I think these releases are worth it.

libnotify 0.4.5 [Release Notes] [Downloads]

This is mostly a small bug fix release, but introduces support for associating a notification with a GtkStatusIcon. This allows for better position tracking when notification icons are jumping around.

notification-daemon 0.4.0 [Release Notes] [Downloads]

This is a large feature and bug fix release. The major two features are multi-head support and a new control panel applet for specifying the notification theme and corner origin.

The multi-head support will show standard (non-positioned) notifications on the monitor the mouse is currently on. Previously, they would only appear on the primary head. This helps to notice new notifications, and fixes problems with some people who have a multi-head setup but only have one monitor on or in view. Also, notifications that appear on the edge of a monitor in a multi-head setup will no longer cross the monitor boundary, and will instead just stay on the correct monitor.

The new control panel applet makes it easy to switch notification themes or to specify which corner notifications should appear from. This will be expanded in the future.

As mentioned above with libnotify, notification-daemon can now track when status icons have moved so that the notifications are no longer in the wrong position during startup.

There’s a bunch of other nice little bug fixes that are mentioned in the release notes.

Thanks for the patience, everyone!

VMware Workstation 6.5 released!

I wanted to come up with some witty introduction here, but after a year of hard work on Workstation 6.5, I’m just too tired to come up with anything.

Workstation 6.5 is the latest release yet of our Workstation product, and continues in the fine tradition of being an awesome program. It’s also the first version to introduce Unity, a feature I’ve spent a lot of time on and will be blogging about in more detail soon.

So why should you upgrade to Workstation 6.5? Well, if you’re a Workstation 6.0 user, it’s free, which is a pretty good incentive. It also comes with a bunch of new and improved features.

Unity

Unity is a feature I’m particularly proud of, because it’s pretty much the only thing I worked on for Workstation 6.5.

Unity breaks down the walls between the host computer and the virtual machine. With the click of a button, application windows from the VM pop out onto the host desktop, allowing you to put your host and guest applications side-by-side. If you’re a Linux user but you need to use Outlook for work, this feature will let you just simply run Outlook alongside your other windows.

Unity isn’t just a Workstation feature on Linux or Windows. The free Player product can also run your VMs in Unity!

Unity works best with Windows guests right now but does support Linux guests as well. Linux guests are more experimental and I strongly recommend using a recent version of Metacity in the guest. For Linux hosts, you’ll have best results with Compiz, Metacity or KDE.

It’s a complicated feature and, while not perfect, is still pretty great. I’ve written a little about it (see Working outside the box with Unity and Workstation 6.5 Beta 1 – Now with 100% more Unity!).

In the coming weeks, I plan to write a small series of blog entries about the development of this feature, including some of the complications involved and design decisions we made.

Record/Replay

Workstation 6.0 introduced Interrupt Record and Replay, a feature enabling users to record on the CPU level everything that’s happening for a range of time in a virtual machine for later playback. This is a powerful feature for development and debugging, as one can record a session during the testing of an application and forever capture that annoying 1-in-100 crash.

Workstation 6.5 improves upon this by providing a much more flexible UI with the ability to skip around a recording, adding checkpoints for quick navigation, and just generally bringing the feature into a more mature state.

Improved Linux Installer

One of the main grumble points that users (and ourselves) have had with past Workstation for Linux releases is that the installation process wasn’t very smooth, and the vmware-config.pl script had to be re-run after any kernel upgrade.

We’ve fixed these issues by providing a new GTK-based installer that walks the user through the installation process, and by handling kernel configuration (if needed) during Workstation startup. The days of running a shell script to get Workstation running are over. Finally.

Virtual Machine Streaming

Ever want to preview a downloadable virtual machine without having to grab the entire zip file or tarball? VMs can be quite big and it’s a pain to download one only to find out that it doesn’t meet your needs.

The new VM Streaming feature gives users the ability to point Player or Workstation to a remote VM (if provided in the proper format). It will then download the bits as needed, and allow users to pause or restart the stream. It’s important to note that this will be slow at first until it has enough data to smoothly run files off the disk. When finished with the VM, the user can choose to keep what they have, or delete the cached VM from disk.

3D Acceleration with DirectX 9

Our hard-working team of 3D Code Monkeys have been working to bring support for DirectX 9 in the guest, supporting up to Shader Model 2.0. This means many more games are now playable, including one of my favorites, Portal.

Easier VM Creation

We’ve revamped the New VM wizard to provide a more streamlined VM creation process, complete with our new Easy Install feature. Simply put your installation CD in the drive or point the wizard to your ISO file and it will automatically determine the guest OS and default settings.

And lots more…

That’s just scratching the surface. We’ve made plenty of other improvements, listed in our release notes.

Some of us developers will be providing some support in the forums, and if you have a Linux Unity question, feel free to contact me directly.

Love,

Christian

Workstation 6.5 Beta 1 – Now with 100% more Unity!

I talked a little while ago about working outside the box with Unity. At that time I gave a sneak peak into what I’ve been working here at VMware the past few months. Well, now everyone can see.

We just announced VMware Workstation 6.5 beta 1, the first public beta for Workstation 6.5. Among many other awesome features is Unity, a feature we introduced in our Fusion product (for MacOS X) which allows you to run your applications from your virtual machine on your desktop without needing to be confined to a big box representing the VM’s monitor.

Unity is available in both our Linux and Windows releases of Workstation 6.5 beta 1, and there’s currently support for Windows guests (Windows 2000 and up). However, it’s a beta so you can expect some problems. To help people get started, here’s a rundown on what you can expect from Unity in beta 1.

Features Overview:

  • Shaped windows
  • Guest mouse cursors
  • Proper window types for most windows (Menu, Dialog, Tooltip, etc.)
  • Special effects with Compiz
  • Virtual desktops
  • Copy and paste between host and guest
  • Start menu integration
  • Window borders and badges

Seamless window integration

With the press of a button, the applications in your virtual machine will pop out and appear on your desktop, intermixed with all your native applications. These windows can stack in any order along with your native windows and will maximize, minimize, and close as you’d expect any normal window to. They’ll appear just like they would in the guest, aside from any borders or badges you have set to help identify the guest windows (more on that in a minute).

We do our best to set the window types on these windows to best reflect their type in the guest. This means that a tooltip from the guest will look and act like a tooltip in the host, as will a dialog, menu, etc. This is important for supporting the special effects provided by a window manager.

Special effects

If your window manager has any special effects set for the windows, they’ll apply to guest windows. For example, users of Compiz will be glad to know that their wobbly windows will work for such applications as Office 2008 or Minesweeper, and your guest menus will still burst into flames when they appear.

There are a few cases where the effect isn’t as strong as with native windows. Due to the way we receive window updates and events, the display of a window will often update before we receive open, close or minimize events. We plan to make this work better for some event types in the next beta, but for now, I recommend choosing special effects that modify a window in-place (fire, fade-in, etc.) instead of one that zooms a window to a location for opening/closing windows.

Wobbly Windows

Virtual desktops

Windows may not natively have virtual desktop support, but Linux does, so we felt it was important to make virtual desktops with Unity just work. You can place your guest applications across your virtual desktops. Maximize Office on one desktop, play a game of Solitaire on another, and reserve a third for your Internet Explorer debugging session.

Unity with Virtual Desktops

Copy and paste

Copy and paste is an important part of any user’s daily work. We currently have support for copying and pasting text between host and guest. You can’t yet copy and paste images or other data, though.

Start menu integration

Helper’s Head

A desktop environment isn’t useful without the ability to get to your programs. We provide a little tool called Unity Helper that runs automatically and provides start menu integration. Simply move your mouse to the top-left corner of your primary monitor and the menu will pop down, providing a start button for each of your VMs in Unity. Click the button and your start menu’s contents will appear.

The start button will match the color of the Unity badges and borders that are set to help you quickly identify your VM.

This functionality is pretty new so there are some kinks to work out. For example, if you don’t have a top panel or your top panel is larger than 24 pixels, you might notice the window in a wrong location. This is a bug that will be fixed in beta 2. We’re also hoping to add more options for the location of this window.

Applications Menu

Another useful tip is that you can use Unity Helper to launch applications in a guest via the panel or command line. Simply run:

 $ vmware-unity-helper --run /path/to/vm.vmx c:\path\to\program.exe arguments

This only works if your VM is currently powered on and in Unity or if the VM is not open anywhere. It’s not a supported feature at this point.

Borders and badges

In order to help identify a window belonging to a particular VM, we have color-coded badges and borders on the Unity windows. The border goes around the window and fades from corner to corner, and the badge is a little VMware logo sitting on your titlebar. Both are purely decorative and optional. You can turn them on or off in VM Settings or change the color. The color will also match the start button.

Badges and Borders

Known bugs (and workarounds)

As with any beta, there are of course bugs that you may hit. Pay special attention to the first item on the list.

  • Start menu problems after a crash. If there’s a crash, sometimes the start menu integration won’t work the next session. The trick is to exit Workstation (leave the VM running in the background), delete /tmp/vmware-$USER/unity-helper-ipc-*, and bring Workstation back up.
  • Occasionally Unity may crash. This is a known bug when a guest window changes its type when we don’t expect it. If you hit this, don’t worry! Your VM is still running in the background. Just re-launch Workstation or Player and go back into Unity mode.
  • Graphics glitches. Sometimes you’ll notice the background appearing when you close or minimize a window. We hope to fix this up for the next beta.
  • Multiple monitors are not supported in beta 1.
  • Drag and drop is not supported in beta 1.
  • Due to a recent regression just before beta 1, there are graphical glitches for applications not on the current desktop.
  • Some applications behave badly. Photoshop and Flash (the creation program, not the plugin) (ab)use windows all over the place, and so you’ll see windows where you wouldn’t expect them. Sometimes they don’t even get proper updates, making the UI unusable. We’re looking into solutions for this.

There’s more, but those are the main ones I can think of that people may hit.

Give it a try and feel free to report bugs in the user forums.

Unity is now “real” – VMware Fusion Beta 4 released

Yesterday I briefly wrote about the new feature in VMware Fusion called Unity and linked to a video demonstrating what it can do. The buzz we got from that has been a lot of fun. Some people commented on various sites saying it was fake, even, which I found pretty funny having watched this thing being developed. I personally didn’t work on this feature, but I work with those who did, and they’ve sure looked sleep-deprived lately trying to get this feature and the next VMware Fusion beta ready.

They can finally sleep peacefully. We just put out VMware Fusion Beta 4. I want to issue a public congratulations to the developers who have put in a huge amount of time into this product. They’re not done yet, but I think they’re starting to see the light at the end of the tunnel.

Regis Duchesne, one of the developers of Fusion, talks briefly about where things stand and where things are going.

So again, congrats guys. I think I’m finally going to have to buy myself a Mac.

May I present VMware Workstation 6.0

Good news, everyone! After several months of hard work, many late nights, and thousands of caffeinated beverages, we have finally released VMware Workstation 6.0. You may have already heard this on the news, but I’m here to tell you exactly what we spent so much time on. Or a glimpse of it, anyway.

  • Windows Vista support

    We’ve added much improved support for Windows Vista. Yes, you could run it before, but not this well. We have VMware Tools support for many things in Vista now, providing for a smoother experience. A warning, though. Vista is pretty heavy on resources and may still be slower than you’re used to. Not to mention the fact that Microsoft will make you buy the really expensive version in order to legally run in a VM. Still, if you’ve been wanting to see what Vista is like, have a decent machine, and an MSDN license or legal access to a legal version of Vista, install it in a VM and give it a try.

  • USB 2.0

    We now support USB 2.0. Your fancy USB 2.0 devices should now work just fine in your VMs.

  • Headless VMs

    Starting in Workstation 6.0, your VMs are no longer tied to your UI. Previously, any time you closed Workstation, you would be asked if you wanted to power off your VMs. Now you’re given the choice of continuing to run your VM in the background. It will continue to run without a UI.

    This is greatly useful when you have a service running in your VM that you may want to connect to. This is similar to VMware Server, except your VMs will not automatically start when the computer starts.

    While the VMs are running, an icon will appear in the system notification area that, when clicked, will display a list of all powered on VMs. Clicking a VM will launch the UI and focus the tab for that VM. A list of running VMs will also appear in the sidebar under “Powered On.”

  • Multi-monitor support

    Users of multi-monitor setups will love this feature. Your monitor layout is now exposed to the guest OS, giving it the ability to make use of more than one monitor when going fullscreen. You can full screen over one monitor, two, three, whatever you happen to have.

    In many ways, this feature is still experimental on Linux. It’s currently very difficult to maximize over multiple heads, given the lack of official support in X and window managers to do so. We’ve had to perform some creative tricks to make this feature possible. We’re working on getting official support in so that we can do this properly in future versions.

  • Improved full screen

    Full screen has been improved. You can now full screen over multiple heads or set one of several modes. You can opt to change the guest resolution to match the host, stretch the guest (as you would an image), or center the guest on the monitor. We no longer change the host resolution to match the guest, which used to cause some issues and “jumpiness” on Linux.

  • Multiple windows and tab drag-and-drop

    The Linux version of Workstation 6 now allows for multiple windows to appear on the screen at once within the same process. Now, older versions had a File -> New -> Window, which also created a new window, but it did so by launching a second instance of the application. We now keep this all in the same instance.

    Part of the benefit here is that you can now drag tabs between windows in order to better arrange them. You can place two windows side-by-side and view a Linux VM in one window and a Windows VM in another. You can also rearrange tabs within a window.

  • Drag and drop

    Here’s a feature Windows users have enjoyed for a while now, which we’re finally getting on Linux. It’s now possible to drag files from your host into your guest, or files from your guest into your host. Need to copy some documents from your Documents folder on Linux into your My Documents in your Windows guest? Just select them and drag into the VM.

  • Interrupt Record and Replay

    Workstation 6 is the first product to ship with the experimental Interrupt Record and Replay functionality. This allows you to capture everything happening to a VM — network packets, disk I/O, mouse events, etc. — into a log and replay it later. It’s very useful when doing debugging. Ever hit a crash that you can only reproduce one out of every 10 times? This should make it easier to track down.

    The first version of this is a bit limited, but we’re working on improvements for the next release of Workstation that will help make this invaluable to developers.

  • Eclipse IDE Integration

    We now ship extensions to Eclipse to ease development of applications and testing in a VM. See this blog post from the developer for more information.

  • Message log and notifications

    Many of our error dialogs that would block a VM from powering on have become passive popup notifications. We suspect the elves did it. Now little things like your sound device being blocked won’t prevent the VM from powering on when you ask it to.

    If you miss a notification or wonder why your device was disabled after coming back from a coffee break, you can check the new message log and see the contents of the notification. It’s accessible through a non-intrusive icon in the bottom-right of the Workstation window.

  • Tools auto-upgrade

    VMware Tools are essential to the smooth operation of a VM. They help to accelerate video, provide more natural mouse support, and end all of life’s problems (results may vary, not typical of average use). However, they’ve always had to be upgraded manually.

    Starting in Workstation 6, tools are capable of auto-upgrading when a new version is available. This can be configured globally or on a per-VM basis. One less thing to think about, and this is a Good Thing.

  • VM upgrade/downgrade

    To take advantage of all the features that a new VM hardware version gives you, you have to upgrade. This has always been true, and we’ve always provided a quick way of upgrading VMs. However, there are times when you may want to downgrade instead in order to distribute a VM that more people can take advantage of, or to make it ESX-compatible.

    We’ve added a new wizard that quickly guides you through upgrading or downgrading a VM. You can make the VM Workstation 4, 5, or 6 compatible, and choose whether or not it must also be ESX-compatible. The wizard will give you the option to either modify the VM in-place or to clone it first. No longer does upgrading to a new version of Workstation lock you in to a particular hardware version!

  • VNC

    Ever want to run SimCity 2000 in a DOS VM and access it across the network? Okay, well, maybe an older Windows install or something? You can now make any VM VNC-enabled. Simply toggle the option, set an optional password, the port (on the host computer) to connect to, and you’re done! You should be able to access your VM through VNC on any other computer on the network. You can even see how many people are connected and boot them off, just in case they’re sending Godzilla after your city.

  • Appliance View

    VMs are becoming a big thing for application distribution. It’s possible to download virtual appliances for all kinds of things. Need a pre-configured e-mail server or a development environment for an embedded device? Chances are you’ll find it nowadays. Simply download it, power it on, and go.

    There’s a lot of things we’re planning to do to make virtual appliances better and easier for both the developer and the end user. The Appliance View in Workstation 6 is the first step in this. It features a cover page that can be displayed as the VM powers on (instead of the console view) and can contain the appliance name, version, author, logo, and descriptive text.

    A status area at the bottom of the Appliance View indicates when the VM is powering on, waiting for the services to start, or that the appliance is ready to use. When it’s ready, a button will be available for easily launching a browser to connect to the web UI for the appliance.

    Watch this space. We have some cool things we’re planning.

  • Paravirtualization

    Paravirtualization is getting a lot of buzz. A paravirtualized kernel performs better in a VM than a non-paravirtualized kernel. The VMI interface we helped to create is now a part of version 2.6.20 of the Linux kernel. Ubuntu Feisty ships with this kernel, meaning it should perform better in a VM when paravirtualization is enabled (in VM Settings -> Advanced).

  • Better Linux look-and-feel

    The icons in the Linux version of Workstation got a complete makeover. We’re now following the Tango style for all icons, including the launcher icons. We’ve released most of these icons (the ones that don’t include trademarked logos) under the Creative Commons license. People are welcome to use these icons in their programs and icon theme designers are also welcome to provide alternatives in order to better style Workstation and Player.

Of course, a lot more went into this release than just the above features. It’s been a huge effort and I’m personally pretty happy with the result. A big thanks to everyone who’s worked on this release and to the people who helped keep me sane at 2 in the morning during our crunch times :)

Also, a big shout out to the developers of VMware Fusion, the new virtualization app for MacOS X. They’re working hard to produce some awesome features and are undergoing their own crunch time right now. If you’re a Mac user, you might be interested in reading the CompFusion and Infusion blogs by a couple of our Fusion developers.

VMware Workstation 6 RC2

Release!

Well I dropped the ball on this one, but we released VMware Workstation 6.0 RC2 last week. This is our second release candidate, and for those using our betas in the past, you should know that that means a final release isn’t too far away!

Not much has really changed in RC2, aside from more bug fixes. We’ve taken care of a lot of critical issues that have affected some users and ourselves. If you used the Workstation betas in the past and haven’t tried an RC release, you should notice a huge speed increase when using the guest. Feels a lot more native with all that debugging turned off.

The betas are of course free to use, but Workstation 6 itself must be purchased. If you’re in school, you should be able to get a nice academic discount, and if you’ve bought Workstation 5.5 since January 1, 2007, you can get a free upgrade.

Desktop Integration

One of my personal goals has been to improve integration with the GNOME desktop. I feel we’ve made a lot of progress since Workstation 5. The big highlight of 6 has been the Tango icons (I’m biased, as I made most of them). Even the product icons on Linux are in Tango style now. This definitely cleans up the look and feel of the product and helps it to feel like it’s just any other GNOME app, rather than some big proprietary product half-ported to Linux (of which there are many).

There’s more that we could do, though. I’d like to hear from GNOME developers and users about other ideas to better integrate with the desktop.