From 5a40af2df25680eb5e63abbd83fa93bd30191390 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20Gr=C3=A4fenstein?= Date: Sat, 13 Mar 2021 21:57:27 +0100 Subject: [PATCH] rtlwifi_new: fix build & rename to rtw88 --- .../firmware/rtlwifi_new-firmware/default.nix | 23 ---------- .../linux/firmware/rtw88-firmware/default.nix | 25 +++++++++++ .../os-specific/linux/rtlwifi_new/default.nix | 42 ------------------- pkgs/os-specific/linux/rtw88/default.nix | 40 ++++++++++++++++++ pkgs/top-level/aliases.nix | 3 ++ pkgs/top-level/all-packages.nix | 5 ++- 6 files changed, 71 insertions(+), 67 deletions(-) delete mode 100644 pkgs/os-specific/linux/firmware/rtlwifi_new-firmware/default.nix create mode 100644 pkgs/os-specific/linux/firmware/rtw88-firmware/default.nix delete mode 100644 pkgs/os-specific/linux/rtlwifi_new/default.nix create mode 100644 pkgs/os-specific/linux/rtw88/default.nix diff --git a/pkgs/os-specific/linux/firmware/rtlwifi_new-firmware/default.nix b/pkgs/os-specific/linux/firmware/rtlwifi_new-firmware/default.nix deleted file mode 100644 index 673ef686e48..00000000000 --- a/pkgs/os-specific/linux/firmware/rtlwifi_new-firmware/default.nix +++ /dev/null @@ -1,23 +0,0 @@ -{ stdenv, lib, linuxPackages }: - -with lib; - -stdenv.mkDerivation rec { - name = "rtlwifi_new-firmware-${linuxPackages.rtlwifi_new.version}"; - inherit (linuxPackages.rtlwifi_new) src; - - dontBuild = true; - - installPhase = '' - mkdir -p "$out/lib/firmware" - cp -rf firmware/rtlwifi/ "$out/lib/firmware" - ''; - - meta = { - description = "Firmware for the newest Realtek rtlwifi codes"; - inherit (src.meta) homepage; - license = licenses.unfreeRedistributableFirmware; - platforms = with platforms; linux; - maintainers = with maintainers; [ tvorog ]; - }; -} diff --git a/pkgs/os-specific/linux/firmware/rtw88-firmware/default.nix b/pkgs/os-specific/linux/firmware/rtw88-firmware/default.nix new file mode 100644 index 00000000000..b4e07624b6e --- /dev/null +++ b/pkgs/os-specific/linux/firmware/rtw88-firmware/default.nix @@ -0,0 +1,25 @@ +{ stdenvNoCC, lib, linuxPackages }: + +stdenvNoCC.mkDerivation { + pname = "rtw88-firmware"; + inherit (linuxPackages.rtw88) version src; + + dontBuild = true; + + installPhase = '' + runHook preInstall + + mkdir -p $out/lib/firmware/rtw88 + cp *.bin $out/lib/firmware/rtw88 + + runHook postInstall + ''; + + meta = with lib; { + description = "Firmware for the newest Realtek rtlwifi codes"; + homepage = "https://github.com/lwfinger/rtw88"; + license = licenses.unfreeRedistributableFirmware; + maintainers = with maintainers; [ tvorog ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/os-specific/linux/rtlwifi_new/default.nix b/pkgs/os-specific/linux/rtlwifi_new/default.nix deleted file mode 100644 index 12f87f40955..00000000000 --- a/pkgs/os-specific/linux/rtlwifi_new/default.nix +++ /dev/null @@ -1,42 +0,0 @@ -{ stdenv, lib, fetchFromGitHub, kernel }: - -with lib; - -let modDestDir = "$out/lib/modules/${kernel.modDirVersion}/kernel/drivers/net/wireless/realtek/rtlwifi"; - -in stdenv.mkDerivation rec { - pname = "rtlwifi_new"; - version = "2019-08-21"; - # When updating see https://github.com/lwfinger/rtl8723be/issues/17#issuecomment-657326751 - - src = fetchFromGitHub { - owner = "rtlwifi-linux"; - repo = "rtlwifi_new"; - # commit does not exist on any branch on the target repository - rev = "a108e3de87c2ed30b71c3c4595b79ab7a2f9e348"; - sha256 = "15kjs9i9vvmn1cdzccd5cljf3m45r4ssm65klkj2fdkf3kljj38k"; - }; - - hardeningDisable = [ "pic" "format" ]; - - nativeBuildInputs = kernel.moduleBuildDependencies; - - makeFlags = [ "KSRC=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build" ]; - - enableParallelBuilding = true; - - installPhase = '' - mkdir -p ${modDestDir} - find . -name '*.ko' -exec cp --parents {} ${modDestDir} \; - find ${modDestDir} -name '*.ko' -exec xz -f {} \; - ''; - - meta = { - description = "The newest Realtek rtlwifi codes"; - inherit (src.meta) homepage; - license = lib.licenses.gpl2; - platforms = with platforms; linux; - maintainers = with maintainers; [ tvorog ]; - priority = -1; - }; -} diff --git a/pkgs/os-specific/linux/rtw88/default.nix b/pkgs/os-specific/linux/rtw88/default.nix new file mode 100644 index 00000000000..c89125a920d --- /dev/null +++ b/pkgs/os-specific/linux/rtw88/default.nix @@ -0,0 +1,40 @@ +{ stdenv, lib, fetchFromGitHub, kernel }: + +let + modDestDir = "$out/lib/modules/${kernel.modDirVersion}/kernel/drivers/net/wireless/realtek/rtw88"; +in +stdenv.mkDerivation { + pname = "rtw88"; + version = "unstable-2021-03-21"; + + src = fetchFromGitHub { + owner = "lwfinger"; + repo = "rtw88"; + rev = "fb2d8d2be9b33328eaf391926c502b34f6367b01"; + hash = "sha256-NjB0eooI6j6IDtD572ZkairPdJwc/x+pxITLb7ujoS8="; + }; + + makeFlags = [ "KSRC=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build" ]; + + enableParallelBuilding = true; + + installPhase = '' + runHook preInstall + + mkdir -p ${modDestDir} + find . -name '*.ko' -exec cp --parents {} ${modDestDir} \; + find ${modDestDir} -name '*.ko' -exec xz -f {} \; + + runHook postInstall + ''; + + meta = with lib; { + description = "The newest Realtek rtlwifi codes"; + homepage = "https://github.com/lwfinger/rtw88"; + license = with licenses; [ bsd3 gpl2Only ]; + maintainers = with maintainers; [ tvorog ]; + platforms = platforms.linux; + broken = kernel.kernelOlder "4.14"; + priority = -1; + }; +} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index fb824ccccaa..b6ef7370731 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -579,6 +579,9 @@ mapAliases ({ rocm-runtime-ext = throw "rocm-runtime-ext has been removed, since its functionality was added to rocm-runtime"; #added 2020-08-21 rssglx = rss-glx; #added 2015-03-25 rssh = throw "rssh has been removed from nixpkgs: no upstream releases since 2012, several known CVEs"; # added 2020-08-25 + # The alias for linuxPackages*.rtlwifi_new is defined in ./all-packages.nix, + # due to it being inside the linuxPackagesFor function. + rtlwifi_new-firmware = rtw88-firmware; # added 2021-03-14 recordmydesktop = throw "recordmydesktop has been removed from nixpkgs, as it's unmaintained and uses deprecated libraries"; # added 2019-12-10 retroshare06 = retroshare; gtk-recordmydesktop = throw "gtk-recordmydesktop has been removed from nixpkgs, as it's unmaintained and uses deprecated libraries"; # added 2019-12-10 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 906e90a8249..a3233874243 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -19601,7 +19601,8 @@ in rtl8821cu = callPackage ../os-specific/linux/rtl8821cu { }; - rtlwifi_new = callPackage ../os-specific/linux/rtlwifi_new { }; + rtw88 = callPackage ../os-specific/linux/rtw88 { }; + rtlwifi_new = rtw88; openafs_1_8 = callPackage ../servers/openafs/1.8/module.nix { }; openafs_1_9 = callPackage ../servers/openafs/1.9/module.nix { }; @@ -20183,7 +20184,7 @@ in rtl8761b-firmware = callPackage ../os-specific/linux/firmware/rtl8761b-firmware { }; - rtlwifi_new-firmware = callPackage ../os-specific/linux/firmware/rtlwifi_new-firmware { }; + rtw88-firmware = callPackage ../os-specific/linux/firmware/rtw88-firmware { }; s3ql = callPackage ../tools/backup/s3ql { };