Eclipse sensiNact is provided by Eclipse. This middleware is based on OSGi.

Requirements:
‾‾‾‾‾‾‾‾‾‾‾‾‾
- At least Java 7.

Profiles Management:
‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
To avoid installing a lot of bundles in the OSGi environment, sensiNact provides a mechanism to load only the required bundles.
The profiles correspond to the folders in the load/ directory.

For Windows:
‾‾‾‾‾‾‾‾‾‾‾‾
1.  Open the explorer and go to the sensinact distribution folder
2.  Run sensinact.bat
2a. Choose the profiles to activate
2b. Launch sensinact with the current profiles

For Linux:
‾‾‾‾‾‾‾‾‾‾
1.  Open a terminal et go to the sensiNact distribution folder
3.  Change permissions on sensinact file: chmod +x sensinact
3a. To launch sensiNact, run ./sensinact
3b. To change current profiles, run ./sensinact -c
3c. To access help, run ./sensinact -h
