From 7cf6df89038ac3b271ca7101030830c5d91551f0 Mon Sep 17 00:00:00 2001 From: Nikolay Amiantov Date: Thu, 15 Mar 2018 15:50:34 +0300 Subject: [PATCH] nvidiabl: 0.87 -> 2017-09-26 Fix build on newer kernels. Fixes #36356. Thanks to yorickvP for suggestions and maintainership. --- pkgs/os-specific/linux/nvidiabl/default.nix | 19 ++++++++-------- .../linux/nvidiabl/linux4compat.patch | 22 ------------------- 2 files changed, 10 insertions(+), 31 deletions(-) delete mode 100644 pkgs/os-specific/linux/nvidiabl/linux4compat.patch diff --git a/pkgs/os-specific/linux/nvidiabl/default.nix b/pkgs/os-specific/linux/nvidiabl/default.nix index 6f9af040b8a3..02161f7133ce 100644 --- a/pkgs/os-specific/linux/nvidiabl/default.nix +++ b/pkgs/os-specific/linux/nvidiabl/default.nix @@ -2,18 +2,19 @@ stdenv.mkDerivation rec { name = "nvidiabl-${version}-${kernel.version}"; - version = "0.87"; + version = "2017-09-26"; + # We use a fork which adds support for newer kernels -- upstream has been abandoned. src = fetchFromGitHub { - owner = "guillaumezin"; + owner = "yorickvP"; repo = "nvidiabl"; - rev = "v${version}"; - sha256 = "1hs61dxn84vsyvrd2s899dhgg342mhfkbdn1nkhcvly45hdp2nca"; + rev = "2d909f4dfceb24ce98479fd571411c6ec3b71bea"; + sha256 = "0dsar8fsaxwywjh6rbrxkhdp142vqjnsyxfz6bgpbqml6slpiqs1"; }; hardeningDisable = [ "pic" ]; - patches = [ ./linux4compat.patch ]; + nativeBuildInputs = kernel.moduleBuildDependencies; preConfigure = '' sed -i 's|/sbin/depmod|#/sbin/depmod|' Makefile @@ -25,11 +26,11 @@ stdenv.mkDerivation rec { "KVER=${kernel.modDirVersion}" ]; - meta = { + meta = with stdenv.lib; { description = "Linux driver for setting the backlight brightness on laptops using NVIDIA GPU"; homepage = https://github.com/guillaumezin/nvidiabl; - license = stdenv.lib.licenses.gpl2; - platforms = stdenv.lib.platforms.linux; - broken = !stdenv.lib.versionOlder kernel.version "4.9"; + license = licenses.gpl2; + platforms = [ "x86_64-linux" "i686-linux" ]; + maintainers = with maintainers; [ yorickvp ]; }; } diff --git a/pkgs/os-specific/linux/nvidiabl/linux4compat.patch b/pkgs/os-specific/linux/nvidiabl/linux4compat.patch deleted file mode 100644 index ad8236a2b630..000000000000 --- a/pkgs/os-specific/linux/nvidiabl/linux4compat.patch +++ /dev/null @@ -1,22 +0,0 @@ -From 2bf6f08b2492cc04a2c39fdcb22a2d0c18963d1c Mon Sep 17 00:00:00 2001 -From: sonic414 -Date: Tue, 28 Apr 2015 19:30:15 +0530 -Subject: [PATCH] strnicmp to strncasecmp in Linux 4.0.0 - ---- - nvidiabl-module.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/nvidiabl-module.c b/nvidiabl-module.c -index b789ea4..b306579 100644 ---- a/nvidiabl-module.c -+++ b/nvidiabl-module.c -@@ -214,7 +214,7 @@ static int __init nvidiabl_init(void) - #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,39) - - for (iii = 0 ; iii < sizeof(backlight_type_ids) ; iii++) { -- if (strnicmp(bl_type, backlight_type_ids[iii].id, sizeof(bl_type)) == 0) { -+ if (strncasecmp(bl_type, backlight_type_ids[iii].id, sizeof(bl_type)) == 0) { - props.type = backlight_type_ids[iii].type; - printk(KERN_INFO "nvidiabl: backlight type is %s\n", backlight_type_ids[iii].id); - }