Who we are

We are the developers of Plastic SCM, a full version control stack (not a Git variant). We work on the strongest branching and merging you can find, and a core that doesn't cringe with huge binaries and repos. We also develop the GUIs, mergetools and everything needed to give you the full version control stack.

If you want to give it a try, download it from here.

We also code SemanticMerge, and the gmaster Git client.

Running Plastic on Ubuntu

Tuesday, September 16, 2008 Pat Burma 6 Comments

What would you think is harder to do? Run a .NET Client/Server application through mono on Linux or install Ubuntu on Microsoft's Virtual PC?

The answer is installing Ubuntu (or any Linux) on Virtual PC. It happens to be pretty difficult and there are a lot of blogs, user forums, and web sites that have helpful information on how to get it done. Using a combination of about 3 different sites I was able to get it running, but was never able to change my resolution to past 800x600.

I like to use VPC over a VMWare player image because I like to have control over the installation itself which requires purchasing VMWare instead of using the free VPC. It only cost me a migraine. I do like VMWare, I just like managing my own installs more.

Running Plastic SCM on Ubuntu is rather easy but there are a few system requirements that need to be satisfied before both the client and server can run. First Plastic requires mono. The vanilla desktop install of Ubuntu happens to include mono by default so no problem there. Plastic also required FireBird which is not a default element install on Ubuntu and probably not a default package on most Linux installations.

FireBird is a cross-platform RDBMS, you may remember it as a form of InterBase that Borland open sourced a number of years ago. If you visit the FireBird web site you will find download packages for Linux but it is much, much easier to use the built in Synaptic package manager for Ubuntu. If the package list is up to date you can do a search for "FireBird" and download and install this package. The great thing about package managers like Synaptic is it includes all the dependencies automatically and there where several that I needed to run FireBird.

After the FireBird server and it's dependencies are installed then I run the Plastic installer on Linux. The last step in the installation will ask if you want to run and configure Plastic. These options are enabled by default and if you keep them on then the Plastic server will start for you automatically (it will also start after a reboot).

The Plastic install on Linux includes a bunch of Windows dll's and exe's but we do not need to worry about these files. Included in the install are some handy shell scripts that will launch the Plastic executable with the proper mono arguments. The client script is called simply "plastic" so to launch the client use the command:


That is using the default location of course, and this same path can be used when setting up a desktop icon.

Oh and if you want to run Ubuntu on VPC then try here for Fedora users try here.


  1. "I like to use VPC over a VMWare player image because I like to have control over the installation itself which requires purchasing VMWare instead of using the free VPC. It only cost me a migraine. I do like VMWare, I just like managing my own installs more."

    This strikes me as a highly erratic sentence. I wasn't completely convinced what you are trying to argue there (both opposites seem plausible). However, the elements of your arguments seem very easily refutible.

    As for guest installs: VMWare and VPC offer the same level of control.

    As for host installes, VMWare offer far better control than VPC (VPC=msi, take it or leave it, VMWare comes with perl-based install scripts that actually let you compile your own tuned virtual network drivers, configure virtual networking etc. etc.). Ever tried upgrading from VPC 2004 to VPC 2007? Tough luck if your machine was in saved state and you don't have a running VPC 2004 lying around. Tougher luck if you had incremental disks but the .vud was lost.

    VMWare has better interoperability (wellknown standard for disk images e.g.).

    Sounds like a VMWare advocate? Nope: I use Xen and VirtualBox exclusively.

    I'm only pointing out that the gripes you mention indicate to me a lack of experience with both VPC and VMWare... Unless of course I missed the point (which only begs the question, what was it?).

    You may seriously want to consider VMWare Server (free), Microsoft Virtual Server (free), Sun VirtualBox (free/partially open source).

    PS. I'm referring to free versions of said packages, though admittedly you could catch me using the free non-ose edition of VirtualBox in my dayjob.

  2. I use VMWare Workstation daily and I'm pretty happy with it.

    And, at Codice, VMWare is extensively used for testing purposes (big number of different OS combinations being tested release after release with Plastic)

  3. Also, it is important to note that to install Plastic on Linux you don't need to install Firebird or Mono since all required components are bundled in the installer.
    And, the dlls are not windows one but mono libraries...

  4. Amber, I prefer VMWare over VPC but I didn't have a licensed copy handy which is why I went with VPC as opposed to using VMWare Player and a downloaded pre-configured iso.

  5. Hey Pat.

    VMWare Server is the way to go for that case (free and able to create VMs quite easily). The big benefit is that you can later migrate those VMs to VMWare Workstation or whatever.

    Will get back to you on the 29th as promised.. ;-)


  6. I use kvm/qemu on ubuntu to run windows 200x :) or ie7 vpc image
    I used in the past virtualbox/vmware
    but the future is kvm

    I use another ubuntu kvm/qemu for testing new versions on mono and not to mess with my sistem
    Now i'm fighting with testing mono 2.0 and firebird 2.x

    If you wan't to start with firebird2.1 in ubuntu/debian here is my guide