diff options
Diffstat (limited to 'pkgs/os-specific/linux/ati-drivers/default.nix')
-rw-r--r-- | pkgs/os-specific/linux/ati-drivers/default.nix | 38 |
1 files changed, 23 insertions, 15 deletions
diff --git a/pkgs/os-specific/linux/ati-drivers/default.nix b/pkgs/os-specific/linux/ati-drivers/default.nix index 326de9ed81ae..0aa67dba2378 100644 --- a/pkgs/os-specific/linux/ati-drivers/default.nix +++ b/pkgs/os-specific/linux/ati-drivers/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, kernelDev, xlibs, which, imake +{ stdenv, fetchurl, kernel, xlibs, which, imake , mesa # for fgl_glxgears , libXxf86vm, xf86vidmodeproto # for fglrx_gamma , xorg, makeWrapper, glibc, patchelf @@ -13,39 +13,45 @@ # See http://thread.gmane.org/gmane.linux.distributions.nixos/4145 for a # workaround (TODO) -# The gentoo ebuild contains much more magic.. +# The gentoo ebuild contains much more magic and is usually a great resource to +# find patches :) # http://wiki.cchtml.com/index.php/Main_Page # There is one issue left: # /usr/lib/dri/fglrx_dri.so must point to /run/opengl-driver/lib/fglrx_dri.so +# You eventually have to blacklist radeon module (?) + assert stdenv.system == "x86_64-linux"; -stdenv.mkDerivation rec { - name = "ati-drivers-${version}-${kernel.version}"; - version = "13.4"; +stdenv.mkDerivation { + name = "ati-drivers-13.12-${kernel.version}"; builder = ./builder.sh; inherit libXxf86vm xf86vidmodeproto; + gcc = stdenv.gcc.gcc; src = fetchurl { - url = http://www2.ati.com/drivers/linux/amd-driver-installer-catalyst-13-4-linux-x86.x86_64.zip; - sha256 = "1914ikdich0kg047bqh89ai5z4dyryj5mlw5i46n90fsfiaxa532"; + url = http://www2.ati.com/drivers/linux/amd-catalyst-13.12-linux-x86.x86_64.zip; + sha256 = "1c3fn328340by4qn99dgfj8c2q34fxdb2alcak0vnyc6bw7l5sms"; + curlOpts = "--referer http://support.amd.com/en-us/download/desktop?os=Linux%20x86_64"; }; - patchPhase = "patch -p0 < ${./gentoo-patches.patch}"; + # most patches are taken from gentoo + patchPhase = "patch -p1 < ${./gentoo-patches.patch}"; + patchPhaseSamples = "patch -p2 < ${./patch-samples.patch}"; buildInputs = - [ xlibs.libXext xlibs.libX11 + [ xlibs.libXext xlibs.libX11 xlibs.libXinerama xlibs.libXrandr which imake makeWrapper patchelf unzip mesa ]; - kernel = kernelDev; + kernel = kernel.dev; inherit glibc /* glibc only used for setting interpreter */; @@ -54,21 +60,23 @@ stdenv.mkDerivation rec { "${xorg.libXrender}/lib" "${xorg.libXext}/lib" "${xorg.libX11}/lib" + "${xorg.libXinerama}/lib" ]; # without this some applications like blender don't start, but they start # with nvidia. This causes them to be symlinked to $out/lib so that they # appear in /run/opengl-driver/lib which get's added to LD_LIBRARY_PATH - extraDRIlibs = [ xorg.libXext ]; + extraDRIlibs = [ xorg.libXext ]; inherit mesa; # only required to build examples - meta = { + meta = with stdenv.lib; { description = "ATI drivers"; homepage = http://support.amd.com/us/gpudownload/Pages/index.aspx; - license = "unfree"; - maintainers = [stdenv.lib.maintainers.marcweber]; - #platforms = [ "x86_64-linux" ]; + license = licenses.unfree; + maintainers = with maintainers; [marcweber offline]; + platforms = [ "x86_64-linux" ]; + hydraPlatforms = []; }; # moved assertions here because the name is evaluated when the NixOS manual is generated |