1 line
11 KiB
JavaScript
1 line
11 KiB
JavaScript
"use strict";(self.webpackChunkstardust_website=self.webpackChunkstardust_website||[]).push([[450],{5680:(e,t,r)=>{r.d(t,{xA:()=>u,yg:()=>h});var n=r(6540);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function o(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?i(Object(r),!0).forEach((function(t){a(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):i(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function s(e,t){if(null==e)return{};var r,n,a=function(e,t){if(null==e)return{};var r,n,a={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var p=n.createContext({}),l=function(e){var t=n.useContext(p),r=t;return e&&(r="function"==typeof e?e(t):o(o({},t),e)),r},u=function(e){var t=l(e.components);return n.createElement(p.Provider,{value:t},e.children)},d="mdxType",g={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var r=e.components,a=e.mdxType,i=e.originalType,p=e.parentName,u=s(e,["components","mdxType","originalType","parentName"]),d=l(r),m=a,h=d["".concat(p,".").concat(m)]||d[m]||g[m]||i;return r?n.createElement(h,o(o({ref:t},u),{},{components:r})):n.createElement(h,o({ref:t},u))}));function h(e,t){var r=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=r.length,o=new Array(i);o[0]=m;var s={};for(var p in t)hasOwnProperty.call(t,p)&&(s[p]=t[p]);s.originalType=e,s[d]="string"==typeof e?e:a,o[1]=s;for(var l=2;l<i;l++)o[l]=r[l];return n.createElement.apply(null,o)}return n.createElement.apply(null,r)}m.displayName="MDXCreateElement"},8663:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>p,contentTitle:()=>o,default:()=>g,frontMatter:()=>i,metadata:()=>s,toc:()=>l});var n=r(8168),a=(r(6540),r(5680));const i={sidebar_position:3},o="Setup OpenXR Runtime",s={unversionedId:"get-started/setup-openxr",id:"get-started/setup-openxr",title:"Setup OpenXR Runtime",description:"This guide will help you set up your VR or AR headset for use with Stardust. Although support for many headsets on Linux is still under active development, there are a number of good options available. If you already have OpenXR set up on your Linux distribution, head to the Full Installation page to get Stardust XR installed.",source:"@site/docs/01-get-started/03-setup-openxr.md",sourceDirName:"01-get-started",slug:"/get-started/setup-openxr",permalink:"/docs/get-started/setup-openxr",draft:!1,editUrl:"https://github.com/StardustXR/website/edit/main/docs/01-get-started/03-setup-openxr.md",tags:[],version:"current",sidebarPosition:3,frontMatter:{sidebar_position:3},sidebar:"tutorialSidebar",previous:{title:"Quick Start Guide",permalink:"/docs/get-started/Quickstart"},next:{title:"Full Installation",permalink:"/docs/get-started/manual"}},p={},l=[{value:"Other options for installation",id:"other-options-for-installation",level:3}],u={toc:l},d="wrapper";function g(e){let{components:t,...i}=e;return(0,a.yg)(d,(0,n.A)({},u,i,{components:t,mdxType:"MDXLayout"}),(0,a.yg)("h1",{id:"setup-openxr-runtime"},"Setup OpenXR Runtime"),(0,a.yg)("p",null,"This guide will help you set up your VR or AR headset for use with Stardust. Although support for many headsets on Linux is still under active development, there are a number of good options available. If you already have OpenXR set up on your Linux distribution, head to the ",(0,a.yg)("a",{parentName:"p",href:"manual"},"Full Installation")," page to get Stardust XR installed. "),(0,a.yg)("admonition",{type:"info"},(0,a.yg)("p",{parentName:"admonition"},"If you want to try Stardust in a window on your existing device you can skip this step and checkout the ",(0,a.yg)("a",{parentName:"p",href:"Quickstart"},"Quick Start Guide"),". ")),(0,a.yg)("h1",{id:"envision"},"Envision"),(0,a.yg)("admonition",{type:"note"},(0,a.yg)("p",{parentName:"admonition"},(0,a.yg)("img",{alt:"Envision",src:r(2845).A,width:"500",height:"138"})),(0,a.yg)("p",{parentName:"admonition"},"We highly recommend using ",(0,a.yg)("a",{parentName:"p",href:"https://lvra.gitlab.io/docs/fossvr/envision/"},"Envision"),", an easy to use GUI for utilizing ",(0,a.yg)("a",{parentName:"p",href:"https://monado.dev/"},"Monado")," which is what you likely use if you have a wired headset. Envision also comes with ",(0,a.yg)("a",{parentName:"p",href:"https://github.com/WiVRn/WiVRn"},"WiVRn")," support for connecting to headsets like the Meta Quest wirelessly. ")),(0,a.yg)("p",null,"Check the ",(0,a.yg)("a",{parentName:"p",href:"https://lvra.gitlab.io/docs/hardware/"},"hardware table")," (for Monado/WiVRn support) to ensure your hardware and headset are compatible. If you're using an Nvidia card, you'll need to install ",(0,a.yg)("a",{parentName:"p",href:"https://rpmfusion.org/Howto/NVIDIA"},"proprietary drivers"),". If you're using a modern Nvidia card on Fedora (with RPMFusion) or Ultramarine, this command will install the driver:"),(0,a.yg)("pre",null,(0,a.yg)("code",{parentName:"pre"},"sudo dnf install akmod-nvidia\nsudo akmods\n# Wait for this to finish before rebooting, this may take up to 15 minutes\n")),(0,a.yg)("p",null,"AMD graphic cards do not require additional drivers."),(0,a.yg)("h3",null,(0,a.yg)("img",{src:"/img/docs/Fedora_logo.svg",alt:"Fedora Logo",style:{verticalAlign:"middle",height:"1em",marginRight:"0.5em"}}),(0,a.yg)("img",{src:"/img/docs/ultramarine-logo.svg",alt:"Ultramarine Logo",style:{verticalAlign:"middle",height:"1em",marginRight:"0.5em"}}),"Fedora and derivatives (except Enterprise Linux)"),(0,a.yg)("admonition",{type:"info"},(0,a.yg)("p",{parentName:"admonition"},"Envision is packaged in the ",(0,a.yg)("a",{parentName:"p",href:"https://terra.fyralabs.com/"},"Terra repository"),". If you are using ",(0,a.yg)("a",{parentName:"p",href:"https://ultramarine-linux.org"},"Ultramarine Linux"),", ",(0,a.yg)("a",{parentName:"p",href:"https://bazzite.gg"},"Bazzite"),", or ",(0,a.yg)("a",{parentName:"p",href:"https://getaurora.dev"},"Aurora"),", this repository comes pre-installed, otherwise you will need to add the repository:"),(0,a.yg)("p",{parentName:"admonition"},"If you are using a ",(0,a.yg)("a",{parentName:"p",href:"https://fedoraproject.org/atomic-desktops/"},"Fedora Atomic Edition")," or derivative you will need to run the following command:"),(0,a.yg)("pre",{parentName:"admonition"},(0,a.yg)("code",{parentName:"pre"},"curl -fsSL https://github.com/terrapkg/subatomic-repos/raw/main/terra.repo | pkexec tee /etc/yum.repos.d/terra.repo\nsudo rpm-ostree install terra-release\n")),(0,a.yg)("p",{parentName:"admonition"},"Standard Fedora Editions and derivatives can directly install terra-release:"),(0,a.yg)("pre",{parentName:"admonition"},(0,a.yg)("code",{parentName:"pre"},"sudo dnf install --nogpgcheck --repofrompath 'terra,https://repos.fyralabs.com/terra$releasever' terra-release\n"))),(0,a.yg)("p",null,"Then, install Envision using:"),(0,a.yg)("pre",null,(0,a.yg)("code",{parentName:"pre"},"sudo dnf install envision\n")),(0,a.yg)("h3",null,(0,a.yg)("img",{src:"/img/docs/arch.png",alt:"Logo",style:{verticalAlign:"middle",height:"1em",marginRight:"0.5em"}}),"Arch Linux"),(0,a.yg)("p",null,"For Arch Linux, Envision is available via the ",(0,a.yg)("a",{parentName:"p",href:"https://aur.archlinux.org/packages/envision-xr-git"},"AUR"),". We suggest using an AUR helper, like Paru:"),(0,a.yg)("pre",null,(0,a.yg)("code",{parentName:"pre"},"paru -S envision-xr-git\n")),(0,a.yg)("h3",null,(0,a.yg)("img",{src:"/img/docs/nixos.svg",alt:"Logo",style:{verticalAlign:"middle",height:"1em",marginRight:"0.5em"}}),"NixOS"),(0,a.yg)("p",null,"On NixOS, it's generally easiest to follow the instructions at ",(0,a.yg)("a",{parentName:"p",href:"https://lvra.gitlab.io/docs/distros/nixos/"},"https://lvra.gitlab.io/docs/distros/nixos/")," as Envision is currently unstable on NixOS and troubleshooting SteamVR can be tricky. "),(0,a.yg)("h3",{id:"other-options-for-installation"},"Other options for installation"),(0,a.yg)("p",null,"You can also download the ",(0,a.yg)("a",{parentName:"p",href:"https://gitlab.com/gabmus/envision/-/pipelines?ref=main&status=success"},"Envision AppImage"),". Once downloaded, unzip the archive, you should find a file named Envision-x86_64.AppImage. You can do this from the properties menu in your file manager, or run ",(0,a.yg)("inlineCode",{parentName:"p"},"chmod +x Envision-x86_64.AppImage")," in your terminal."),(0,a.yg)("p",null,"Then double click the file to run it.\n",(0,a.yg)("img",{alt:"Envision App Image",src:r(7456).A,width:"1103",height:"398"})),(0,a.yg)("p",null,"When you launch Envision, you will have to build a profile for your headset, check the ",(0,a.yg)("a",{parentName:"p",href:"https://lvra.gitlab.io/docs/fossvr/envision/"},"Envision website")," for instructions specific to what you have. You can take a look at ",(0,a.yg)("a",{parentName:"p",href:"https://youtu.be/Rgj9-9UwA2g?si=Rt23rZf01fzQt3RB&t=280"},"this section")," of our Meta Quest setup video for an example using WiVRn.\n",(0,a.yg)("img",{alt:"Envision Build Profile",src:r(647).A,width:"577",height:"734"})),(0,a.yg)("p",null,"Once you have one of these options installed, a quick way to test on the headset is by running ",(0,a.yg)("inlineCode",{parentName:"p"},"xrgears"),". ",(0,a.yg)("a",{parentName:"p",href:"https://gitlab.freedesktop.org/monado/demos/xrgears"},"xrgears")," is a demo that comes with Monado."),(0,a.yg)("admonition",{type:"tip"},(0,a.yg)("p",{parentName:"admonition"},"If you run into any problems during installation, the ",(0,a.yg)("a",{parentName:"p",href:"quest-3-setup"},"Meta Quest Walkthrough")," may contain information helpful in regards to dependencies, firewalls and drivers.")),(0,a.yg)("h1",{id:"alvr"},"ALVR"),(0,a.yg)("p",null,"Another option is ALVR, you can check the GitHub repository for more information ",(0,a.yg)("a",{parentName:"p",href:"https://github.com/alvr-org/ALVR"},"https://github.com/alvr-org/ALVR")),(0,a.yg)("h1",{id:"steamvr"},"SteamVR"),(0,a.yg)("p",null,"If you'd like to use SteamVR, head over to ",(0,a.yg)("a",{parentName:"p",href:"https://lvra.gitlab.io/docs/steamvr/"},"https://lvra.gitlab.io/docs/steamvr/"),", although it is not the recommended way to use VR within Linux due to poor support."))}g.isMDXComponent=!0},2845:(e,t,r)=>{r.d(t,{A:()=>n});const n=r.p+"assets/images/Envision_Monado-9d09381bf57cc8f8605ac03541f88a3d.png"},7456:(e,t,r)=>{r.d(t,{A:()=>n});const n=r.p+"assets/images/envisionappimage-148384a30f4f08d5b694e830eea45461.png"},647:(e,t,r)=>{r.d(t,{A:()=>n});const n=r.p+"assets/images/envisionbuildprofile-d6d2287ef25447479c30e3c291de624c.png"}}]); |