Next: , Previous: , Up: Welcome to The Machine Emulator   [Contents][Index]

1.2 Supported Hosts

One of the major goals of TME is to work on as many hosts as possible. This is done by design when test machines are available, but it is obviously impossible to cover all platforms, even the major ones. Nonetheless, I have tried to cover Linux & the major BSDs in use today, but resource constraints & time considerations limit the testing to just a few as follows -

  1. NetBSD - the original host platform of choice for developing TME. Runs on the most host machine platforms. Now includes support for autonat using NPF. A source package has been added to their pkgsrc-wip repo under tme. See the pkgsrc-wip project page for more info on using it to install and try out source packages.
  2. OpenBSD - the most secure OS and arguably the hardest to develop for as well. If it works here, it should work anywhere.
  3. FreeBSD - the most popular BSD. Good for getting the word out.
  4. PC-BSD - a FreeBSD derivative with a user-friendly graphical interface. Very nice for beginners, but powerful enough for advanced system administrators.
  5. DragonflyBSD - a BSD with many modern features. A good testbed for trying out optimizations.
  6. Fedora Linux - For now, the only Linux testbed, but other distros should follow.
  7. Arch Linux - TME is now available in the Archlinux User Repository! It should install without any problems. See Arch Linux-specific info in the NFTables section below for a caveat, if you wish to use TAP/NAT for Ethernet access.
  8. Windows - Preliminary support for building/running on Windows platforms is provided through Cygwin. It should work out of the box. See below for details. It should also build (natively or cross) on MinGW, and run under the Wine emulator (use –without-x –enable-threads=glib configure options). Preliminary Ethernet support is available for Windows, using OpenVPN.
  9. Other - It should work on any POSIX platforms, sans whatever features aren’t available on them. Illumos (a free version of Solaris) is one example that has been tried, but doesn’t provide Ethernet support, yet. OS X has NOT been tried, but it should be fairly simple to port to that platform.

Another goal is to work on the latest versions of all these & more. Expanding to other platforms is highly encouraged, and any successes or patches to make it work on others is encouraged. Please send any patches or info about other platforms to As it expands, we would like to incorporate any core patches that expand functionality to other platforms, while keeping the others working. This requires a constant QA cycle across all supported platforms, so may not always be possible. In particular, any expansion should not break existing functionality on a known-good host. This is another goal.

It should be relatively easy to install directly from a source tarball (see below) on any of the hosts mentioned above. Every effort has been made to make this possible with minimal fuss and no extra configuration. Another one of the main goals was to make this as self-contained a package as possible. No other tools should be needed outside of the initial build process to get tmesh working. All configuration is done with the tmesh scripts to keep things as simple as possible.

Packages may be made available at some point for some of the hosts above, but should download original source from the site(s) documented below. The original TME package (which stopped at 0.8 as of this writing) is still packaged on most of these platforms.

Next: , Previous: , Up: Welcome to The Machine Emulator   [Contents][Index]