Skip to content
Nim bindings for the Oculus VR SDK.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Nim bindings for the Oculus VR SDK.

oculus Logo


This package contains bindings to the Oculus SDK (libovr) for the Nim programming language. Oculus provides virtual reality head-mounted displays and positional tracking devices, such as the DK1, DK2 and GearVR.

Supported Platforms

This package is still under heavy development and may not fully work yet. The following platforms have been built and tested with the Oculus SDK 0.4.4 Beta:

  • Linux
  • Mac OSX
  • Windows


To compile the bindings in this package you must have libovr, the Oculus VR SDK library, installed on your computer. Users of your program need to install the device drivers, which can be downloaded from the Oculus web site.


If your Linux distribution includes a package manager or community repository, it may already have pre-compiled binaries for both the Daemon and the SDK. For example, on ArchLinux the driver, udev rules and SDK are available in AUR (see ArchWiki for details).

Alternatively, you can download and install the SDK from the Oculus developer web site.


The Mac OSX version of the Oculus SDK currently only includes a static library. You need to acquire dynamic libraries for libovr before you can run programs compiled with this package.

At this time there are no pre-compiled libraries available online, but you can clone jherico's modified Oculus SDK from GitHub and build them yourself. cmake is required to compile libovr, and the easiest way to install it is either via MacPorts:

port install cmake

or via Homebrew:

brew install cmake

Then acquire and compile the modified Oculus SDK as follows:

git clone --recursive
cd OculusSDK
mkdir .build
cd .build
xcodebuild -target ovr -configuration Release

The .build/output directory should now contain a libovr.dylib file, which can be copied into your program's folder.


The Windows version of the Oculus SDK currently only includes static libraries for use in Visual Studio. You need to acquire DLLs for libovr before you can run programs compiled with this package.

The easiest way is to download [JSPenguin's precompiled DLLs] ( and rename the files to libovr.dll, libovrd.dll, libovr64.dll or libovr64d.dll, depending on which configurations you wish to build for (32- or 64-bit, debug or release).

You can also clone [jherico's modified Oculus SDK] ( from GitHub and build the DLLs yourself.


This package does not have any dependencies to other Nim packages at this time.


Import the ovr module from this package to make the bindings available in your project:

import ovr


Please file an issue, submit a pull request or email us at if this package is out of date or contains bugs. For all other issues related to Oculus devices or the device driver software visit the Oculus web sites below.


You can’t perform that action at this time.