diff --git a/pkgs/os-specific/linux/zen-kernel/src-for-zen-stable.nix b/pkgs/os-specific/linux/zen-kernel/src-for-zen-stable.nix new file mode 100644 index 00000000000..6b5c86a1dd4 --- /dev/null +++ b/pkgs/os-specific/linux/zen-kernel/src-for-zen-stable.nix @@ -0,0 +1,9 @@ +rec { + version="5692deda2c65ef19b303c96c8524dcacb310bc70"; + name="zen-linux-5692deda2c65ef19b303c96c8524dcacb310bc70"; + hash="4a89d26c44897babe4f7f69890c1045bdc49d94a39c42534418e2d20dbc3b809"; + rev="5692deda2c65ef19b303c96c8524dcacb310bc70"; + url="git://zen-sources.org/kernel/zen-stable.git"; + + +} diff --git a/pkgs/os-specific/linux/zen-kernel/src-info-for-zen-stable.nix b/pkgs/os-specific/linux/zen-kernel/src-info-for-zen-stable.nix new file mode 100644 index 00000000000..647c9aee158 --- /dev/null +++ b/pkgs/os-specific/linux/zen-kernel/src-info-for-zen-stable.nix @@ -0,0 +1,6 @@ +{ + repoUrl = "git://zen-sources.org/kernel/zen-stable.git"; + rev = "origin/master"; + baseName = "zen-linux"; + method = "fetchgit"; +} diff --git a/pkgs/os-specific/linux/zen-kernel/zen-stable.nix b/pkgs/os-specific/linux/zen-kernel/zen-stable.nix new file mode 100644 index 00000000000..8a1e6d11fba --- /dev/null +++ b/pkgs/os-specific/linux/zen-kernel/zen-stable.nix @@ -0,0 +1,99 @@ +a : +let + s = import ./src-for-zen-stable.nix; +in +(import ../kernel/generic.nix) (rec { + inherit (a) stdenv fetchurl perl mktemp module_init_tools; + + src = a.builderDefs.fetchGitFromSrcInfo s; + version = "2.6.31-zen2"; + config = "./kernel-config"; + features = { + iwlwifi = true; + zen = true; + fbConDecor = true; + aufs = true; + }; + + extraMeta = { + maintainers = [ + a.lib.maintainers.raskin + ]; + platforms = with a.lib.platforms; + linux; + }; + + preConfigure = '' + killOption () { + sed -re 's/^('"$1"')=.*/# \1 is not set/' -i .config + } + setOptionVal () { + sed -re 's/^('"$1"')=.*/\1='"$2"'/' -i .config + sed -re 's/^# ('"$1"') is not set/\1='"$2"'/' -i .config + sed -re "1i$1=$2" -i .config + } + setOptionMod () { + setOptionVal "$1" m + } + setOptionYes () { + setOptionVal "$1" y + } + + make allmodconfig + + killOption CONFIG_CMDLINE_OVERRIDE + + killOption 'CONFIG_.*_DEBUG.*' + killOption 'CONFIG_DEBUG.*' + killOption CONFIG_AUDIT_ARCH + killOption CONFIG_PERF_COUNTERS + killOption 'CONFIG_GCOV.*' + killOption 'CONFIG_KGDB.*' + killOption 'CONFIG_.*_TEST' + killOption CONFIG_TASKSTATS + + killOption CONFIG_SLQB + killOption CONFIG_SLQB_ALLOCATOR + setOptionYes CONFIG_SLUB_ALLOCATOR + setOptionYes CONFIG_SLUB + killOption CONFIG_ACPI_CUSTOM_DSDT_INITRD + killOption CONFIG_DEVTMPFS + killOption CONFIG_DEVTMPFS_MOUNT + + killOption CONFIG_IMA + '' + + '' + killOption CONFIG_KERNEL_BZIP2 + killOption CONFIG_KERNEL_LZMA + setOptionYes CONFIG_KERNEL_GZIP + ''+ + '' + killOption CONFIG_FB_TILEBLITTING + killOption CONFIG_FB_S3 + killOption CONFIG_FB_VT8623 + killOption CONFIG_FB_ARK + setOptionYes CONFIG_FRAMEBUFFER_CONSOLE + setOptionYes CONFIG_FB + make oldconfig + setOptionYes CONFIG_FB_CON_DECOR + setOptionYes CONFIG_FB_VESA + ''+ + '' + killOption CONFIG_PREEMPT_NONE + setOptionYes CONFIG_PREEMPT_VOLUNTARY + ''+ + '' + killOption CONFIG_PRAMFS + ''+ + (if a.lib.attrByPath ["ckSched"] false a then '' + killOption CONFIG_CPU_CFS + setOptionYes CONFIG_CPU_BFS + killOption CONFIG_NO_HZ + killOption CONFIG_HZ_1000 + setOptionYes CONFIG_HZ_250 + setOptionVal CONFIG_HZ 250 + ''else "") + + '' + cp .config ${config} + ''; +})