linux: patch request-key binary path

This is necessary for id mapping to work with NFS + Kerberos, and also
touches #68106 and 634638.

+32
+5
pkgs/os-specific/linux/kernel/patches.nix
··· 6 patch = ./bridge-stp-helper.patch; 7 }; 8 9 p9_fixes = 10 { name = "p9-fixes"; 11 patch = ./p9-fixes.patch;
··· 6 patch = ./bridge-stp-helper.patch; 7 }; 8 9 + request_key_helper = 10 + { name = "request-key-helper"; 11 + patch = ./request-key-helper.patch; 12 + }; 13 + 14 p9_fixes = 15 { name = "p9-fixes"; 16 patch = ./p9-fixes.patch;
+13
pkgs/os-specific/linux/kernel/request-key-helper.patch
···
··· 1 + diff --git a/security/keys/request_key.c b/security/keys/request_key.c 2 + index 957b9e3e1492..5436a0d8b81d 100644 3 + --- a/security/keys/request_key.c 4 + +++ b/security/keys/request_key.c 5 + @@ -114,7 +114,7 @@ static int call_usermodehelper_keys(const char *path, char **argv, char **envp, 6 + */ 7 + static int call_sbin_request_key(struct key *authkey, void *aux) 8 + { 9 + - static char const request_key[] = "/sbin/request-key"; 10 + + static char const request_key[] = "/run/current-system/sw/bin/request-key"; 11 + struct request_key_auth *rka = get_request_key_auth(authkey); 12 + const struct cred *cred = current_cred(); 13 + key_serial_t prkey, sskey;
+14
pkgs/top-level/all-packages.nix
··· 16145 linux_mptcp_94 = callPackage ../os-specific/linux/kernel/linux-mptcp-94.nix { 16146 kernelPatches = 16147 [ kernelPatches.bridge_stp_helper 16148 kernelPatches.cpu-cgroup-v2."4.11" 16149 kernelPatches.modinst_arg_list_too_long 16150 ] ··· 16162 linux_rpi1 = callPackage ../os-specific/linux/kernel/linux-rpi.nix { 16163 kernelPatches = with kernelPatches; [ 16164 bridge_stp_helper 16165 ]; 16166 rpiVersion = 1; 16167 }; ··· 16169 linux_rpi2 = callPackage ../os-specific/linux/kernel/linux-rpi.nix { 16170 kernelPatches = with kernelPatches; [ 16171 bridge_stp_helper 16172 ]; 16173 rpiVersion = 2; 16174 }; ··· 16176 linux_rpi3 = callPackage ../os-specific/linux/kernel/linux-rpi.nix { 16177 kernelPatches = with kernelPatches; [ 16178 bridge_stp_helper 16179 ]; 16180 rpiVersion = 3; 16181 }; ··· 16183 linux_rpi4 = callPackage ../os-specific/linux/kernel/linux-rpi.nix { 16184 kernelPatches = with kernelPatches; [ 16185 bridge_stp_helper 16186 ]; 16187 rpiVersion = 4; 16188 }; ··· 16190 linux_4_4 = callPackage ../os-specific/linux/kernel/linux-4.4.nix { 16191 kernelPatches = 16192 [ kernelPatches.bridge_stp_helper 16193 kernelPatches.cpu-cgroup-v2."4.4" 16194 kernelPatches.modinst_arg_list_too_long 16195 # https://github.com/NixOS/nixpkgs/issues/42755 ··· 16203 linux_4_9 = callPackage ../os-specific/linux/kernel/linux-4.9.nix { 16204 kernelPatches = 16205 [ kernelPatches.bridge_stp_helper 16206 kernelPatches.cpu-cgroup-v2."4.9" 16207 kernelPatches.modinst_arg_list_too_long 16208 ]; ··· 16211 linux_4_14 = callPackage ../os-specific/linux/kernel/linux-4.14.nix { 16212 kernelPatches = 16213 [ kernelPatches.bridge_stp_helper 16214 # See pkgs/os-specific/linux/kernel/cpu-cgroup-v2-patches/README.md 16215 # when adding a new linux version 16216 kernelPatches.cpu-cgroup-v2."4.11" ··· 16222 linux_4_19 = callPackage ../os-specific/linux/kernel/linux-4.19.nix { 16223 kernelPatches = 16224 [ kernelPatches.bridge_stp_helper 16225 kernelPatches.modinst_arg_list_too_long 16226 kernelPatches.export_kernel_fpu_functions."4.14" 16227 ]; ··· 16230 linux_5_3 = callPackage ../os-specific/linux/kernel/linux-5.3.nix { 16231 kernelPatches = [ 16232 kernelPatches.bridge_stp_helper 16233 kernelPatches.export_kernel_fpu_functions."5.3" 16234 ]; 16235 }; ··· 16237 linux_5_4 = callPackage ../os-specific/linux/kernel/linux-5.4.nix { 16238 kernelPatches = [ 16239 kernelPatches.bridge_stp_helper 16240 ]; 16241 }; 16242 16243 linux_testing = callPackage ../os-specific/linux/kernel/linux-testing.nix { 16244 kernelPatches = [ 16245 kernelPatches.bridge_stp_helper 16246 ]; 16247 }; 16248 16249 linux_testing_bcachefs = callPackage ../os-specific/linux/kernel/linux-testing-bcachefs.nix { 16250 kernelPatches = 16251 [ kernelPatches.bridge_stp_helper 16252 kernelPatches.modinst_arg_list_too_long 16253 ]; 16254 }; ··· 16256 linux_hardkernel_4_14 = callPackage ../os-specific/linux/kernel/linux-hardkernel-4.14.nix { 16257 kernelPatches = [ 16258 kernelPatches.bridge_stp_helper 16259 kernelPatches.modinst_arg_list_too_long 16260 ]; 16261 };
··· 16145 linux_mptcp_94 = callPackage ../os-specific/linux/kernel/linux-mptcp-94.nix { 16146 kernelPatches = 16147 [ kernelPatches.bridge_stp_helper 16148 + kernelPatches.request_key_helper 16149 kernelPatches.cpu-cgroup-v2."4.11" 16150 kernelPatches.modinst_arg_list_too_long 16151 ] ··· 16163 linux_rpi1 = callPackage ../os-specific/linux/kernel/linux-rpi.nix { 16164 kernelPatches = with kernelPatches; [ 16165 bridge_stp_helper 16166 + request_key_helper 16167 ]; 16168 rpiVersion = 1; 16169 }; ··· 16171 linux_rpi2 = callPackage ../os-specific/linux/kernel/linux-rpi.nix { 16172 kernelPatches = with kernelPatches; [ 16173 bridge_stp_helper 16174 + request_key_helper 16175 ]; 16176 rpiVersion = 2; 16177 }; ··· 16179 linux_rpi3 = callPackage ../os-specific/linux/kernel/linux-rpi.nix { 16180 kernelPatches = with kernelPatches; [ 16181 bridge_stp_helper 16182 + request_key_helper 16183 ]; 16184 rpiVersion = 3; 16185 }; ··· 16187 linux_rpi4 = callPackage ../os-specific/linux/kernel/linux-rpi.nix { 16188 kernelPatches = with kernelPatches; [ 16189 bridge_stp_helper 16190 + request_key_helper 16191 ]; 16192 rpiVersion = 4; 16193 }; ··· 16195 linux_4_4 = callPackage ../os-specific/linux/kernel/linux-4.4.nix { 16196 kernelPatches = 16197 [ kernelPatches.bridge_stp_helper 16198 + kernelPatches.request_key_helper 16199 kernelPatches.cpu-cgroup-v2."4.4" 16200 kernelPatches.modinst_arg_list_too_long 16201 # https://github.com/NixOS/nixpkgs/issues/42755 ··· 16209 linux_4_9 = callPackage ../os-specific/linux/kernel/linux-4.9.nix { 16210 kernelPatches = 16211 [ kernelPatches.bridge_stp_helper 16212 + kernelPatches.request_key_helper 16213 kernelPatches.cpu-cgroup-v2."4.9" 16214 kernelPatches.modinst_arg_list_too_long 16215 ]; ··· 16218 linux_4_14 = callPackage ../os-specific/linux/kernel/linux-4.14.nix { 16219 kernelPatches = 16220 [ kernelPatches.bridge_stp_helper 16221 + kernelPatches.request_key_helper 16222 # See pkgs/os-specific/linux/kernel/cpu-cgroup-v2-patches/README.md 16223 # when adding a new linux version 16224 kernelPatches.cpu-cgroup-v2."4.11" ··· 16230 linux_4_19 = callPackage ../os-specific/linux/kernel/linux-4.19.nix { 16231 kernelPatches = 16232 [ kernelPatches.bridge_stp_helper 16233 + kernelPatches.request_key_helper 16234 kernelPatches.modinst_arg_list_too_long 16235 kernelPatches.export_kernel_fpu_functions."4.14" 16236 ]; ··· 16239 linux_5_3 = callPackage ../os-specific/linux/kernel/linux-5.3.nix { 16240 kernelPatches = [ 16241 kernelPatches.bridge_stp_helper 16242 + kernelPatches.request_key_helper 16243 kernelPatches.export_kernel_fpu_functions."5.3" 16244 ]; 16245 }; ··· 16247 linux_5_4 = callPackage ../os-specific/linux/kernel/linux-5.4.nix { 16248 kernelPatches = [ 16249 kernelPatches.bridge_stp_helper 16250 + kernelPatches.request_key_helper 16251 ]; 16252 }; 16253 16254 linux_testing = callPackage ../os-specific/linux/kernel/linux-testing.nix { 16255 kernelPatches = [ 16256 kernelPatches.bridge_stp_helper 16257 + kernelPatches.request_key_helper 16258 ]; 16259 }; 16260 16261 linux_testing_bcachefs = callPackage ../os-specific/linux/kernel/linux-testing-bcachefs.nix { 16262 kernelPatches = 16263 [ kernelPatches.bridge_stp_helper 16264 + kernelPatches.request_key_helper 16265 kernelPatches.modinst_arg_list_too_long 16266 ]; 16267 }; ··· 16269 linux_hardkernel_4_14 = callPackage ../os-specific/linux/kernel/linux-hardkernel-4.14.nix { 16270 kernelPatches = [ 16271 kernelPatches.bridge_stp_helper 16272 + kernelPatches.request_key_helper 16273 kernelPatches.modinst_arg_list_too_long 16274 ]; 16275 };