OSVR-Config is a utility to configure the OSVR Server, and gives you access to a few OSVR-related tools.
Short video showing how to use the utility is here.
Download the latest OSVR-Config build here.
- OS Notes:
- Ubuntu users may want to stick to the long-term support release (14.04). You may see errors running the latest 15.* or 16.* versions.
- Install CoreCLR tools
- We are now using the CoreCLR RTM version, including the new dotnet command line tools.
- Click here for instructions on installing CoreCLR for your platform.
- (Linux) Don't forget to run the script provided to uninstall previous versions of dotnet command line tools (dnvm/dnx).
- If you are using Visual Studio, you will need Visual Studio 2015 Update 3 with .NET Core 1.0.0 - VS 2015 Tooling Preview 2 installed.
- See this note about installation issues with this version.
- Note: you don't need VS 2015 or the extension if you're going to be building from the command line and using another editor like VS Code or Atom.
- Install NodeJS from here
- We're currently running with the
4.4.1 LTS
version. The5.5.1 Stable
version may also work, but this is untested. - NOTE: Depending on where you have NodeJS installed in Linux, you may need to prepend
sudo
to some of the npm commands with '-g'. If you get a permission denied error, try running withsudo
. - The version of
npm
installed with NodeJS is always out of date. Runnpm update -g npm
to get the latest version. Otherwise somenpm
dependencies may squawk at you that yournpm
version is out of date.
- We're currently running with the
- Various global npm tools needed for the frontend build
npm install -g bower
- Used by the prepublish script to get the latest frontend dependencies.npm install -g gulp
- Used by the prepublish script for frontend build tasks.npm install -g tsd
- (Optional) You may use this to install new TypeScript typings or update existing ones (not often used).npm install -g rimraf
(Optional) I only recommend this on Windows, and only with great caution. rimraf will delete directories recursively. It's only useful on Windows because it bypasses all the long file path issues introduced bynpm
'snode_modules
folder. Please be careful - it does not prompt you for confirmation.- Windows users: There's a script in
devtools
that will handle updatingnpm
and installing just the required global tools for you.
If you'd like to help with development, and not just build the project:
- Visual Studio 2015 Update 3, and with .NET Core 1.0.0 - VS 2015 Tooling Preview 2 installed.
- Visual Studio Code (with C# extension installed). You may need to build from the command line.
- Atom.io (with C# and TypeScript extensions installed). You may need to build from the command line.
- Run the
build_release.cmd
(Windows) orbuild_release.sh
(Linux/OS X) script.- This will do the same thing as the following section: download backend NuGet packages, install frontend dependencies, build the frontend, then publish.
- Set your working directory to the
src/ConfigUtil
directory in this project. - Run the following to download backend NuGet packages:
dotnet restore
. - Run the following:
dotnet publish -o artifacts --configuration Release
- This will install frontend dependencies and build the frontend prior to publishing.
- Visual Studio's CoreCLR/ASP.NET and Web tools extensions are all integrated into the IDE.
- In the Run button dropdown, ensure that
OSVRConfig
is selected. This makes the backend run as a standalone server. Avoid using IIS Express. - The build, debug, and clean commands in Visual Studio will build both the frontend and the backend.
- In the Run button dropdown, ensure that
- Once you've published the application with
dotnet
, you should have aOSVRConfig.exe
(for Windows) and/or aOSVRConfig
binary (for Mac/Linux) located in theartifacts/bin
directory within this repository's root directory. Run this to start the backend. - Once the backend is running, go to http://localhost:5000 in a browser to start the application.
At present, this utility is branded "OSVR by Sensics". If custom versions are desired, feel free to change the branding.
The creation of this utility focused on functionality, not GUI. Suggestions or improvements to the look and feel are very much welcome.