diff options
Diffstat (limited to 'nixpkgs/nixos/modules/hardware/video/ati.nix')
-rw-r--r-- | nixpkgs/nixos/modules/hardware/video/ati.nix | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/nixpkgs/nixos/modules/hardware/video/ati.nix b/nixpkgs/nixos/modules/hardware/video/ati.nix new file mode 100644 index 000000000000..6102919f0155 --- /dev/null +++ b/nixpkgs/nixos/modules/hardware/video/ati.nix @@ -0,0 +1,39 @@ +# This module provides the proprietary ATI X11 / OpenGL drivers. + +{ config, lib, pkgs, ... }: + +with lib; + +let + + drivers = config.services.xserver.videoDrivers; + + enabled = elem "ati_unfree" drivers; + + ati_x11 = config.boot.kernelPackages.ati_drivers_x11; + +in + +{ + + config = mkIf enabled { + + nixpkgs.config.xorg.abiCompat = "1.17"; + + services.xserver.drivers = singleton + { name = "fglrx"; modules = [ ati_x11 ]; libPath = [ "${ati_x11}/lib" ]; }; + + hardware.opengl.package = ati_x11; + hardware.opengl.package32 = pkgs.pkgsi686Linux.linuxPackages.ati_drivers_x11.override { libsOnly = true; kernel = null; }; + + environment.systemPackages = [ ati_x11 ]; + + boot.extraModulePackages = [ ati_x11 ]; + + boot.blacklistedKernelModules = [ "radeon" ]; + + environment.etc."ati".source = "${ati_x11}/etc/ati"; + + }; + +} |