diff options
Diffstat (limited to 'pkgs/top-level/all-packages.nix')
-rw-r--r-- | pkgs/top-level/all-packages.nix | 66 |
1 files changed, 61 insertions, 5 deletions
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 77af3087b3d6..9252be00344c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7033,6 +7033,8 @@ let linuxConsoleTools = callPackage ../os-specific/linux/consoletools { }; + # -- Linux kernel expressions ------------------------------------------------ + linuxHeaders = linuxHeaders_3_7; linuxHeaders24Cross = forceNativeDrv (import ../os-specific/linux/kernel-headers/2.4.nix { @@ -7127,6 +7129,43 @@ let ]; }; + /* grsec configuration + + We build several flavors of 'default' grsec kernels. These are + built by default with Hydra. If the user selects a matching + 'default' flavor, then the pre-canned package set can be + chosen. Typically, users will make very basic choices like + 'security' + 'server' or 'performance' + 'desktop' with + virtualisation support. These will then be picked. + + Note: Xen guest kernels are included for e.g. NixOps deployments + to EC2, where Xen is the Hypervisor. + */ + + grFlavors = import ../build-support/grsecurity/flavors.nix; + + mkGrsecurity = opts: + (import ../build-support/grsecurity { + grsecOptions = opts; + inherit pkgs lib; + }); + + grKernel = opts: (mkGrsecurity opts).grsecKernel; + grPackage = opts: recurseIntoAttrs (mkGrsecurity opts).grsecPackage; + + # Stable kernels + linux_grsec_stable_desktop = grKernel grFlavors.linux_grsec_stable_desktop; + linux_grsec_stable_server = grKernel grFlavors.linux_grsec_stable_server; + linux_grsec_stable_server_xen = grKernel grFlavors.linux_grsec_stable_server_xen; + + # Stable+vserver kernels - server versions only + linux_grsec_vserver_server = grKernel grFlavors.linux_grsec_vserver_server; + linux_grsec_vserver_server_xen = grKernel grFlavors.linux_grsec_vserver_server_xen; + + # Testing kernels + linux_grsec_testing_desktop = grKernel grFlavors.linux_grsec_testing_desktop; + linux_grsec_testing_server = grKernel grFlavors.linux_grsec_testing_server; + linux_grsec_testing_server_xen = grKernel grFlavors.linux_grsec_testing_server_xen; /* Linux kernel modules are inherently tied to a specific kernel. So rather than provide specific instances of those packages for a @@ -7215,6 +7254,14 @@ let zfs_git = callPackage ../os-specific/linux/zfs/git.nix { }; }; + # The current default kernel / kernel modules. + linux = linuxPackages.kernel; + linuxPackages = linuxPackages_3_12; + + # Update this when adding the newest kernel major version! + linux_latest = pkgs.linux_3_14; + linuxPackages_latest = pkgs.linuxPackages_3_14; + # Build the kernel modules for the some of the kernels. linuxPackages_3_2 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_2 linuxPackages_3_2); linuxPackages_3_2_xen = linuxPackagesFor pkgs.linux_3_2_xen linuxPackages_3_2_xen; @@ -7225,12 +7272,21 @@ let linuxPackages_3_12 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_12 linuxPackages_3_12); linuxPackages_3_13 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_13 linuxPackages_3_13); linuxPackages_3_14 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_14 linuxPackages_3_14); - # Update this when adding a new version! - linuxPackages_latest = pkgs.linuxPackages_3_14; - # The current default kernel / kernel modules. - linux = linuxPackages.kernel; - linuxPackages = linuxPackages_3_12; + # grsecurity flavors + # Stable kernels + linuxPackages_grsec_stable_desktop = grPackage grFlavors.linux_grsec_stable_desktop; + linuxPackages_grsec_stable_server = grPackage grFlavors.linux_grsec_stable_server; + linuxPackages_grsec_stable_server_xen = grPackage grFlavors.linux_grsec_stable_server_xen; + + # Stable+vserver kernels - server versions only + linuxPackages_grsec_vserver_server = grPackage grFlavors.linux_grsec_vserver_server; + linuxPackages_grsec_vserver_server_xen = grPackage grFlavors.linux_grsec_vserver_server_xen; + + # Testing kernels + linuxPackages_grsec_testing_desktop = grPackage grFlavors.linux_grsec_testing_desktop; + linuxPackages_grsec_testing_server = grPackage grFlavors.linux_grsec_testing_server; + linuxPackages_grsec_testing_server_xen = grPackage grFlavors.linux_grsec_testing_server_xen; # A function to build a manually-configured kernel linuxManualConfig = pkgs.buildLinux; |