From 275855d632b4991893974e273686811a246cd6f2 Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Tue, 6 Feb 2024 22:45:01 +0000 Subject: [PATCH 1/4] nixos: hostapd: drop unused `crda` package import --- nixos/modules/services/networking/hostapd.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/nixos/modules/services/networking/hostapd.nix b/nixos/modules/services/networking/hostapd.nix index 5bd8e1d4d7a0..00482e59acf3 100644 --- a/nixos/modules/services/networking/hostapd.nix +++ b/nixos/modules/services/networking/hostapd.nix @@ -1197,8 +1197,6 @@ in { environment.systemPackages = [cfg.package]; - services.udev.packages = with pkgs; [crda]; - systemd.services.hostapd = { description = "IEEE 802.11 Host Access-Point Daemon"; From 31fc36fcd96da4f7cc232c9beae1771aa919d15d Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Tue, 6 Feb 2024 22:45:47 +0000 Subject: [PATCH 2/4] wireless-regdb: revert "add `crda` to tests" This reverts commit eb657c45f99e64b326ad21eab76df1afb347953b. Prepare for `crda` removal from `nixpkgs`. According to upstream https://lore.kernel.org/linux-wireless/455bafff0d609eb182ba30a5fbf319888e0e961d.camel@sipsolutions.net/ `crda` is not needed for kernels `4.16` or later. Such old kernels are not in `nixpkgs` anymore. --- pkgs/data/misc/wireless-regdb/default.nix | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/pkgs/data/misc/wireless-regdb/default.nix b/pkgs/data/misc/wireless-regdb/default.nix index f2fcd0be4ae4..cc419ffbea15 100644 --- a/pkgs/data/misc/wireless-regdb/default.nix +++ b/pkgs/data/misc/wireless-regdb/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenvNoCC, fetchurl, directoryListingUpdater, crda }: +{ lib, stdenvNoCC, fetchurl, directoryListingUpdater }: stdenvNoCC.mkDerivation rec { pname = "wireless-regdb"; @@ -16,12 +16,7 @@ stdenvNoCC.mkDerivation rec { "PREFIX=" ]; - passthru = { - tests = { - inherit crda; # validate data base signature - }; - updateScript = directoryListingUpdater { }; - }; + passthru.updateScript = directoryListingUpdater { }; meta = with lib; { description = "Wireless regulatory database for CRDA"; From 8c618c742cdffd547d0c8e9810e1db2e7e185507 Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Tue, 6 Feb 2024 22:50:09 +0000 Subject: [PATCH 3/4] crda: remove package According to upstream https://lore.kernel.org/linux-wireless/455bafff0d609eb182ba30a5fbf319888e0e961d.camel@sipsolutions.net/ `crda` is not needed for kernels `4.16` or later. Such old kernels are not in `nixpkgs` anymore. --- pkgs/os-specific/linux/crda/default.nix | 78 ------------------------- pkgs/top-level/aliases.nix | 1 + pkgs/top-level/all-packages.nix | 2 - 3 files changed, 1 insertion(+), 80 deletions(-) delete mode 100644 pkgs/os-specific/linux/crda/default.nix diff --git a/pkgs/os-specific/linux/crda/default.nix b/pkgs/os-specific/linux/crda/default.nix deleted file mode 100644 index ffed5fc36a78..000000000000 --- a/pkgs/os-specific/linux/crda/default.nix +++ /dev/null @@ -1,78 +0,0 @@ -{ lib, stdenv, fetchurl, fetchpatch, libgcrypt, libnl, pkg-config, python3Packages, wireless-regdb }: - -stdenv.mkDerivation rec { - pname = "crda"; - version = "4.14"; - - src = fetchurl { - url = "https://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/crda.git/snapshot/crda-${version}.tar.gz"; - sha256 = "sha256-Wo81u4snR09Gaw511FG6kXQz2KqxiJZ4pk2cTnKouMI="; - }; - - patches = [ - # Fix python 3 build: except ImportError, e: SyntaxError: invalid syntax - (fetchpatch { - url = "https://raw.githubusercontent.com/archlinux/svntogit-packages/d234fddf451fab0f4fc412e2769f54e11f10d7d8/trunk/crda-4.14-python-3.patch"; - sha256 = "sha256-KEezEKrfizq9k4ZiE2mf3Nl4JiBayhXeVnFl7wYh28Y="; - }) - - (fetchpatch { - url = "https://raw.githubusercontent.com/archlinux/svntogit-packages/d48ec843222b0d74c85bce86fa6f087c7dfdf952/trunk/0001-Makefile-Link-libreg.so-against-the-crypto-library.patch"; - sha256 = "sha256-j93oydi209f22OF8aXZ/NczuUOnlhkdSeYvy2WRRvm0="; - }) - ]; - - strictDeps = true; - - nativeBuildInputs = [ - pkg-config - python3Packages.m2crypto # only used for a build time script - ]; - - buildInputs = [ - libgcrypt - libnl - ]; - - postPatch = '' - patchShebangs utils/ - substituteInPlace Makefile \ - --replace 'gzip' 'gzip -n' \ - --replace ldconfig true \ - --replace pkg-config $PKG_CONFIG - sed -i crda.c \ - -e "/\/usr\/.*\/regulatory.bin/d" \ - -e "s|/lib/crda|${wireless-regdb}/lib/crda|g" - ''; - - makeFlags = [ - "PREFIX=$(out)" - "SBINDIR=$(out)/bin/" - "UDEV_RULE_DIR=$(out)/lib/udev/rules.d/" - "REG_BIN=${wireless-regdb}/lib/crda/regulatory.bin" - ]; - - buildFlags = [ "all_noverify" ]; - enableParallelBuilding = true; - - doCheck = true; - checkTarget = "verify"; - - meta = with lib; { - description = "Linux wireless Central Regulatory Domain Agent"; - longDescription = '' - CRDA acts as the udev helper for communication between the kernel and - userspace for regulatory compliance. It relies on nl80211 for communication. - - CRDA is intended to be run only through udev communication from the kernel. - To use it under NixOS, add - - services.udev.packages = [ pkgs.crda ]; - - to the system configuration. - ''; - homepage = "https://wireless.wiki.kernel.org/en/developers/regulatory/crda"; - license = licenses.free; # "copyleft-next 0.3.0", as yet without a web site - platforms = platforms.linux; - }; -} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index f588bb778153..7b5c94d9a9e6 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -173,6 +173,7 @@ mapAliases ({ concurrencykit = libck; # Added 2021-03 connmanPackages = throw "'connmanPackages' was removed and their subpackages/attributes were promoted to top level."; # Added 2023-10-08 convoy = throw "'convoy' has been removed from nixpkgs, as it was archived upstream"; # Added 2023-12-27 + crda = throw "'crda' has been removed from nixpkgs, as it is needed only for kernels before 4.16"; # Added 2024-02-06 cups-kyodialog3 = cups-kyodialog; # Added 2022-11-12 cvs_fast_export = cvs-fast-export; # Added 2021-06-10 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 701ca27a7e13..30b037fbc282 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -27622,8 +27622,6 @@ with pkgs; cramfsswap = callPackage ../os-specific/linux/cramfsswap { }; - crda = callPackage ../os-specific/linux/crda { }; - cshatag = callPackage ../os-specific/linux/cshatag { }; # Darwin package set From 21924d4c931f4149ba26e13d79e17301550040a5 Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Tue, 6 Feb 2024 22:53:14 +0000 Subject: [PATCH 4/4] wireless-regdb: 2023.09.01 -> 2024.01.23 (take 2, with crda removed) Now that `crda` is removed from `nixpkgs` we can update `wireless-regdb` to a newer version. --- pkgs/data/misc/wireless-regdb/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/data/misc/wireless-regdb/default.nix b/pkgs/data/misc/wireless-regdb/default.nix index cc419ffbea15..284e6f524de5 100644 --- a/pkgs/data/misc/wireless-regdb/default.nix +++ b/pkgs/data/misc/wireless-regdb/default.nix @@ -2,11 +2,11 @@ stdenvNoCC.mkDerivation rec { pname = "wireless-regdb"; - version = "2023.09.01"; + version = "2024.01.23"; src = fetchurl { url = "https://www.kernel.org/pub/software/network/${pname}/${pname}-${version}.tar.xz"; - hash = "sha256-JtTCpyfMWSObhHNarYVrfH0LBOMKpcI1xPf0f18FNJE="; + hash = "sha256-yKYcms92+n60I56J9kDe4+hwmNn2m001GMnGD8bSDFU="; }; dontBuild = true;