From 410f21887ac624f0336a87fa56a0780dd3c673ae Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Sat, 28 Jan 2006 01:13:31 +0000 Subject: * A quick hack to get accelerated OpenGL working: just use the driver in /usr/lib/libGL.so.1 (which will typically load a driver in /usr/X11R6/lib/modules/dri). This has been tested on a i915 graphics card; it should work with most open source X.org drivers. For NVidia's proprietary drivers (which we cannot build ourselves anyway), some more symlinks are necessary; I'll add those later. So to get hardware-accelerated Quake 3, do: $ nix-env -p /nix/var/nix/profiles/opengl -i xorg-sys-opengl $ nix-env -i quake3-demo $ quake3 svn path=/nixpkgs/trunk/; revision=4613 --- pkgs/os-specific/linux/opengl/xorg-sys/builder.sh | 9 +++++++++ pkgs/os-specific/linux/opengl/xorg-sys/default.nix | 15 +++++++++++++++ 2 files changed, 24 insertions(+) create mode 100644 pkgs/os-specific/linux/opengl/xorg-sys/builder.sh create mode 100644 pkgs/os-specific/linux/opengl/xorg-sys/default.nix (limited to 'pkgs/os-specific/linux/opengl') diff --git a/pkgs/os-specific/linux/opengl/xorg-sys/builder.sh b/pkgs/os-specific/linux/opengl/xorg-sys/builder.sh new file mode 100644 index 00000000000..3894dbd207f --- /dev/null +++ b/pkgs/os-specific/linux/opengl/xorg-sys/builder.sh @@ -0,0 +1,9 @@ +source $stdenv/setup + +ensureDir $out/lib + +ln -s /usr/lib/libGL.so.1 $out/lib/ + +for i in $neededLibs; do + ln -s $i/lib/*.so* $out/lib/ +done diff --git a/pkgs/os-specific/linux/opengl/xorg-sys/default.nix b/pkgs/os-specific/linux/opengl/xorg-sys/default.nix new file mode 100644 index 00000000000..ae348b70c69 --- /dev/null +++ b/pkgs/os-specific/linux/opengl/xorg-sys/default.nix @@ -0,0 +1,15 @@ +# This is a very dirty hack to allow hardware acceleration of OpenGL +# applications for most (?) users. It will use the driver that your +# Linux distribution installed in /usr/lib/libGL.so.1. Hopefully, +# this driver uses hardware acceleration. +# +# Of course, use of the driver in /usr/lib is highly impure. But it +# might actually work ;-) + +{stdenv, xlibs, expat}: + +stdenv.mkDerivation { + name = "xorg-sys-opengl"; + builder = ./builder.sh; + neededLibs = [xlibs.libXxf86vm expat]; +} -- cgit 1.4.1