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.

libsexy v0.1.11 released

We just put out a new bugfix release of libsexy. A number of important SexyUrlLabel changes went in, so please upgrade, as notification-daemon and xchat-gnome both use this.

As always, the latest version is available on the libsexy page or in the download directory.

Release notes:

  • Fix a typo in SexyUrlLabel that was causing the widget to never be marked as unmapped, which prevented it from re-mapping the event window when the widget was shown again. (Bugs #364030 and #353946)
  • Fixed the cursors to properly indicate whether the text was selectable.
  • Get rid of the unused SexyTooltipPriv structure to fix building on Solaris. (Bug #378066)
  • Remove some debug output from SexyIconEntry and SexyTreeView. (Bug #355129)

VMware Tango Icons รขโ„ขยฅ Creative Commons

The VMware Workstation 6 betas have been out for a while now, so I’m sure those using it have noticed that we’ve been trying to make our icon theme fit in with the Tango icon style (well, to the best of my current abilities). So far this has proven to be a dramatic improvement over our older icon style used in Workstation 5.x, and it really fits in a lot better on modern GNOME desktops. The overall look feels clean and polished, mostly thanks to the hard work of the Tango project.

We’ve been lucky in that the Tango project has provided such a good variety of high-quality icons. I haven’t had to do nearly as much work as I expected in designing these icons. There were several existing VMware icons that we needed to move to the Tango style still, such as power icons, USB, serial port, message log, etc. Just a handful, but while many of them may be somewhat VMware-specific, there are some that we felt could be useful to other software projects, icon designers, and, perhaps, to Tango itself.

So we’re releasing our non-trademarked icons (everything the lawyers are okay with) under the Creative Commons Attribution-ShareAlike 2.5 license. It’s only fair that we give back, afterall. There will be a dedicated page for this later, but for now, you can download it directly from here:

Download: vmware-tango-icons-0.5.tar.gz

You can see what we currently have available in the image below. I’ll put out updates as we come up with new icons and tidy up some of the remaining ones that we still want to release.

Thanks again to the Tango project for all your work in making the Linux desktop a more beautiful place, and if any of these icons look at all useful to the project, please feel free to use them, modify them, or have me tweak them.

VMware Tango Icons

New libnotify and notification-daemon releases are out!

I’ve just put out libnotify 0.4.4 and notification-daemon 0.3.7 releases. I highly advise that everybody upgrades, as several memory leaks, rendering glitches and other bugs have been fixed.

Along with these releases is some basic support for accessibility in the notifications and a nice, subtle transparent effect on the notifications when running on a system using a compositing manager. Don’t worry, it’s not bad at all, and it doesn’t make the notifications any harder to read. I’ve been running this for some time at this point ๐Ÿ™‚ I would show a screenshot, but it’s probably best to see it on your own setup.

The downloads are available on the downloads page, and full release notes are below:

libnotify 0.4.4 changes

  • Fixed a bug where a notification’s ID could be reset when a different notification was closed. Patch by jylefort. (Bug #94)
  • Fixed a crash when the D-BUS proxy was not being freed on notify_uninit, which was problematic when used in a loadable module. (Bug #92)
  • Fixed a crash when a signal handler for the notification’s closed signal caused the notification to be destroyed. (Bug #116)
  • Fixed memory leaks when creating notifications. (Bug #112)
  • Fixed potential memory leaks where the function passed to notify_notification_add_action to free the user data was not being called. (Bug #119)

notification-daemon 0.3.7 changes

  • Fixed a compatibility issue with dbus-glib 0.72. Patch by Pawel Worach. (Bug #95)
  • The background of the window in the standard theme is now just slightly transparent when compiled against GTK+ 2.10 and when using a composite manager. Patch by Matt Walton. (Ticket #110)
  • Fix several rendering glitches with the borders in the standard theme.
  • Fix a memory leak when removing a notification. Patch by Sven Wegener. (Bug #105).
  • Added initial accessibility support with the standard theme engine.
  • Clicking anywhere in a notification should now close the notification. This was happening only on the body text sometimes.

VMware Workstation 6.0 beta 3

We’ve just put out VMware Workstation 6.0 beta 3. As per the ancient traditions set forth by the VMware founders, we decided to make this release awesome. I’ll go over a couple of my favorite, but for the rest, read the release notes.

  • Record/Replay

    Workstation 6 beta 3 is the first release to support our new Record/Replay functionality that we mentioned at VMworld. Essentially, it allows for making a recording of (almost) everything that happens to a VM between the time you hit Record and the time you hit Stop. This is not a movie recording, but more of an execution recording. You can play it back however many times you like.

    What is this good for? Well, have you ever tried testing a program only to encounter a bug that you just can’t reproduce? Maybe there was some memory corruption that happened under some specific case that you just can’t seem to diagnose. Or maybe it’s a network packet that came in in some form that your application didn’t expect. Under normal circumstances, you’d have to do a lot of guesswork in order to find out what exactly happened. Far too often, it’s just too hard to reproduce the bug and it goes unfixed for some time.

    Now imagine instead that you’re testing the program in Workstation and, before your testing, you hit Record. You attempt the test and the program crashes in some weird manner. No problem. Hit Stop and replay the recording. Just before the crash occurs, stop the playback and attach a debugger. Messed up? Didn’t find the cause? Replay that recording again.

    It should be pointed out that these recording logs take up a lot of space, so you don’t want to keep too many around. Also, the feature is very experimental, so don’t be surprised if there are problems. Some things are not yet supported, like 64-bit guests, Virtual SMP, and certain devices (USB, for example). We plan to change the UI around a little bit, and it’s likely that future Workstation releases will improve the usability and usefulness of this feature.

  • Debug guest apps from the host using Eclipse

    We now offer the ability to debug applications inside the guest from Eclipse on the host. This provides for a nice sandbox for the application. Your app can crash the computer during a debug session and your host won’t even feel it! There’s a good blog post from the developer of the Eclipse support discussing this feature and some of its many uses.

  • Fullscreen improvements

    A previous beta introduced the new combined Fullscreen mode. We used to have separate Fullscreen and Quick Switch buttons on the toolbar, each useful for certain purposes. The new combined mode is closer to Quick Switch, but until now has missed the nice aspect of Fullscreen where the image would actually by the size of the monitor (due to changing the screen resolution).

    Now, when in fullscreen, you have the option of changing the view mode (from the drop-down toolbar). The guest resolution can be changed to match the host’s screen resolution, the guest can be stretched (emulating the original fullscreen), or the guest’s screen can be centered on the monitor.

  • Tab dragging

    The Linux UI now supports tab dragging, thanks to the new support in GTK+ 2.10 and some hacks to get around some bugs. Combined with the multiple window support we put in a previous beta, you can now have as many windows open as you like and drag and drop VM tabs between them. While not a major feature itself, it is a nice usability thing we’ve wanted to do for a while now.

  • Many many bug fixes

    The new feature list may not be huge, but at this point in the beta cycle there shouldn’t necessarily be a lot of new features. So what have we been doing? Why, fixing just tons of bugs of course. A lot of crashers have been fixed, work has gone into improving multiple monitor support, the UI has improved in various areas, and code has been cleaned up. All in all, we’re in good shape, and will be mostly staying in bug fix mode until the final release to ensure that the result is a product we can all be proud of.

I should also point out that if you are not a Workstation user but have been contemplating a purchase, you don’t need to wait for Workstation 6. You can now buy Workstation 5.5 and get a free upgrade to 6. This only applies to new purchases, so if you’ve been a Workstation 5 user for a while, you’ll have to purchase 6 separately.