* In Quake 3, by default use Mesa as the OpenGL implementation. But
allow the OpenGL implementation to be overriden through the
OPENGL_DRIVER environment variable. If it is not set, we use the
implementation installed in the profile
/nix/var/nix/profiles/opengl, allowing easy late binding by the
user, e.g.,
$ nix-env -p /nix/var/nix/profiles/opengl -i nvidia-sys-opengl
might install the NVidia OpenGL implementation.
The code that does this is not specific to Quake 3: it has been
factored out into build-support/opengl/mesa-switch.sh. Presumably
any application that requires hardware-accelerated OpenGL needs it.
* Add the Quake 3 demo to the cache.
svn path=/nixpkgs/trunk/; revision=4612
This commit is contained in:
@@ -12,8 +12,13 @@ done
|
||||
ensureDir $out/bin
|
||||
|
||||
cat >$out/bin/quake3 <<EOF
|
||||
mesa=$mesa
|
||||
|
||||
$(cat $mesaSwitch)
|
||||
|
||||
exec $game/ioquake3.i386 \
|
||||
+set fs_basepath $out \
|
||||
+set r_allowSoftwareGL 1 \
|
||||
"\$@"
|
||||
EOF
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{stdenv, fetchurl, game, paks}:
|
||||
{stdenv, fetchurl, game, paks, mesa, name}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "quake3";
|
||||
builder = ./builder.sh;
|
||||
inherit game paks;
|
||||
inherit game paks mesa name;
|
||||
mesaSwitch = ../../../build-support/opengl/mesa-switch.sh;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user