From a04d89c8140bf3a5cac9dad487f468b9d01d9d3e Mon Sep 17 00:00:00 2001 From: Chad Jablonski Date: Tue, 2 Jul 2024 23:47:55 -0400 Subject: [PATCH] _86Box: Add optional wayland support to 86Box 86Box will run on wayland without these changes but mouse capturing will not work. Adding `extra-cmake-modules` and `wayland` as dependencies solves this problem. This also adds the `enableWayland` flag which defaults to true for linux environments. --- pkgs/applications/emulators/86box/default.nix | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/emulators/86box/default.nix b/pkgs/applications/emulators/86box/default.nix index 0e543fa8d821..00f7290a49ca 100644 --- a/pkgs/applications/emulators/86box/default.nix +++ b/pkgs/applications/emulators/86box/default.nix @@ -3,6 +3,7 @@ lib, fetchFromGitHub, cmake, + extra-cmake-modules, pkg-config, makeWrapper, freetype, @@ -19,10 +20,13 @@ discord-gamesdk, libpcap, libslirp, + wayland, + wayland-scanner, enableDynarec ? with stdenv.hostPlatform; isx86 || isAarch, enableNewDynarec ? enableDynarec && stdenv.hostPlatform.isAarch, enableVncRenderer ? false, + enableWayland ? stdenv.isLinux, unfreeEnableDiscord ? false, unfreeEnableRoms ? false, }: @@ -43,7 +47,7 @@ stdenv.mkDerivation (finalAttrs: { pkg-config makeWrapper qt5.wrapQtAppsHook - ]; + ] ++ lib.optionals enableWayland [ extra-cmake-modules wayland-scanner ]; buildInputs = [ freetype @@ -58,7 +62,9 @@ stdenv.mkDerivation (finalAttrs: { libslirp qt5.qtbase qt5.qttools - ] ++ lib.optional stdenv.isLinux alsa-lib ++ lib.optional enableVncRenderer libvncserver; + ] ++ lib.optional stdenv.isLinux alsa-lib + ++ lib.optional enableWayland wayland + ++ lib.optional enableVncRenderer libvncserver; cmakeFlags = lib.optional stdenv.isDarwin "-DCMAKE_MACOSX_BUNDLE=OFF"