VR: Difference between revisions
Show how to enable nvenc/GPU encoding |
m Mark OC as unmaintained |
||
| (8 intermediate revisions by 6 users not shown) | |||
| Line 81: | Line 81: | ||
<!--T:12--> | <!--T:12--> | ||
Note: OpenComposite is unmaintained. We recommend using [https://github.com/Supreeeme/xrizer xrizer] instead. | |||
[https://gitlab.com/znixian/OpenOVR OpenComposite] is a compatibility layer for running OpenVR applications on an OpenXR runtime like Monado. It is comparable to tools like DXVK or vkd3d, but for translating OpenVR calls to OpenXR. | [https://gitlab.com/znixian/OpenOVR OpenComposite] is a compatibility layer for running OpenVR applications on an OpenXR runtime like Monado. It is comparable to tools like DXVK or vkd3d, but for translating OpenVR calls to OpenXR. | ||
| Line 139: | Line 141: | ||
enable = true; | enable = true; | ||
openFirewall = true; | openFirewall = true; | ||
# Run WiVRn as a systemd service on startup | # Run WiVRn as a systemd service on startup | ||
| Line 151: | Line 148: | ||
package = (pkgs.wivrn.override { cudaSupport = true; }); | package = (pkgs.wivrn.override { cudaSupport = true; }); | ||
# | # You should use the default configuration (which is no configuration), as that works the best out of the box. | ||
# However, if you need to configure something see https://github.com/WiVRn/WiVRn/blob/master/docs/configuration.md for configuration options and https://mynixos.com/nixpkgs/option/services.wivrn.config.json for an example configuration. | |||
};|name=configuration.nix|lang=nix}} | |||
<translate> | <translate> | ||
| Line 239: | Line 217: | ||
<!--T:44--> | <!--T:44--> | ||
By modifying the bubblewrap binary used for running Steam, you can allow processes in that FHS environment to acquire capabilities. This removes the need for patching the kernel directly. | By modifying the bubblewrap binary used for running Steam, you can allow processes in that FHS environment to acquire capabilities. This removes the need for patching the kernel directly. This may become unnecessary if [https://github.com/containers/bubblewrap/issues/653 bubblewrap #653] is merged and the flag is added to Steam's tooling. | ||
'''As of 2026-05, this may no longer be viable:''' Steam now aggressively restores its own pressure vessel srt-bwrap on startup, however deleting <code>~/.local/share/Steam/</code> has been [https://discourse.nixos.org/t/steam-fails-to-launch-with-patched-bwrap/75167 reported] to help. | |||
</translate> | </translate> | ||
| Line 261: | Line 241: | ||
}; | }; | ||
}} | }} | ||
{{file | {{file|3=diff --git a/bubblewrap.c b/bubblewrap.c | ||
index | index f8728c7..42cfe2e 100644 | ||
--- a/bubblewrap.c | --- a/bubblewrap.c | ||
+++ b/bubblewrap.c | +++ b/bubblewrap.c | ||
@@ - | @@ -876,13 +876,6 @@ acquire_privs (void) | ||
/* Keep only the required capabilities for setup */ | /* Keep only the required capabilities for setup */ | ||
set_required_caps (); | set_required_caps (); | ||
| Line 279: | Line 259: | ||
{ | { | ||
/* If our uid is 0, default to inheriting all caps; the caller | /* If our uid is 0, default to inheriting all caps; the caller | ||
}} | |name=bwrap.patch|lang=diff}} | ||
<translate> | <translate> | ||
| Line 287: | Line 267: | ||
<!--T:47--> | <!--T:47--> | ||
Steam will periodically replace this modification with its own binary when steam-runtime updates, so you may need to re-apply this change if it breaks. | Steam will periodically replace this modification with its own binary when steam-runtime updates, so you may need to re-apply this change if it breaks. | ||
=== Setting SteamVR as default OpenXR runtime === | |||
To set SteamVR as the default OpenXR runtime, you have to add the following snippet to your Home Manager config: | |||
{{file|/etc/nixos/configuration.nix|nix|3=xdg.configFile."openxr/1/active_runtime.json".text = '' | |||
{ | |||
"file_format_version": "1.0.0", | |||
"runtime": { | |||
"VALVE_runtime_is_steamvr": true, | |||
"library_path": "${config.home.homeDirectory}/.local/share/Steam/steamapps/common/SteamVR/bin/linux64/vrclient.so", | |||
"name": "SteamVR" | |||
} | |||
} | |||
''; | |||
}} | |||
== wlx-overlay-s == <!--T:31--> | == wlx-overlay-s == <!--T:31--> | ||