{ stdenv, fetchurl, fetchpatch, pkgs }: let makeTuxonicePatch = { version, kernelVersion, sha256, url ? "http://tuxonice.nigelcunningham.com.au/downloads/all/tuxonice-for-linux-${kernelVersion}-${version}.patch.bz2" }: { name = "tuxonice-${kernelVersion}"; patch = stdenv.mkDerivation { name = "tuxonice-${version}-for-${kernelVersion}.patch"; src = fetchurl { inherit url sha256; }; phases = [ "installPhase" ]; installPhase = '' source $stdenv/setup bunzip2 -c $src > $out ''; }; }; in rec { bridge_stp_helper = { name = "bridge-stp-helper"; patch = ./bridge-stp-helper.patch; }; p9_fixes = { name = "p9-fixes"; patch = ./p9-fixes.patch; }; mips_fpureg_emu = { name = "mips-fpureg-emulation"; patch = ./mips-fpureg-emulation.patch; }; mips_fpu_sigill = { name = "mips-fpu-sigill"; patch = ./mips-fpu-sigill.patch; }; mips_ext3_n32 = { name = "mips-ext3-n32"; patch = ./mips-ext3-n32.patch; }; modinst_arg_list_too_long = { name = "modinst-arglist-too-long"; patch = ./modinst-arg-list-too-long.patch; }; genksyms_fix_segfault = { name = "genksyms-fix-segfault"; patch = ./genksyms-fix-segfault.patch; }; cpu-cgroup-v2 = import ./cpu-cgroup-v2-patches; tag_hardened = rec { name = "tag-hardened"; patch = ./tag-hardened.patch; }; # https://bugzilla.kernel.org/show_bug.cgi?id=197591#c6 iwlwifi_mvm_support_version_7_scan_req_umac_fw_command = rec { name = "iwlwifi_mvm_support_version_7_scan_req_umac_fw_command"; patch = fetchpatch { name = name + ".patch"; url = https://bugzilla.kernel.org/attachment.cgi?id=260597; sha256 = "09096npxpgvlwdz3pb3m9brvxh7vy0xc9z9p8hh85xyczyzcsjhr"; }; }; riscv_modules = { name = "riscv-modules"; patch = ./riscv-modules.patch; }; # http://lists.infradead.org/pipermail/linux-riscv/2018-February/000054.html riscv_irq_busy = { name = "riscv-irq-busy"; patch = ./riscv-irq-busy.patch; }; # http://lists.infradead.org/pipermail/linux-riscv/2018-February/000059.html riscv_install = { name = "riscv-install"; patch = ./riscv-install.patch; }; # http://lists.infradead.org/pipermail/linux-riscv/2018-February/000056.html riscv_initrd = { name = "riscv-initrd"; patch = ./riscv-initrd.patch; }; # http://lists.infradead.org/pipermail/linux-riscv/2018-February/000058.html riscv_initrd_free = { name = "riscv-initrd-free"; patch = ./riscv-initrd-free.patch; }; }