summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorDavid McFarland <corngood@gmail.com>2018-01-09 21:20:33 -0400
committerDavid McFarland <corngood@gmail.com>2018-01-12 00:09:15 -0400
commitebf1dade82911ad4e0d88cf09ad4feb5819549d5 (patch)
tree4369a998a1efa26e9c53a1a6e891608cc907ec03 /pkgs
parent68dda232d2ca09a6609f8dfd5d24d8c195617d24 (diff)
downloadnixpkgs-ebf1dade82911ad4e0d88cf09ad4feb5819549d5.tar
nixpkgs-ebf1dade82911ad4e0d88cf09ad4feb5819549d5.tar.gz
nixpkgs-ebf1dade82911ad4e0d88cf09ad4feb5819549d5.tar.bz2
nixpkgs-ebf1dade82911ad4e0d88cf09ad4feb5819549d5.tar.lz
nixpkgs-ebf1dade82911ad4e0d88cf09ad4feb5819549d5.tar.xz
nixpkgs-ebf1dade82911ad4e0d88cf09ad4feb5819549d5.tar.zst
nixpkgs-ebf1dade82911ad4e0d88cf09ad4feb5819549d5.zip
xorg: allow and check abiCompat on current version
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/servers/x11/xorg/overrides.nix5
1 files changed, 3 insertions, 2 deletions
diff --git a/pkgs/servers/x11/xorg/overrides.nix b/pkgs/servers/x11/xorg/overrides.nix
index ca1a773c4a2..5de1dadc969 100644
--- a/pkgs/servers/x11/xorg/overrides.nix
+++ b/pkgs/servers/x11/xorg/overrides.nix
@@ -429,8 +429,9 @@ in
   xorgserver = with xorg; attrs_passed:
     # exchange attrs if abiCompat is set
     let
+      version = (builtins.parseDrvName attrs_passed.name).version;
       attrs = with args;
-        if (args.abiCompat == null) then attrs_passed
+        if (args.abiCompat == null || lib.hasPrefix args.abiCompat version) then attrs_passed
         else if (args.abiCompat == "1.17") then {
           name = "xorg-server-1.17.4";
           builder = ./builder.sh;
@@ -452,7 +453,7 @@ in
             buildInputs = [ dri2proto dri3proto renderproto libdrm openssl libX11 libXau libXaw libxcb xcbutil xcbutilwm xcbutilimage xcbutilkeysyms xcbutilrenderutil libXdmcp libXfixes libxkbfile libXmu libXpm libXrender libXres libXt ];
             postPatch = "sed '1i#include <malloc.h>' -i include/os.h";
             meta.platforms = stdenv.lib.platforms.unix;
-        } else throw "unsupported xorg abiCompat: ${args.abiCompat}";
+        } else throw "unsupported xorg abiCompat ${args.abiCompat} for ${attrs_passed.name}";
 
     in attrs //
     (let