add openxr bindings
This commit is contained in:
@ -26,8 +26,8 @@
|
|||||||
url = "https://triazo.net/files/combined-bsb-6-15.patch";
|
url = "https://triazo.net/files/combined-bsb-6-15.patch";
|
||||||
# url = "https://gist.githubusercontent.com/galister/08cddf10ac18929647d5fb6308df3e4b/raw/0f6417b6cb069f19d6c28b730499c07de06ec413/combined-bsb-6-10.patch";
|
# url = "https://gist.githubusercontent.com/galister/08cddf10ac18929647d5fb6308df3e4b/raw/0f6417b6cb069f19d6c28b730499c07de06ec413/combined-bsb-6-10.patch";
|
||||||
sha256 = "938552a278197614402d997c2a21af798ebc4771f99d0b8d99dfcdf6df10ffb7";
|
sha256 = "938552a278197614402d997c2a21af798ebc4771f99d0b8d99dfcdf6df10ffb7";
|
||||||
});
|
});}
|
||||||
}
|
|
||||||
{
|
{
|
||||||
name = "amdgpu-ignore-ctx-privileges";
|
name = "amdgpu-ignore-ctx-privileges";
|
||||||
patch = pkgs.fetchpatch {
|
patch = pkgs.fetchpatch {
|
||||||
|
|||||||
10
home.nix
10
home.nix
@ -19,6 +19,16 @@
|
|||||||
# Let Home Manager install and manage itself.
|
# Let Home Manager install and manage itself.
|
||||||
programs.home-manager.enable = true;
|
programs.home-manager.enable = true;
|
||||||
|
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
tmux
|
||||||
|
htop
|
||||||
|
];
|
||||||
|
|
||||||
|
# Wayvr customization
|
||||||
|
xdg.configFile."wlxoverlay/openxr_actions.json5" = {
|
||||||
|
source = ./xdg/wlxoverlay_openxr_actions.json5;
|
||||||
|
};
|
||||||
|
|
||||||
# For wayvr-dashboard/wlx integration
|
# For wayvr-dashboard/wlx integration
|
||||||
xdg.configFile."wlxoverlay/wayvr.conf.d/dashboard.yaml".text = ''
|
xdg.configFile."wlxoverlay/wayvr.conf.d/dashboard.yaml".text = ''
|
||||||
dashboard:
|
dashboard:
|
||||||
|
|||||||
301
xdg/wlxoverlay_openxr_actions.json5
Normal file
301
xdg/wlxoverlay_openxr_actions.json5
Normal file
@ -0,0 +1,301 @@
|
|||||||
|
// Available bindings:
|
||||||
|
//
|
||||||
|
// -- click --
|
||||||
|
// primary click to interact with the watch or overlays. required
|
||||||
|
//
|
||||||
|
// -- grab --
|
||||||
|
// used to manipulate position, size, orientation of overlays in 3D space
|
||||||
|
//
|
||||||
|
// -- show_hide --
|
||||||
|
// used to quickly hide and show your last selection of screens + keyboard
|
||||||
|
//
|
||||||
|
// -- space_drag --
|
||||||
|
// move your stage (playspace drag)
|
||||||
|
//
|
||||||
|
// -- toggle_dashboard --
|
||||||
|
// run or toggle visibility of a previously configured WayVR-compatible dashboard
|
||||||
|
//
|
||||||
|
// -- space_rotate --
|
||||||
|
// rotate your stage (playspace rotate, WIP)
|
||||||
|
//
|
||||||
|
// -- space_reset --
|
||||||
|
// reset your stage (reset the offset from playspace drag)
|
||||||
|
//
|
||||||
|
// -- click_modifier_right --
|
||||||
|
// while this is held, your pointer will turn ORANGE and your mouse clicks will be RIGHT clicks
|
||||||
|
//
|
||||||
|
// -- click_modifier_middle --
|
||||||
|
// while this is held, your pointer will turn PURPLE and your mouse clicks will be MIDDLE clicks
|
||||||
|
//
|
||||||
|
// -- move_mouse --
|
||||||
|
// when using `focus_follows_mouse_mode`, you need to hold this for the mouse to move
|
||||||
|
//
|
||||||
|
// -- pose, haptic --
|
||||||
|
// do not mess with these, unless you know what you're doing
|
||||||
|
|
||||||
|
[
|
||||||
|
// Fallback controller, intended for testing
|
||||||
|
{
|
||||||
|
profile: "/interaction_profiles/khr/simple_controller",
|
||||||
|
pose: {
|
||||||
|
left: "/user/hand/left/input/aim/pose",
|
||||||
|
right: "/user/hand/right/input/aim/pose"
|
||||||
|
},
|
||||||
|
haptic: {
|
||||||
|
left: "/user/hand/left/output/haptic",
|
||||||
|
right: "/user/hand/right/output/haptic"
|
||||||
|
},
|
||||||
|
click: {
|
||||||
|
// left trigger is click
|
||||||
|
left: "/user/hand/left/input/select/click",
|
||||||
|
},
|
||||||
|
grab: {
|
||||||
|
// right trigger is grab
|
||||||
|
right: "/user/hand/right/input/select/click"
|
||||||
|
},
|
||||||
|
show_hide: {
|
||||||
|
left: "/user/hand/left/input/menu/click"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
// Oculus Touch Controller. Compatible with Quest 2, Quest 3, Quest Pro
|
||||||
|
{
|
||||||
|
profile: "/interaction_profiles/oculus/touch_controller",
|
||||||
|
pose: {
|
||||||
|
left: "/user/hand/left/input/aim/pose",
|
||||||
|
right: "/user/hand/right/input/aim/pose"
|
||||||
|
},
|
||||||
|
haptic: {
|
||||||
|
left: "/user/hand/left/output/haptic",
|
||||||
|
right: "/user/hand/right/output/haptic"
|
||||||
|
},
|
||||||
|
click: {
|
||||||
|
left: "/user/hand/left/input/trigger/value",
|
||||||
|
right: "/user/hand/right/input/trigger/value"
|
||||||
|
},
|
||||||
|
grab: {
|
||||||
|
left: "/user/hand/left/input/squeeze/value",
|
||||||
|
right: "/user/hand/right/input/squeeze/value"
|
||||||
|
},
|
||||||
|
scroll: {
|
||||||
|
left: "/user/hand/left/input/thumbstick/y",
|
||||||
|
right: "/user/hand/right/input/thumbstick/y"
|
||||||
|
},
|
||||||
|
scroll_horizontal: {
|
||||||
|
left: "/user/hand/left/input/thumbstick/x",
|
||||||
|
right: "/user/hand/right/input/thumbstick/x"
|
||||||
|
},
|
||||||
|
show_hide: {
|
||||||
|
double_click: true,
|
||||||
|
left: "/user/hand/left/input/y/click",
|
||||||
|
},
|
||||||
|
space_drag: {
|
||||||
|
left: "/user/hand/left/input/menu/click",
|
||||||
|
},
|
||||||
|
space_reset: {
|
||||||
|
double_click: true,
|
||||||
|
left: "/user/hand/left/input/menu/click",
|
||||||
|
},
|
||||||
|
click_modifier_right: {
|
||||||
|
left: "/user/hand/left/input/y/touch",
|
||||||
|
right: "/user/hand/right/input/b/touch"
|
||||||
|
},
|
||||||
|
click_modifier_middle: {
|
||||||
|
left: "/user/hand/left/input/x/touch",
|
||||||
|
right: "/user/hand/right/input/a/touch"
|
||||||
|
},
|
||||||
|
move_mouse: {
|
||||||
|
// used with focus_follows_mouse_mode
|
||||||
|
left: "/user/hand/left/input/trigger/touch",
|
||||||
|
right: "/user/hand/right/input/trigger/touch"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
// Index controller
|
||||||
|
{
|
||||||
|
profile: "/interaction_profiles/valve/index_controller",
|
||||||
|
pose: {
|
||||||
|
left: "/user/hand/left/input/aim/pose",
|
||||||
|
right: "/user/hand/right/input/aim/pose"
|
||||||
|
},
|
||||||
|
haptic: {
|
||||||
|
left: "/user/hand/left/output/haptic",
|
||||||
|
right: "/user/hand/right/output/haptic"
|
||||||
|
},
|
||||||
|
click: {
|
||||||
|
left: "/user/hand/left/input/trigger/value",
|
||||||
|
right: "/user/hand/right/input/trigger/value"
|
||||||
|
},
|
||||||
|
alt_click: {
|
||||||
|
// left trackpad is space_drag
|
||||||
|
right: "/user/hand/right/input/trackpad/force",
|
||||||
|
},
|
||||||
|
grab: {
|
||||||
|
left: "/user/hand/left/input/squeeze/force",
|
||||||
|
right: "/user/hand/right/input/squeeze/force"
|
||||||
|
},
|
||||||
|
scroll: {
|
||||||
|
left: "/user/hand/left/input/thumbstick/y",
|
||||||
|
right: "/user/hand/right/input/thumbstick/y"
|
||||||
|
},
|
||||||
|
scroll_horizontal: {
|
||||||
|
left: "/user/hand/left/input/thumbstick/x",
|
||||||
|
right: "/user/hand/right/input/thumbstick/x"
|
||||||
|
},
|
||||||
|
toggle_dashboard: {
|
||||||
|
double_click: false,
|
||||||
|
right: "/user/hand/right/input/system/click",
|
||||||
|
},
|
||||||
|
show_hide: {
|
||||||
|
double_click: true,
|
||||||
|
left: "/user/hand/left/input/a/click",
|
||||||
|
},
|
||||||
|
space_drag: {
|
||||||
|
left: "/user/hand/left/input/trackpad/force",
|
||||||
|
// right trackpad is alt_click
|
||||||
|
},
|
||||||
|
space_reset: {
|
||||||
|
left: "/user/hand/left/input/trackpad/force",
|
||||||
|
double_click: true,
|
||||||
|
},
|
||||||
|
click_modifier_right: {
|
||||||
|
left: "/user/hand/left/input/b/touch",
|
||||||
|
right: "/user/hand/right/input/b/touch"
|
||||||
|
},
|
||||||
|
click_modifier_middle: {
|
||||||
|
left: "/user/hand/left/input/a/touch",
|
||||||
|
right: "/user/hand/right/input/a/touch"
|
||||||
|
},
|
||||||
|
move_mouse: {
|
||||||
|
// used with focus_follows_mouse_mode
|
||||||
|
left: "/user/hand/left/input/trigger/touch",
|
||||||
|
right: "/user/hand/right/input/trigger/touch"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
// Vive controller
|
||||||
|
{
|
||||||
|
profile: "/interaction_profiles/htc/vive_controller",
|
||||||
|
pose: {
|
||||||
|
left: "/user/hand/left/input/aim/pose",
|
||||||
|
right: "/user/hand/right/input/aim/pose"
|
||||||
|
},
|
||||||
|
click: {
|
||||||
|
left: "/user/hand/left/input/trigger/value",
|
||||||
|
right: "/user/hand/right/input/trigger/value"
|
||||||
|
},
|
||||||
|
grab: {
|
||||||
|
left: "/user/hand/left/input/squeeze/click",
|
||||||
|
right: "/user/hand/right/input/squeeze/click"
|
||||||
|
},
|
||||||
|
scroll: {
|
||||||
|
left: "/user/hand/left/input/trackpad/y",
|
||||||
|
right: "/user/hand/right/input/trackpad/y"
|
||||||
|
},
|
||||||
|
scroll_horizontal: {
|
||||||
|
left: "/user/hand/left/input/trackpad/x",
|
||||||
|
right: "/user/hand/right/input/trackpad/x"
|
||||||
|
},
|
||||||
|
show_hide: {
|
||||||
|
left: "/user/hand/left/input/menu/click",
|
||||||
|
},
|
||||||
|
space_drag: {
|
||||||
|
right: "/user/hand/right/input/menu/click",
|
||||||
|
},
|
||||||
|
space_reset: {
|
||||||
|
double_click: true,
|
||||||
|
right: "/user/hand/right/input/menu/click",
|
||||||
|
},
|
||||||
|
haptic: {
|
||||||
|
left: "/user/hand/left/output/haptic",
|
||||||
|
right: "/user/hand/right/output/haptic"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
// Windows Mixed Reality controller
|
||||||
|
{
|
||||||
|
profile: "/interaction_profiles/microsoft/motion_controller",
|
||||||
|
pose: {
|
||||||
|
left: "/user/hand/left/input/aim/pose",
|
||||||
|
right: "/user/hand/right/input/aim/pose"
|
||||||
|
},
|
||||||
|
haptic: {
|
||||||
|
left: "/user/hand/left/output/haptic",
|
||||||
|
right: "/user/hand/right/output/haptic"
|
||||||
|
},
|
||||||
|
click: {
|
||||||
|
left: "/user/hand/left/input/trigger/value",
|
||||||
|
right: "/user/hand/right/input/trigger/value"
|
||||||
|
},
|
||||||
|
grab: {
|
||||||
|
left: "/user/hand/left/input/squeeze/click",
|
||||||
|
right: "/user/hand/right/input/squeeze/click"
|
||||||
|
},
|
||||||
|
scroll: {
|
||||||
|
left: "/user/hand/left/input/thumbstick/y",
|
||||||
|
right: "/user/hand/right/input/thumbstick/y"
|
||||||
|
},
|
||||||
|
scroll_horizontal: {
|
||||||
|
left: "/user/hand/left/input/thumbstick/x",
|
||||||
|
right: "/user/hand/right/input/thumbstick/x"
|
||||||
|
},
|
||||||
|
show_hide: {
|
||||||
|
left: "/user/hand/left/input/system/click",
|
||||||
|
},
|
||||||
|
space_drag: {
|
||||||
|
right: "/user/hand/right/input/system/click",
|
||||||
|
},
|
||||||
|
space_reset: {
|
||||||
|
double_click: true,
|
||||||
|
right: "/user/hand/right/input/system/click",
|
||||||
|
},
|
||||||
|
click_modifier_right: {
|
||||||
|
left: "/user/hand/left/input/trackpad/dpad_up",
|
||||||
|
right: "/user/hand/right/input/trackpad/dpad_up"
|
||||||
|
},
|
||||||
|
click_modifier_middle: {
|
||||||
|
left: "/user/hand/left/input/trackpad/dpad_down",
|
||||||
|
right: "/user/hand/right/input/trackpad/dpad_down"
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
// HP Reverb G2 controller
|
||||||
|
{
|
||||||
|
profile: "/interaction_profiles/hp/mixed_reality_controller",
|
||||||
|
pose: {
|
||||||
|
left: "/user/hand/left/input/aim/pose",
|
||||||
|
right: "/user/hand/right/input/aim/pose"
|
||||||
|
},
|
||||||
|
haptic: {
|
||||||
|
left: "/user/hand/left/output/haptic",
|
||||||
|
right: "/user/hand/right/output/haptic"
|
||||||
|
},
|
||||||
|
click: {
|
||||||
|
left: "/user/hand/left/input/trigger/value",
|
||||||
|
right: "/user/hand/right/input/trigger/value"
|
||||||
|
},
|
||||||
|
grab: {
|
||||||
|
left: "/user/hand/left/input/squeeze/value",
|
||||||
|
right: "/user/hand/right/input/squeeze/value"
|
||||||
|
},
|
||||||
|
scroll: {
|
||||||
|
left: "/user/hand/left/input/thumbstick/y",
|
||||||
|
right: "/user/hand/right/input/thumbstick/y"
|
||||||
|
},
|
||||||
|
scroll_horizontal: {
|
||||||
|
left: "/user/hand/left/input/thumbstick/x",
|
||||||
|
right: "/user/hand/right/input/thumbstick/x"
|
||||||
|
},
|
||||||
|
show_hide: {
|
||||||
|
left: "/user/hand/left/input/system/click",
|
||||||
|
},
|
||||||
|
space_drag: {
|
||||||
|
right: "/user/hand/right/input/system/click",
|
||||||
|
},
|
||||||
|
space_reset: {
|
||||||
|
double_click: true,
|
||||||
|
right: "/user/hand/right/input/system/click",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
]
|
||||||
Reference in New Issue
Block a user