pkgs: Add working Minecraft on Wayland GLFW
Some checks failed
CI / Check, build and cache Nix flake (push) Failing after 12m18s
Some checks failed
CI / Check, build and cache Nix flake (push) Failing after 12m18s
This commit is contained in:
parent
44e87aa387
commit
51d44e472a
@ -9,4 +9,5 @@ in
|
|||||||
librespeed-go = callPackage ./librespeed-go.nix { };
|
librespeed-go = callPackage ./librespeed-go.nix { };
|
||||||
modrinth-app = callPackage ./modrinth-app { };
|
modrinth-app = callPackage ./modrinth-app { };
|
||||||
wastebin = callPackage ./wastebin { };
|
wastebin = callPackage ./wastebin { };
|
||||||
|
glfw-minecraft = callPackage ./glfw-minecraft { };
|
||||||
}
|
}
|
||||||
|
6
pkgs/glfw-minecraft/default.nix
Normal file
6
pkgs/glfw-minecraft/default.nix
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
{ lib, glfw-wayland-minecraft, ... }:
|
||||||
|
glfw-wayland-minecraft.overrideAttrs (o: {
|
||||||
|
patches = [
|
||||||
|
./suppress-wayland-errors.patch
|
||||||
|
];
|
||||||
|
})
|
43
pkgs/glfw-minecraft/suppress-wayland-errors.patch
Normal file
43
pkgs/glfw-minecraft/suppress-wayland-errors.patch
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
diff --git a/src/wl_window.c b/src/wl_window.c
|
||||||
|
index 7c509896..db9a6451 100644
|
||||||
|
--- a/src/wl_window.c
|
||||||
|
+++ b/src/wl_window.c
|
||||||
|
@@ -2115,25 +2115,21 @@ void _glfwSetWindowTitleWayland(_GLFWwindow* window, const char* title)
|
||||||
|
void _glfwSetWindowIconWayland(_GLFWwindow* window,
|
||||||
|
int count, const GLFWimage* images)
|
||||||
|
{
|
||||||
|
- _glfwInputError(GLFW_FEATURE_UNAVAILABLE,
|
||||||
|
- "Wayland: The platform does not support setting the window icon");
|
||||||
|
+ fprintf(stderr, "!!! Ignoring Error: Wayland: The platform does not support setting the window icon\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
void _glfwGetWindowPosWayland(_GLFWwindow* window, int* xpos, int* ypos)
|
||||||
|
{
|
||||||
|
// A Wayland client is not aware of its position, so just warn and leave it
|
||||||
|
// as (0, 0)
|
||||||
|
-
|
||||||
|
- _glfwInputError(GLFW_FEATURE_UNAVAILABLE,
|
||||||
|
- "Wayland: The platform does not provide the window position");
|
||||||
|
+ fprintf(stderr, "!!! Ignoring Error: Wayland: The platform does not provide the window position\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
void _glfwSetWindowPosWayland(_GLFWwindow* window, int xpos, int ypos)
|
||||||
|
{
|
||||||
|
// A Wayland client can not set its position, so just warn
|
||||||
|
|
||||||
|
- _glfwInputError(GLFW_FEATURE_UNAVAILABLE,
|
||||||
|
- "Wayland: The platform does not support setting the window position");
|
||||||
|
+ fprintf(stderr, "!!! Ignoring Error: Wayland: The platform does not support setting the window position\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
void _glfwGetWindowSizeWayland(_GLFWwindow* window, int* width, int* height)
|
||||||
|
@@ -2359,8 +2355,7 @@ void _glfwRequestWindowAttentionWayland(_GLFWwindow* window)
|
||||||
|
|
||||||
|
void _glfwFocusWindowWayland(_GLFWwindow* window)
|
||||||
|
{
|
||||||
|
- _glfwInputError(GLFW_FEATURE_UNAVAILABLE,
|
||||||
|
- "Wayland: The platform does not support setting the input focus");
|
||||||
|
+ fprintf(stderr, "!!! Ignoring Error: Wayland: The platform does not support setting the input focus\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
void _glfwSetWindowMonitorWayland(_GLFWwindow* window,
|
Loading…
Reference in New Issue
Block a user