Skip to content

Commit

Permalink
linux_chromiumos_3_18: remove kernel due lack of maintainer/breakage
Browse files Browse the repository at this point in the history
There is no maintainer for this package, probably not many users.
It requires effort to fix all third-party modules for this old kernel
versions. It might contain unpatched security holes.

For Pixel chromebooks, we have the samus-kernel.
Apart from that https://github.com/GalliumOS/linux might be a good choice.
  • Loading branch information
Mic92 authored and globin committed Sep 5, 2017
1 parent bf491f8 commit 44f9373
Show file tree
Hide file tree
Showing 9 changed files with 4 additions and 183 deletions.
3 changes: 1 addition & 2 deletions pkgs/os-specific/linux/acpi-call/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ stdenv.mkDerivation {
sed -e "s@/lib/modules/\$(.*)@${kernel.dev}/lib/modules/${kernel.modDirVersion}@" -i Makefile
sed -e 's@acpi/acpi[.]h@linux/acpi.h@g' -i acpi_call.c
'';

installPhase = ''
mkdir -p $out/lib/modules/${kernel.modDirVersion}/misc
cp acpi_call.ko $out/lib/modules/${kernel.modDirVersion}/misc
Expand All @@ -37,6 +37,5 @@ stdenv.mkDerivation {
maintainers = [stdenv.lib.maintainers.raskin];
platforms = stdenv.lib.platforms.linux;
description = "A module allowing arbitrary ACPI calls; use case: hybrid video";
broken = kernel.features.chromiumos or false;
};
}
1 change: 0 additions & 1 deletion pkgs/os-specific/linux/ena/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,5 @@ stdenv.mkDerivation rec {
license = lib.licenses.gpl2;
maintainers = [ lib.maintainers.eelco ];
platforms = lib.platforms.linux;
broken = kernel.features.chromiumos or false;
};
}

This file was deleted.

This file was deleted.

67 changes: 2 additions & 65 deletions pkgs/os-specific/linux/kernel/common-config.nix
Original file line number Diff line number Diff line change
Expand Up @@ -202,7 +202,7 @@ with stdenv.lib;
# Video configuration.
# Enable KMS for devices whose X.org driver supports it.
${optionalString (versionOlder version "4.3" && !(features.chromiumos or false)) ''
${optionalString (versionOlder version "4.3") ''
DRM_I915_KMS y
''}
# Allow specifying custom EDID on the kernel command line
Expand Down Expand Up @@ -566,9 +566,7 @@ with stdenv.lib;
MEDIA_CAMERA_SUPPORT y
MEDIA_RC_SUPPORT y
MEDIA_USB_SUPPORT y
${optionalString (!(features.chromiumos or false)) ''
MEDIA_PCI_SUPPORT y
''}
MEDIA_PCI_SUPPORT y
# Our initrd init uses shebang scripts, so can't be modular.
BINFMT_SCRIPT y
Expand Down Expand Up @@ -662,67 +660,6 @@ with stdenv.lib;
WW_MUTEX_SELFTEST? n
''}
# ChromiumOS support
${optionalString (features.chromiumos or false) ''
CHROME_PLATFORMS y
VGA_SWITCHEROO n
MMC_SDHCI_PXAV2 n
NET_IPVTI n
IPV6_VTI n
REGULATOR_FIXED_VOLTAGE n
TPS6105X n
CPU_FREQ_STAT y
IPV6 y
MFD_CROS_EC y
MFD_CROS_EC_LPC y
MFD_CROS_EC_DEV y
CHARGER_CROS_USB_PD y
I2C y
MEDIA_SUBDRV_AUTOSELECT n
VIDEO_IR_I2C n
BLK_DEV_DM y
ANDROID_PARANOID_NETWORK n
DM_VERITY n
DRM_VGEM n
CPU_FREQ_GOV_INTERACTIVE n
INPUT_KEYRESET n
DM_BOOTCACHE n
UID_CPUTIME n
${optionalString (versionAtLeast version "3.18") ''
CPUFREQ_DT n
EXTCON_CROS_EC n
DRM_POWERVR_ROGUE n
CHROMEOS_OF_FIRMWARE y
TEST_RHASHTABLE n
BCMDHD n
TRUSTY n
''}
${optionalString (versionOlder version "3.18") ''
MALI_MIDGARD n
DVB_USB_DIB0700 n
DVB_USB_DW2102 n
DVB_USB_PCTV452E n
DVB_USB_TTUSB2 n
DVB_USB_AF9015 n
DVB_USB_AF9035 n
DVB_USB_ANYSEE n
DVB_USB_AZ6007 n
DVB_USB_IT913X n
DVB_USB_LME2510 n
DVB_USB_RTL28XXU n
USB_S2255 n
VIDEO_EM28XX n
VIDEO_TM6000 n
USB_DWC2 n
USB_GSPCA n
SPEAKUP n
XO15_EBOOK n
USB_GADGET n
''}
''}
${kernelPlatform.kernelExtraConfig or ""}
${extraConfig}
''
23 changes: 0 additions & 23 deletions pkgs/os-specific/linux/kernel/linux-chromiumos-3.18.nix

This file was deleted.

10 changes: 0 additions & 10 deletions pkgs/os-specific/linux/kernel/patches.nix
Original file line number Diff line number Diff line change
Expand Up @@ -56,16 +56,6 @@ rec {
patch = ./genksyms-fix-segfault.patch;
};

chromiumos_Kconfig_fix_entries_3_18 =
{ name = "Kconfig_fix_entries_3_18";
patch = ./chromiumos-patches/fix-double-Kconfig-entry-3.18.patch;
};

chromiumos_no_link_restrictions =
{ name = "chromium-no-link-restrictions";
patch = ./chromiumos-patches/no-link-restrictions.patch;
};

cpu-cgroup-v2 = import ./cpu-cgroup-v2-patches;

DCCP_double_free_vulnerability_CVE-2017-6074 = rec
Expand Down
4 changes: 1 addition & 3 deletions pkgs/os-specific/linux/lttng-modules/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,7 @@ stdenv.mkDerivation rec {
license = with licenses; [ lgpl21 gpl2 mit ];
platforms = platforms.linux;
maintainers = [ maintainers.bjornfor ];
broken =
(builtins.compareVersions kernel.version "3.18" == -1) ||
(kernel.features.chromiumos or false);
broken = builtins.compareVersions kernel.version "3.18" == -1;
};

}
16 changes: 0 additions & 16 deletions pkgs/top-level/all-packages.nix
Original file line number Diff line number Diff line change
Expand Up @@ -12286,18 +12286,6 @@ with pkgs;

linux_samus_latest = linux_samus_4_12;

linux_chromiumos_3_18 = callPackage ../os-specific/linux/kernel/linux-chromiumos-3.18.nix {
kernelPatches = [ kernelPatches.chromiumos_Kconfig_fix_entries_3_18
kernelPatches.chromiumos_no_link_restrictions
kernelPatches.genksyms_fix_segfault
kernelPatches.DCCP_double_free_vulnerability_CVE-2017-6074
];
# compiler-gcc.h:107:30: fatal error: linux/compiler-gcc6.h: No such file or directory
stdenv = overrideCC stdenv gcc5;
};

linux_chromiumos_latest = linux_chromiumos_3_18;

/* Linux kernel modules are inherently tied to a specific kernel. So
rather than provide specific instances of those packages for a
specific kernel, we have a function that builds those packages
Expand Down Expand Up @@ -12480,10 +12468,6 @@ with pkgs;
linuxPackages_samus_4_12 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_samus_4_12);
linuxPackages_samus_latest = recurseIntoAttrs (linuxPackagesFor pkgs.linux_samus_latest);

# ChromiumOS kernels
linuxPackages_chromiumos_3_18 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_chromiumos_3_18);
linuxPackages_chromiumos_latest = recurseIntoAttrs (linuxPackagesFor pkgs.linux_chromiumos_latest);

# A function to build a manually-configured kernel
linuxManualConfig = pkgs.buildLinux;
buildLinux = makeOverridable (callPackage ../os-specific/linux/kernel/manual-config.nix {});
Expand Down

0 comments on commit 44f9373

Please sign in to comment.