Uninstalling TinyOS

There are two cases: uninstalls of old (1.0, or hand-built) installations, and uinstalls of TinyOS 1.1 or later. These are covered separately.

Uninstalling TinyOS 1.0, or hand-built install

On Windows, if you installed using the Installshield Wizard, use the Remove option under Add/Remove Programs -- save your work first. Don't worry about incomplete removal, but do delete any left over files.

If you use Linux, didn't use the installshield, or installshield removal failed, remove the following items manually:

Cygwin Uninstallation

Remove the following items to fully uninstall cygwin:

Unistalling TinyOS 1.1 or later

On Windows, if you used the InstallShield Wizard, you can just use the Remove option under Add/Remove Programs. See the discussion below on what to do if this fails (which shouldn't happen under normal circumstances, but can occur after failed installations or if some files are moved manually after installation).

On Linux, and on Windows when not using the installshield, you can simply remove all the rpms (with explicit rpm -e commands). On Windows, you might want to remove cygwin too (see cygwin uninstallation).

In all cases, you may find some files left behind in /opt/tinyos-1.x or <installation root>\cygwin\opt\tinyos-1.x, you can delete these if you wish.

HOW TO RECOVER FROM INCOMPLETE TinyOS 1.1 INSTALLSHIELD UNINSTALLS

It is possible for the TinyOS setup to enter a mode where it attempts an uninstall, fails for some reason (most often the cygwin directory has been moved since installation, and now it cannot be found to uninstall the TinyOS RPMs), yet remains installed. Sometimes the Installshield setup will fail during installation for some reason (perhaps because the user had insufficient privileges, for example). Sometimes the Add/Remove Programs uninstall does not complete. In either case, the end result is that the setup continues to attempt uninstall, fails, attempts uninstall, fails, attempts uninstall...

One way to recover from this state is to reinstall cygwin manually so that the uninstallation can succeed, complete the uninstallation, and then re-install TinyOS. You can do this as follows:
  1. Don't worry about older, incomplete tinyos-1.x version (1.0) uninstalls
  2. Delete all previous tools (see list above)
  3. (Re)install cygwin. You can download the cygwin setup program used for TinyOS 1.1.0 from
  4. http://webs.cs.berkeley.edu/tos/dist-1.1.0/tools/windows/tinyos-cygwin-auto.zip
    Using winzip, unzip the archive and execute the setup.exe file. When asked to 'choose a download source', select 'Install from local directory'. When asked to select the root install directory, do not modify the given root directory but do take note of the default directory because later you will need to reinstall TinyOS into this directory (step 5). Take the default local package directory. Accept the defaults on 'Select Packages'.
  5. Using the Add/Remove Programs UI, run Installshield to complete the *un*install. Note that the setup wizard will launch black bash shells for each RPM that it uninstalls. These windows might display an error at the top of the window -- this is normal.
  6. Completely remove the cygwin installation (see steps above)
  7. Run the 1.1.0 Installshield setup again to install; SPECIFY THE  SAME DIRECTORY as the initial, failed install.