diff --git a/xorg/xf86-video-nouveau/build b/xorg/xf86-video-nouveau/build index 3054c8be..ca9aeb8c 100755 --- a/xorg/xf86-video-nouveau/build +++ b/xorg/xf86-video-nouveau/build @@ -1,5 +1,7 @@ #!/bin/sh -e +patch -p1 < rootless-nouveau.patch + export LDFLAGS="-Wl,-z,lazy" ./configure \ diff --git a/xorg/xf86-video-nouveau/checksums b/xorg/xf86-video-nouveau/checksums index ff53e974..c1f740ef 100644 --- a/xorg/xf86-video-nouveau/checksums +++ b/xorg/xf86-video-nouveau/checksums @@ -1 +1,2 @@ 304060806415579cdb5c1f71f1c54d11cacb431b5552b170decbc883ed43bf06 xf86-video-nouveau-1.0.16.tar.bz2 +e9197c97db81da40b9f1abc76ae349b4fe42a7563fbe9ac80821a68327e28c01 rootless-nouveau.patch diff --git a/xorg/xf86-video-nouveau/depends b/xorg/xf86-video-nouveau/depends index 4000b008..6a1140bd 100644 --- a/xorg/xf86-video-nouveau/depends +++ b/xorg/xf86-video-nouveau/depends @@ -1,3 +1,2 @@ -eudev libdrm xorgproto diff --git a/xorg/xf86-video-nouveau/patches/rootless-nouveau.patch b/xorg/xf86-video-nouveau/patches/rootless-nouveau.patch new file mode 100644 index 00000000..11feacc9 --- /dev/null +++ b/xorg/xf86-video-nouveau/patches/rootless-nouveau.patch @@ -0,0 +1,15 @@ +diff --git a/src/nv_driver.c b/src/nv_driver.c +index 185bba7..7927128 100644 +--- a/src/nv_driver.c ++++ b/src/nv_driver.c +@@ -501,6 +501,10 @@ NVEnterVT(VT_FUNC_ARGS_DECL) + (pNVEnt->platform_dev->flags & XF86_PDEV_SERVER_FD))) + #endif + { ++ ret = drmIsMaster(pNv->dev->fd); ++ if (ret) ++ return TRUE; ++ + ret = drmSetMaster(pNv->dev->fd); + if (ret) + ErrorF("Unable to get master: %s\n", strerror(errno)); diff --git a/xorg/xf86-video-nouveau/sources b/xorg/xf86-video-nouveau/sources index f4610fd8..7447e12d 100644 --- a/xorg/xf86-video-nouveau/sources +++ b/xorg/xf86-video-nouveau/sources @@ -1 +1,2 @@ https://x.org/releases/individual/driver/xf86-video-nouveau-1.0.16.tar.bz2 +patches/rootless-nouveau.patch