libview 0.5.3/0.5.4 released

Today, we released libview 0.5.3, with some awesome new widgets, such as FieldEntry and IPEntry. A short while later we released 0.5.4, which was a small bug fix release. It’s a really cool release/set of releases, and I think people will find FieldEntry/IPEntry interesting, as I haven’t seen anything like that in the GTK+ world yet.

I spent the past hour writing some documentation on what exactly libview consists of, complete with screenshots. It’s available on the Widgets and Classes page on view.sf.net. I hope this is of interest to some people.

Assuming people are lazy, though, I’m posting screenshots of the new widgets below:

FieldEntry
IPEntry

libview 0.5.3/0.5.4 released Read More »

VMware Player – What’s the catch?

There has been a lot of excitement about VMware Player on Slashdot and other sites. I’ve also seen many people talk about it on IRC and some have messaged me with questions. Namely, what’s the catch? Why give away our virtualization platform? Are the VMs DRMed? Will they expire? Do they not work as well as in Workstation?

There’s no catch. This is the same virtualization platform we use in Workstation. The VMs are the same VMs. They won’t expire. They should work just as well in the Player as they do in Workstation.

Now, Workstation does have a number of features that take advantage of what virtualization can do. The Player does not have many of these features. Examples include multiple snapshots (which is an awesome feature, as many Workstation users will tell you), cloning, VM creation, and teams. It does suspend, however. If you close the Player while a VM is running, it will suspend. The next time you start it up, it will be in exactly the same place as when you left it.

Now, as to the question of why we’re doing this. Eventually, virtualization will be everywhere. Microsoft has said that Longhorn will contain (someday) contain virtualization support. Xen is another virtualization platform that someday will be available to all users for the tasks they need. Virtualization won’t be the interesting thing of tomorrow. What you do with it will be. For example, let’s look at multiple snapshots again. You can create snapshots of various configurations and sofware installations in your VM and then at any point revert back to one. If you’re about to upgrade your Windows XP VM to SP2, you can snapshot before the install. If things go horribly wrong, you can revert to that snapshot, and be exactly where you left off.

ESX’s VMotion is another example. With VMotion, you can move, say, a running database VM from one physical computer to another with no interruption. This is important for enterprises who may have to deal with a hardware failure. If a piece of hardware on the physical server is starting to go bad, you can move the running VMs to a good piece of hardware without any downtime at all. There’s more information about VMotion on the Virtual Center FAQs page.

Those are two very cool uses of virtualization, and there are many more that you will see in time. So, the platform, while still very important, no longer becomes the interesting part of it. It’s what virtualization allows you to do that just wasn’t possible or was very difficult before.

The other major question I have received is about third party software to create or modify VMs. Is this allowed? Will VMware go after you? I should make it clear first that I don’t speak for VMware in this post, and that everything stated is of my own opinion. Standard disclaimer, etc. Now, if you want to create or modify VMs, you can still get the free trial of Workstation and use that. Hopefully you’ll see all that it has to offer and buy it 🙂 If you’re a student, you can usually get discounts, and they’re often given out at VMware conferences. I hope that Workstation offers more value to most people than just being able to create VMs. That being said, I don’t believe we’d go after anybody that created such tools. (Insert standard disclaimer again 🙂

If you haven’t tried Workstation 5.5 beta yet, though, give it a try and see if it’s worth it first. It’s an awesome product.

So, yeah, in summary, no evil ulterior motive, just like there wasn’t with the release of libview, which is our cool widget library, built upon the wonderful gtkmm (like the rest of Workstation and the Player). We try to be a good company.

VMware Player – What’s the catch? Read More »

There’s a new player in town

I apologize for the subject line.

VMware announced today at VMworld 2005 the VMware Player for Windows and Linux. It’s a free program that allows users to use VMs without needing to purchase Workstation. It’s not a substitute for Workstation, as it won’t allow you to create or modify VMs or to snapshot them, but it’s still very useful. You can download VMs that others have created, such as from our collection of VMs on VMTN.

The Linux version of the Player was written mainly by Philip Langdale. He talks a bit more about it in his blog.

Included below are a couple of screenshots of the Player in action.

VMPlayer
Windows 2000 VM
Fedora Core 4 VM

Updated: The Win2K thumbnail now actually points to the Win2K screenshot. Hey, look! The Incredible Machine!

Update 2: If you tried posting a comment on my blog, but had trouble, try again. It should all be sorted out now.

There’s a new player in town Read More »

Widgets are bendable, flexible slabs of fun

I’ve been hacking on another sexy GtkEntry subclass, but this time, it’s not part of libsexy. It’s part of libview, VMware’s Incredibly Exciting Widgets. One of our developers built an IP Entry widget a short while ago, but it had some issues and just felt hard to use. I’ve never liked IP entries, particularly the windows ones, as they just felt too rigid and limiting. I always felt that I had to learn how to work for the widget instead of the widget working for me.

So I set out to do this right. I created a FieldEntry widget that is a GtkEntry subclass for displaying fields and validating fields. Users see delimiters spaced out evenly across the widget, just far enough for the content they are to display. Each field is center-aligned (this will be customizable in subclasses soon). The IPEntry subclasses this.

Now, the Windows IP entry are annoying for several reasons. I would like to list them now:

  • You can’t copy or paste an IP address. You can only copy or paste one field of the IP address.
  • Typing three digits in a field automatically jumps to the next field. If you made a mistake, you have to move the cursor to the left field and retype.
  • Clicking inbetween fields causes the very first field to be selected.

I know there are others. I’m just tired.

So, I’ve addressed all of these. Copying and pasting work beautifully. When you type three characters of an IP entry field (or maxFieldWidth of whatever the FieldEntry has set) it doesn’t jump to the next field. However, if you start typing the next number (which is what you do on the Windows one) it will then jump to the next field and insert the text. Typing the delimiter (‘.’ on IP entries) will jump as well. Backspacing just works, even across fields. Clicking inbetween fields moves to the nearest field. And much more!

Bottom line: It feels natural to use. It’s there largely as a visual aid, and to allow you to easily get to fields, and such. But it doesn’t force you to type in a certain model. If you’re used to the Windows one, this will feel natural. If you’re used to just typing an IP address into an entry, this will feel natural. I’m quite happy with this one.

Now, it’s written in C++ for GTKMM, so if you want to use it in your C program, you’ll have to port it. I would love to see any ports that people wish to do, but mainly, I’d want to see this in GTK+ someday. We’ll see.

It’s available in libview cvs on SourceForge (see the link above) in the “staging” branch (as it’s pending review for inclusion in HEAD). Please, if you find any bugs or have usability issues, I’d love to know them.

Update: As requested, a screenshot!

IP Entry

Widgets are bendable, flexible slabs of fun Read More »

SexyIconEntry is now 67% sexier

The original GTK+ IconEntry widget has just gotten sexier!

I was in need of SexyIconEntry today for some work, and decided now was a good time to fix some of the problems I haven’t taken the time to fix in this widget, and add some features at the same time. To start with, SexyIconEntry now works correctly in all themes I have tested. Clearlooks’s GtkEntry border is no longer cut off, for instance. Also, the ability to put an icon on both sides has been added. See the sexy screenshot!

Such a sexy screenshot

And remember, this is an actual GtkEntry! Anything you can do to a GtkEntry, you can do to this.

I’m adding more features, like the ability to add a clear button with one API call, and icon drag-and-drop support, to the widget. It will be in an upcoming release (possibly tonight or tomorrow morning), along with some other nifty features in other widgets.

By the way, isn’t it about time we replace the asterisk in masked entries with that unicode character for the round filled circle (“●”)? The asterisk is so 1980s.

SexyIconEntry is now 67% sexier Read More »

Chippy’s first Boston trip

I’m finally heading to the Boston GNOME Summit! I’ve wanted to go for years, and people have asked me to attend, but due to school and such it was just never possible. However, this year VMware is sending a few of us to go. Alex Graveley, Philip Langdale, my girlfriend Jamie, and myself are all going, and will be there Friday night.

We might give a small talk on our experience in integrating our product with the GNOME desktop, and I’ve been asked by a few people to give a quick talk and demo of Galago with Tomboy, Beagle, Gaim and Evolution integration (and hopefully Gossip at that point too).

I look forward to going and meeting all these great people who I’ve only talked to through IRC and e-mail. It should be a fun weekend.

Chippy’s first Boston trip Read More »

libview has a website!

I’ve been hacking on libview’s new website. It’s not complete yet, but it has links to the downloads, news, some API documentation, SourceForge project page, etc. I just need to set up some form of script for the news page. I may just use WordPress or something, assuming I can get that working on SourceForge.

We’re going to release libview v0.5.1 fairly soon, once we move some more widgets into it and clean up a few things. Test programs and hopefully screenshots will be coming soon (though screenshots don’t do most of the widgets justice, as you really do have to play with them).

libview has a website! Read More »

galago.info is no more, for a while

I discovered last night that galago.info had expired just a couple of days ago. I was a bit shocked by this and looked through my inbox for expiration notices, but could find none. They may have been caught by the spam filter :(. So, it’s in this state where it’s unavailable for everybody (myself included) for 35 days. After 35 days, it’s available for purchase again. I could pay $90 to get it back now, it turns out, but that just seems too much for the domain.

So, I’ve moved to galago-project.org. Please update your bookmarks and check out the new svn repository. This covers all galago work and all notification work. Sorry for the inconvenience. It sucks.

galago.info is no more, for a while Read More »

The view looks good from up here

Woot! We finally released libview, VMware’s Incredibly Exciting Widgets! This has been very long planned, but it’s finally out. libview consists of many of the useful generic widgets we use inside the VMware Workstation code base. We have 16 widgets and one utility class currently in there, and have a list of widgets we plan to move into libview.

Now, this is not just a code dump, like some other companies have done. We will not be developing these widgets any further inside our own tree at VMware. libview on SourceForge is where the widgets will be developed from now on. They are under the MIT license, so feel free to use them for whatever. We will be setting up a web page and a listserv and stuff in the near future, and will commit some more widgets, bug fixes, and test apps.

Most of the widgets are written in C++ using gtkmm, so most projects won’t be able to take advantage of them as-is. We expect a lot of people will be re-implementing the parts they need for some projects. However, if you’re a project that uses the excellent gtkmm, these should Just Work (TM).

For a description of what’s included, see Philip’s blog, as he went into a bit of detail.

The view looks good from up here Read More »

*CLANK* *CLANK* *CLANK*

Ah, the sound of a dead drive. That’s what my 200GB Western Digital drive said to me this morning as I rebooted. This was after I realized that I couldn’t access any of my source code. dmesg was yelling at me about having trouble accessing /dev/hde. This drive contained my source code (almost all of which are on remote SVN or CVS repositories, of course) and all my media (audio, video, images).

I just chuckled.

A very short while ago, a matter of weeks really, I had this bad bad feeling that I was going to lose all my data. No real reason, but I started getting very paranoid about it. I looked around and after factoring in cost and laziness, I picked up a 1.0TB Buffalo Terastation, which is a cute little machine. It’s a PPC-based Linux RAID-enabled NAS, basically, with SMB, FTP, and AppleTalk support. After RAID5, I was left with about 700GB. I immediately copied everything I truly cared about to it (media files, basically). While most places sell this for $1000, I found it just over $900 at Comp-U-Plus.

It arrived and I set it up. I have to say, I like it. It just works. It has gigabit ethernet, for when I finally get around to upgrading my network. You just set it up over the web. Users, groups, permissions, mounts, RAID configuration, formatting, diagnostics, optional periodic status e-mails, etc.

One nice thing about the Terastation is that it has 4 USB ports. You can connect a printer to it and have network printer sharing. You can also connect up to 4 USB hard drives and set up a second RAID array, expand the current array, or back up your array. Nice and expandable. It also has support for hooking up to a UPS system, so it can shut down gracefully.

So with the Western Digital drive dead, I shut down, pulled the drive, and rebooted. I then proceeded to play some music and think to myself how glad I was I bought this thing earlier this month.

Now, the Terastation isn’t perfect. My main complaint was that I couldn’t use symlinks, due to SMB not supporting them (or at least this particular version?). That wasn’t a huge deal, considering it’s mostly media files, but I wanted the option, damnit!

I looked around and found a coupel sites on hacking the Terastation. The main one with all the info is a nice wiki at terastation.org. I went to the section on gaining root access and saw that he soldered dip switches onto his Terastation’s motherboard to make the serial port actually usable. I wasn’t ready to do that just yet. Or ever. Maybe if this thing was a few years old and I had another solution.. Maybe.

I checked back today and looked over the firmware pages. It turns out that Buffalo, the makers of the Terastation, provide a zip file with a image.dat, which is just a password-protected zip file containing a tarball and some other stuff. The passwords are available at the aforementioned wiki. The wiki also has some nice instructions on taking an existing firmware image, adding a sudoers file and an ssh server, and repackaging it.

Feeling stupid, I decided to give it a try. I figured that even if I bricked the Terastation, which I very much doubted I would do (given that I was just installing another server and a sudoers file), I would at least still have my drives, so no data loss. I packaged up the new image, compared the old and new tarballs a few times, and then put it back into the firmware zip file. I went over to my Windows machine and ran the updater. It found my terastation and, after a few moments, I clicked the button.

And waited…

And waited…

They really need a little thing underneath the rarely updating progress bar saying, “Don’t panic, everything’s okay, we’re just really slow. Get some coffee, it’s alright.”

I ran back and forth between my work room and the living room and watched as the Terastation rebooted itself a few times (as was documented in the README). Finally it stopped doing that. I stared at it, daring it to blink. It didn’t blink, but it didn’t have the Red LED of Doom, either. I went back to the Windows machine and it happily indicated that the firmware update was successful!

I ran back into the work room and pinged the Terastation. It ponged! I mounted the shares… I could access my files! The worry was over, but the shaking continued for a few minutes still. One last test… I tried to ssh in.

admin@OLYMPUS:~$ 

Huzzah! Life is good.

And now that I have a little hackable Terastation to play with, I think I’ll play with the NFS packages available for this. More to follow, maybe.

Oh, and if anybody has a Terastation and wants a known working hacked 1.08 firmware file, let me know. If it doesn’t work, though, I claim no responsibility whatsoever.

*CLANK* *CLANK* *CLANK* Read More »

Scroll to Top