ThingWorx WebSocket-based Edge MicroServer (WS EMS) and Lua Script Resource (LSR) > Downloading and Installing ThingWorx WS EMS > ThingWorx WS EMS and LSR Distribution Contents
  
ThingWorx WS EMS and LSR Distribution Contents
When unzipped, the WS EMS distribution creates the folder, <package_name>/microserver (Linux) or <package_name>\microserver (Windows). The following table lists the files at the top level and then the subdirectories and their contents. Note that the paths use Windows notation.
Item
Description
Files
wsems.exe (Windows) or wsems (Linux)
The WS EMS executable that is used to run the Edge MicroServer.
* 
Linux users must be granted permissions to this file wsems.
If you require FIPS support on the supported Windows platforms (win32), make sure you have the OpenSSL package.
Linux - libcrypto.so.1.0.0 and libssl.so.1.0.0
OpenSSL shared libraries for Linux.
Windows - libeay32.dll and ssleay32.dll
OpenSSL Shared Library DLLs (dynaimic linked libraries) for Windows.
Windows - luaScriptResource.exe
Linux - luaScriptResource
The Lua utility that is used to run Lua scripts, configure remote things, and integrate with the host system..
* 
Linux users must be granted permissions to the luaScriptResource file.
If you require FIPS support on supported Windows platforms (win32), make sure you have the OpenSSL package.
Subdirectories
\doc\
Directory that contains the release notes (PDF) and this document, ThingWorx WebSocket-based Edge MicroServer (WS EMS) Developer’s Guide for this release (also a PDF). Also contains the files for the luadoc that provides assistance with the Lua Script Resource.
\doc\lua\
Subdirectory that contains the luadoc for the Lua Script Resource.
\etc\
Directory that contains configuration files and directories for the luaScriptResource utility.
\etc\config.json.documented
A REFERENCE file that contains all of the configuration options available for the WS EMS plue comments to guide you through the options.
* 
Do not attempt to use config.json.documented to run your WS EMS. It is intended as a reference. It is NOT as a valid JSON file that you can use to run WS EMS
\etc\config.json.complete
A valid JSON file that contains all the configuration options available for the WS EMS.
\etc\config.json.minimal
A reference file that contains the basic settings that are required to establish a connection.
\etc\config.lua.example
A reference file that contains a basic configuration for the luaScriptResource utility. A config.lua file is required to run the Lua engine.
\etc\community\
Directory from which third-party Lua libraries are deployed. Examples of these libraries include the Lua socket library and the Lua XML parser, .
\etc\custom\
Directory that will contain your custom scripts and templates.
\etc\custom\scripts\
Directory from which custom integration scripts are deployed. It also contains an example script, called sample.lua.
\etc\custom\templates\
Directory that contains an example template, called config.lua.example, and that is used to deploy custom templates.
\etc\thingworx\
Directory that contains WS EMS-specific Lua files that are used by the Lua Script Resource (LSR). Do not modify this directory and its contents because an upgrade will overwrite any changes.
\install_services\
Directory that contains the install.bat file for Windows bundles or the following files for Linux bundles: install, tw_luaScriptResourced, and tw_microserverd. The install scripts will register the WS EMS and LSR as services on Windows and daemons on Linux. For information on running the scripts, see Running WS EMS as a Daemon (Linux) or as a Windows Service or Running as a Service.