From 0465aeb80666254f33906d9016492fdaab2197e7 Mon Sep 17 00:00:00 2001 From: Sefa Eyeoglu Date: Fri, 9 Jan 2026 23:33:30 +0100 Subject: [PATCH 1/3] wayvr: init at 26.1.2 Signed-off-by: Sefa Eyeoglu --- pkgs/by-name/wa/wayvr/package.nix | 96 +++++++++++++++++++++++++++++++ 1 file changed, 96 insertions(+) create mode 100644 pkgs/by-name/wa/wayvr/package.nix diff --git a/pkgs/by-name/wa/wayvr/package.nix b/pkgs/by-name/wa/wayvr/package.nix new file mode 100644 index 000000000000..60cac3211124 --- /dev/null +++ b/pkgs/by-name/wa/wayvr/package.nix @@ -0,0 +1,96 @@ +{ + alsa-lib, + dbus, + fetchFromGitHub, + lib, + libX11, + libXext, + libXrandr, + libxcb, + libxkbcommon, + nix-update-script, + openssl, + openvr, + openxr-loader, + pipewire, + pkg-config, + procps, + pulseaudio, + rustPlatform, + shaderc, + stdenv, + testers, + wayvr, + withOpenVR ? !stdenv.hostPlatform.isAarch64, +}: +rustPlatform.buildRustPackage rec { + pname = "wayvr"; + version = "26.1.2"; + + src = fetchFromGitHub { + owner = "wlx-team"; + repo = "wayvr"; + tag = "v${version}"; + hash = "sha256-UZ5zcalez6B+212OqCaEXSoRfhaExuy0W8HX8b4flSU="; + }; + + cargoHash = "sha256-zqB2ybdpQEGdlkNin6mlUfaVRkpOtFl2CVCLAdKDMoQ="; + + nativeBuildInputs = [ + pkg-config + rustPlatform.bindgenHook + ]; + + buildInputs = [ + alsa-lib + dbus + libX11 + libXext + libXrandr + libxcb + libxkbcommon + openssl + openxr-loader + pipewire + ] + ++ lib.optionals withOpenVR [ openvr ]; + + env.SHADERC_LIB_DIR = "${lib.getLib shaderc}/lib"; + + postPatch = '' + substituteAllInPlace dash-frontend/src/util/pactl_wrapper.rs \ + --replace-fail '"pactl"' '"${lib.getExe' pulseaudio "pactl"}"' + + # steam_utils also calls xdg-open as well as steam. Those should probably be pulled from the environment + substituteInPlace dash-frontend/src/util/steam_utils.rs \ + --replace-fail '"pkill"' '"${lib.getExe' procps "pkill"}"' + ''; + + buildNoDefaultFeatures = true; + buildFeatures = [ + "openxr" + "osc" + "x11" + "wayland" + ] + ++ lib.optionals withOpenVR [ "openvr" ]; + + passthru = { + tests.testVersion = testers.testVersion { package = wayvr; }; + + updateScript = nix-update-script { }; + }; + + meta = { + description = "Your way to enjoy VR on Linux! Access your Wayland/X11 desktop from SteamVR/Monado (OpenVR+OpenXR support)"; + homepage = "https://github.com/wlx-team/wayvr"; + license = with lib.licenses; [ + gpl3Only + mit # wayvr-ipc + ]; + maintainers = with lib.maintainers; [ Scrumplex ]; + platforms = lib.platforms.linux; + broken = stdenv.hostPlatform.isAarch64 && withOpenVR; + mainProgram = "wayvr"; + }; +} From 636bf545e3c95f8a95b8e23b2bad2c2a2726b862 Mon Sep 17 00:00:00 2001 From: Sefa Eyeoglu Date: Fri, 9 Jan 2026 23:33:59 +0100 Subject: [PATCH 2/3] wayvr-dashboard: drop in favor of wayvr Signed-off-by: Sefa Eyeoglu --- pkgs/by-name/wa/wayvr-dashboard/package.nix | 83 --------------------- pkgs/top-level/aliases.nix | 1 + 2 files changed, 1 insertion(+), 83 deletions(-) delete mode 100644 pkgs/by-name/wa/wayvr-dashboard/package.nix diff --git a/pkgs/by-name/wa/wayvr-dashboard/package.nix b/pkgs/by-name/wa/wayvr-dashboard/package.nix deleted file mode 100644 index ba67b89c900f..000000000000 --- a/pkgs/by-name/wa/wayvr-dashboard/package.nix +++ /dev/null @@ -1,83 +0,0 @@ -# SPDX-FileCopyrightText: 2025 Hana Kretzer -# -# SPDX-License-Identifier: MIT -{ - alsa-lib, - cargo-tauri, - fetchFromGitHub, - fetchNpmDeps, - gdk-pixbuf, - glib, - lib, - librsvg, - nodejs, - npmHooks, - openssl, - pkg-config, - pulseaudio, - rustPlatform, - webkitgtk_4_1, - wrapGAppsHook4, -}: -rustPlatform.buildRustPackage rec { - pname = "wayvr-dashboard"; - version = "0.3.5"; - - src = fetchFromGitHub { - owner = "olekolek1000"; - repo = "wayvr-dashboard"; - tag = version; - hash = "sha256-C23O9EFOpGwamJuKjluBAMFF7YaNDqd61JVDkWyoy+E="; - }; - - cargoHash = "sha256-aljJ+N47rFSMAxdW4plqhHggLYHD+sJNUCcG/tWzUxU="; - - npmDeps = fetchNpmDeps { - inherit src; - hash = "sha256-kyb4xzBkNTCIzOEUTuPeESDOAqfWseoouUkZjqI/NhQ="; - }; - - nativeBuildInputs = [ - cargo-tauri.hook - nodejs - npmHooks.npmConfigHook - pkg-config - wrapGAppsHook4 - ]; - - buildInputs = [ - alsa-lib - gdk-pixbuf - glib - librsvg - openssl - webkitgtk_4_1 - ]; - - preBuild = '' - # using sass-embedded fails at executing node_modules/sass-embedded-linux-x64/dart-sass/src/dart - rm -r node_modules/sass-embedded* - ''; - - postInstall = '' - gappsWrapperArgs+=( - --prefix PATH : "${lib.makeBinPath [ pulseaudio ]}}" - ) - install -Dm644 wayvr-dashboard.svg $out/share/icons/hicolor/scalable/apps/wayvr-dashboard.svg - ''; - - cargoRoot = "src-tauri"; - buildAndTestSubdir = cargoRoot; - - meta = { - description = "Work-in-progress overlay application for launching various applications and games directly into a VR desktop environment"; - homepage = "https://github.com/olekolek1000/wayvr-dashboard"; - license = lib.licenses.mit; - maintainers = with lib.maintainers; [ - nanoyaki - Scrumplex - ]; - platforms = lib.platforms.linux; - mainProgram = "wayvr-dashboard"; - }; -} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index d4f5aad043eb..67754dcf108c 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -1738,6 +1738,7 @@ mapAliases { wasm-strip = throw "'wasm-strip' has been removed due to upstream deprecation. Use 'wabt' instead."; # Added 2025-11-06 wavebox = throw "'wavebox' has been removed due to lack of maintenance in nixpkgs"; # Added 2025-06-24 wavm = throw "wavm has been removed, as it does not build with supported LLVM versions"; # Added 2025-08-10 + wayvr-dashboard = throw "'wayvr-dashboard' and 'wlx-overlay-s' have been merged into a single application. Please switch to 'wayvr'"; # Added 2026-01-09 wcurl = throw "'wcurl' has been removed due to being bundled with 'curl'"; # Added 2025-07-04 wdomirror = throw "'wdomirror' has been removed as it is unmaintained upstream, Consider using 'wl-mirror' instead"; # Added 2025-09-04 webfontkitgenerator = webfont-bundler; # Added 2025-07-27 From 6a7f9c412c11b7bacdb2179618477fb765286b58 Mon Sep 17 00:00:00 2001 From: Sefa Eyeoglu Date: Fri, 9 Jan 2026 23:34:33 +0100 Subject: [PATCH 3/3] wlx-overlay-s: drop in favor of wayvr Signed-off-by: Sefa Eyeoglu --- pkgs/by-name/wl/wlx-overlay-s/package.nix | 106 ---------------------- pkgs/top-level/aliases.nix | 1 + 2 files changed, 1 insertion(+), 106 deletions(-) delete mode 100644 pkgs/by-name/wl/wlx-overlay-s/package.nix diff --git a/pkgs/by-name/wl/wlx-overlay-s/package.nix b/pkgs/by-name/wl/wlx-overlay-s/package.nix deleted file mode 100644 index 0b380a30e1ff..000000000000 --- a/pkgs/by-name/wl/wlx-overlay-s/package.nix +++ /dev/null @@ -1,106 +0,0 @@ -{ - alsa-lib, - dbus, - fetchFromGitHub, - fontconfig, - lib, - libGL, - libX11, - libxcb, - libXext, - libXrandr, - libxkbcommon, - makeWrapper, - nix-update-script, - openvr, - openxr-loader, - pipewire, - pkg-config, - pulseaudio, - rustPlatform, - shaderc, - stdenv, - testers, - wayland, - wlx-overlay-s, - # openvr support is broken on aarch64-linux - withOpenVr ? !stdenv.hostPlatform.isAarch64, -}: - -rustPlatform.buildRustPackage rec { - pname = "wlx-overlay-s"; - version = "25.4.2"; - - src = fetchFromGitHub { - owner = "galister"; - repo = "wlx-overlay-s"; - rev = "v${version}"; - hash = "sha256-lWUfhiHRxu72p9ZG2f2fZH6WZECm/fOKcK05MLZV+MI="; - }; - - cargoHash = "sha256-em5sWSty2/pZp2jTwBnLUIBgPOcoMpwELwj984XYf+k="; - - # explicitly only add openvr if withOpenVr is set to true. - buildNoDefaultFeatures = true; - buildFeatures = [ - "openxr" - "osc" - "x11" - "wayland" - "wayvr" - ] - ++ lib.optional withOpenVr "openvr"; - - nativeBuildInputs = [ - makeWrapper - pkg-config - rustPlatform.bindgenHook - ]; - - buildInputs = [ - alsa-lib - dbus - fontconfig - libGL - libX11 - libxcb - libXext - libXrandr - libxkbcommon - openxr-loader - pipewire - wayland - ] - ++ lib.optional withOpenVr openvr; - - env.SHADERC_LIB_DIR = "${lib.getLib shaderc}/lib"; - - postPatch = '' - substituteAllInPlace src/res/watch.yaml \ - --replace '"pactl"' '"${lib.getExe' pulseaudio "pactl"}"' - substituteInPlace wlx-overlay-s.desktop \ - --replace 'Categories=Utility;' 'Categories=Utility;X-WiVRn-VR;' - - # TODO: src/res/keyboard.yaml references 'whisper_stt' - ''; - postInstall = '' - install -Dm644 wlx-overlay-s.desktop $out/share/applications/wlx-overlay-s.desktop - install -Dm644 wlx-overlay-s.svg $out/share/icons/hicolor/scalable/apps/wlx-overlay-s.svg - ''; - - passthru = { - tests.testVersion = testers.testVersion { package = wlx-overlay-s; }; - - updateScript = nix-update-script { }; - }; - - meta = { - description = "Wayland/X11 desktop overlay for SteamVR and OpenXR, Vulkan edition"; - homepage = "https://github.com/galister/wlx-overlay-s"; - license = lib.licenses.gpl3Only; - maintainers = with lib.maintainers; [ Scrumplex ]; - platforms = lib.platforms.linux; - broken = stdenv.hostPlatform.isAarch64 && withOpenVr; - mainProgram = "wlx-overlay-s"; - }; -} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 67754dcf108c..6a839026e248 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -1752,6 +1752,7 @@ mapAliases { wineWayland = throw "'wineWayland' has been renamed to/replaced by 'wine-wayland'"; # Converted to throw 2025-10-27 winhelpcgi = throw "'winhelpcgi' has been removed as it was unmaintained upstream and broken with GCC 14"; # Added 2025-06-14 wkhtmltopdf-bin = throw "'wkhtmltopdf-bin' has been renamed to/replaced by 'wkhtmltopdf'"; # Converted to throw 2025-10-27 + wlx-overlay-s = throw "'wlx-overlay-s' and 'wayvr-dashboard' have been merged into a single application. Please switch to 'wayvr'"; # Added 2026-01-09 wmii_hg = throw "'wmii_hg' has been renamed to/replaced by 'wmii'"; # Converted to throw 2025-10-27 woof = throw "'woof' has been removed as it is broken and unmaintained upstream"; # Added 2025-09-04 worldengine-cli = throw "'worldengine-cli' has been removed because it has been marked as broken since at least November 2024."; # Added 2025-10-04