summary refs log tree commit diff
path: root/pkgs/os-specific/linux/rtl8723bs/default.nix
diff options
context:
space:
mode:
authorRobin Gloster <mail@glob.in>2016-05-02 22:58:02 +0000
committerRobin Gloster <mail@glob.in>2016-05-02 22:58:02 +0000
commitc92bca56f8ea5623cf01952621455db308d0f330 (patch)
treef940e6e4fabd8e58b91fe885f9541205258023b2 /pkgs/os-specific/linux/rtl8723bs/default.nix
parent0fdde5efd08c036fe9d73b4e65f2ba9797053d0f (diff)
parent94520a25adc6b6bee799ec9dab344cfdad3f7180 (diff)
downloadnixpkgs-c92bca56f8ea5623cf01952621455db308d0f330.tar
nixpkgs-c92bca56f8ea5623cf01952621455db308d0f330.tar.gz
nixpkgs-c92bca56f8ea5623cf01952621455db308d0f330.tar.bz2
nixpkgs-c92bca56f8ea5623cf01952621455db308d0f330.tar.lz
nixpkgs-c92bca56f8ea5623cf01952621455db308d0f330.tar.xz
nixpkgs-c92bca56f8ea5623cf01952621455db308d0f330.tar.zst
nixpkgs-c92bca56f8ea5623cf01952621455db308d0f330.zip
Merge remote-tracking branch 'upstream/master' into hardened-stdenv
Diffstat (limited to 'pkgs/os-specific/linux/rtl8723bs/default.nix')
-rw-r--r--pkgs/os-specific/linux/rtl8723bs/default.nix43
1 files changed, 23 insertions, 20 deletions
diff --git a/pkgs/os-specific/linux/rtl8723bs/default.nix b/pkgs/os-specific/linux/rtl8723bs/default.nix
index 2adbb4b743c..0010d6dc717 100644
--- a/pkgs/os-specific/linux/rtl8723bs/default.nix
+++ b/pkgs/os-specific/linux/rtl8723bs/default.nix
@@ -1,38 +1,41 @@
-{ stdenv, fetchFromGitHub, kernel }:
-
-let
-  ver = "c517f2b";
-in
+{ stdenv, fetchFromGitHub, nukeReferences, kernel }:
+with stdenv.lib;
 stdenv.mkDerivation rec {
-  name = "rtl8723bs-${kernel.version}-c517f2b";
+  name = "rtl8723bs-${kernel.version}-${rev}";
+  rev = "6918e9b2ff297b1cc7fde193e72452c33c10e1c8";
 
   src = fetchFromGitHub {
     owner = "hadess";
     repo = "rtl8723bs";
-    rev = "c517f2bf8bcc3d57311252ea7cd49ae81466eead";
-    sha256 = "0phzrhq85g52pi2b74a9sr9l2x6dzlz714k3pix486w2x5axw4xb";
+    inherit rev;
+    sha256 = "07srd457wnz29nvvq02wz66s387bhjbydnmbs3qr7ljprabhsgmi";
   };
 
   hardeningDisable = [ "pic" ];
 
-  patchPhase = ''
-    substituteInPlace ./Makefile --replace /lib/modules/ "${kernel.dev}/lib/modules/"
-    substituteInPlace ./Makefile --replace '$(shell uname -r)' "${kernel.modDirVersion}"
-    substituteInPlace ./Makefile --replace /sbin/depmod #
-    substituteInPlace ./Makefile --replace '$(MODDESTDIR)' "$out/lib/modules/${kernel.modDirVersion}/kernel/net/wireless/"
-    substituteInPlace ./Makefile --replace '/lib/firmware' "$out/lib/firmware"
-  '';
+  buildInputs = [ nukeReferences ];
+
+  makeFlags = concatStringsSep " " [
+    "ARCH=${stdenv.platform.kernelArch}" # Normally not needed, but the Makefile sets ARCH in a broken way.
+    "KSRC=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build" # Makefile uses $(uname -r); breaks us.
+  ];
+
+  enableParallelBuilding = true;
+
+  # The Makefile doesn't use env-vars well, so install manually:
+  installPhase = ''
+    mkdir -p      $out/lib/modules/${kernel.modDirVersion}/kernel/drivers/net/wireless
+    cp r8723bs.ko $out/lib/modules/${kernel.modDirVersion}/kernel/drivers/net/wireless
 
-  preInstall = ''
-    mkdir -p "$out/lib/modules/${kernel.modDirVersion}/kernel/net/wireless/"
-    mkdir -p "$out/lib/firmware/rtlwifi"
+    nuke-refs $(find $out -name "*.ko")
   '';
 
   meta = {
     description = "Realtek SDIO Wi-Fi driver";
     homepage = "https://github.com/hadess/rtl8723bs";
     license = stdenv.lib.licenses.gpl2;
-    platforms = [ "x86_64-linux" "i686-linux" ];
-    broken = !stdenv.lib.versionAtLeast kernel.version "3.19";
+    platforms = [ "x86_64-linux" "i686-linux" "armv7l-linux" ];
+    broken = ! versionAtLeast kernel.version "3.19";
+    maintainers = with maintainers; [ elitak ];
   };
 }