diff options
Diffstat (limited to 'pkgs/os-specific/linux')
-rw-r--r-- | pkgs/os-specific/linux/batman-adv/alfred.nix | 4 | ||||
-rw-r--r-- | pkgs/os-specific/linux/batman-adv/batctl.nix | 4 | ||||
-rw-r--r-- | pkgs/os-specific/linux/batman-adv/default.nix | 4 | ||||
-rw-r--r-- | pkgs/os-specific/linux/conky/default.nix | 8 | ||||
-rw-r--r-- | pkgs/os-specific/linux/ena/default.nix | 34 | ||||
-rw-r--r-- | pkgs/os-specific/linux/kernel/common-config.nix | 125 | ||||
-rw-r--r-- | pkgs/os-specific/linux/kernel/linux-4.6.nix | 4 | ||||
-rw-r--r-- | pkgs/os-specific/linux/kernel/linux-grsecurity.nix | 4 | ||||
-rw-r--r-- | pkgs/os-specific/linux/kernel/linux-testing.nix | 6 | ||||
-rw-r--r-- | pkgs/os-specific/linux/kernel/patches.nix | 6 | ||||
-rw-r--r-- | pkgs/os-specific/linux/wireguard/default.nix | 34 |
11 files changed, 137 insertions, 96 deletions
diff --git a/pkgs/os-specific/linux/batman-adv/alfred.nix b/pkgs/os-specific/linux/batman-adv/alfred.nix index a461a722915f..b58beab94b36 100644 --- a/pkgs/os-specific/linux/batman-adv/alfred.nix +++ b/pkgs/os-specific/linux/batman-adv/alfred.nix @@ -1,14 +1,14 @@ { stdenv, fetchurl, pkgconfig, gpsd, libcap }: let - ver = "2016.1"; + ver = "2016.2"; in stdenv.mkDerivation rec { name = "alfred-${ver}"; src = fetchurl { url = "http://downloads.open-mesh.org/batman/releases/batman-adv-${ver}/${name}.tar.gz"; - sha256 = "02963m1vk9skmvdyd0j3281wslb9cwzr7bdx4dg2wxyncgrgl3ky"; + sha256 = "19025arn926lhn54ss4gmmdss9z4a3yxk4ja5kyv17mi5i4yg7j6"; }; nativeBuildInputs = [ pkgconfig ]; diff --git a/pkgs/os-specific/linux/batman-adv/batctl.nix b/pkgs/os-specific/linux/batman-adv/batctl.nix index 2c8eea331cdb..5dafc3d2668b 100644 --- a/pkgs/os-specific/linux/batman-adv/batctl.nix +++ b/pkgs/os-specific/linux/batman-adv/batctl.nix @@ -1,14 +1,14 @@ { stdenv, fetchurl, pkgconfig, libnl }: let - ver = "2016.1"; + ver = "2016.2"; in stdenv.mkDerivation rec { name = "batctl-${ver}"; src = fetchurl { url = "http://downloads.open-mesh.org/batman/releases/batman-adv-${ver}/${name}.tar.gz"; - sha256 = "1j83dzz12c0k7qqd01vmng64h1iq36c86r8ybp8vhb6x5mxkjm68"; + sha256 = "0bf5zlpwxvq4blcgpwjgh8ms4lfapwjpjl4sczwf3i1rv7f4p05q"; }; nativeBuildInputs = [ pkgconfig ]; diff --git a/pkgs/os-specific/linux/batman-adv/default.nix b/pkgs/os-specific/linux/batman-adv/default.nix index 6cf0883a464f..0b8a70cb9762 100644 --- a/pkgs/os-specific/linux/batman-adv/default.nix +++ b/pkgs/os-specific/linux/batman-adv/default.nix @@ -2,14 +2,14 @@ #assert stdenv.lib.versionOlder kernel.version "3.17"; -let base = "batman-adv-2016.1"; in +let base = "batman-adv-2016.2"; in stdenv.mkDerivation rec { name = "${base}-${kernel.version}"; src = fetchurl { url = "http://downloads.open-mesh.org/batman/releases/${base}/${base}.tar.gz"; - sha256 = "0wm0v82kdkli713q4gcq21wbd6mirqmc7xva3kmc3z6kvwlc53ai"; + sha256 = "0pj6jans75pxw9arp1747kmmk72zbc2vgkf2a0w565pj98x1nlk1"; }; preBuild = '' diff --git a/pkgs/os-specific/linux/conky/default.nix b/pkgs/os-specific/linux/conky/default.nix index 660c0bc0572e..37ad34d8b642 100644 --- a/pkgs/os-specific/linux/conky/default.nix +++ b/pkgs/os-specific/linux/conky/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchFromGitHub, pkgconfig, cmake # dependencies -, glib +, glib, libXinerama # optional features without extra dependencies , mpdSupport ? true @@ -62,13 +62,13 @@ with stdenv.lib; stdenv.mkDerivation rec { name = "conky-${version}"; - version = "1.10.1"; + version = "1.10.3"; src = fetchFromGitHub { owner = "brndnmtthws"; repo = "conky"; rev = "v${version}"; - sha256 = "0k93nqx8mxz2z84zzwpwfp7v7dwxwg1di1a2yb137lk7l157azw6"; + sha256 = "0sa2jl159jk5p2hr37adwq84m0ynva7v87qrwj1xv0kw8l4qzhjs"; }; postPatch = '' @@ -87,7 +87,7 @@ stdenv.mkDerivation rec { NIX_LDFLAGS = "-lgcc_s"; - buildInputs = [ pkgconfig glib cmake ] + buildInputs = [ pkgconfig glib cmake libXinerama ] ++ optionals docsSupport [ docbook2x libxslt man less ] ++ optional ncursesSupport ncurses ++ optional x11Support xlibsWrapper diff --git a/pkgs/os-specific/linux/ena/default.nix b/pkgs/os-specific/linux/ena/default.nix new file mode 100644 index 000000000000..7a047e9f2338 --- /dev/null +++ b/pkgs/os-specific/linux/ena/default.nix @@ -0,0 +1,34 @@ +{ lib, stdenv, fetchFromGitHub, kernel, kmod }: + +stdenv.mkDerivation rec { + name = "ena-20160629-${kernel.version}"; + + src = fetchFromGitHub { + owner = "amzn"; + repo = "amzn-drivers"; + rev = "b594ac1ea9e0c70e8e95803a0cfd9f5f06ac097e"; + sha256 = "03w6xgv3lfn28n38mj9cdi3px5zjyrbxnflpd3ggivkv6grf9fp7"; + }; + + configurePhase = + '' + cd kernel/linux/ena + substituteInPlace Makefile --replace '/lib/modules/$(BUILD_KERNEL)' ${kernel.dev}/lib/modules/${kernel.modDirVersion} + ''; + + installPhase = + '' + strip -S ena.ko + dest=$out/lib/modules/${kernel.modDirVersion}/misc + mkdir -p $dest + cp ena.ko $dest/ + xz $dest/ena.ko + ''; + + meta = { + description = "Amazon Elastic Network Adapter (ENA) driver for Linux"; + homepage = https://github.com/amzn/amzn-drivers; + license = lib.licenses.gpl2; + maintainers = [ lib.maintainers.eelco ]; + }; +} diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix index 1e9f2cb6a653..cac102351b35 100644 --- a/pkgs/os-specific/linux/kernel/common-config.nix +++ b/pkgs/os-specific/linux/kernel/common-config.nix @@ -10,7 +10,7 @@ `versionAtLeast`. Then do test your change by building all the kernels (or at least - their configs) in nixpkgs or else you will guarantee lots and lots + their configs) in Nixpkgs or else you will guarantee lots and lots of pain to users trying to switch to an older kernel because of some hardware problems with a new one. @@ -42,6 +42,12 @@ with stdenv.lib; SCHEDSTATS n DETECT_HUNG_TASK y + # Bump the maximum number of CPUs to support systems like EC2 x1.* + # instances and Xeon Phi. + ${optionalString (stdenv.system == "x86_64-linux") '' + NR_CPUS 384 + ''} + # Unix domain sockets. UNIX y @@ -61,6 +67,7 @@ with stdenv.lib; ${optionalString (versionOlder version "3.10") '' USB_SUSPEND y ''} + PM_WAKELOCKS y # Support drivers that need external firmware. STANDALONE n @@ -92,9 +99,6 @@ with stdenv.lib; DONGLE y # Serial dongle support HIPPI y MTD_COMPLEX_MAPPINGS y # needed for many devices - ${optionalString (versionOlder version "3.2") '' - NET_POCKET y # enable pocket and portable adapters - ''} SCSI_LOWLEVEL y # enable lots of SCSI devices SCSI_LOWLEVEL_PCMCIA y SCSI_SAS_ATA y # added to enable detection of hard drive @@ -131,9 +135,7 @@ with stdenv.lib; HOSTAP_FIRMWARE_NVRAM? y ATH9K_PCI? y # Detect Atheros AR9xxx cards on PCI(e) bus ATH9K_AHB? y # Ditto, AHB bus - ${optionalString (versionAtLeast version "3.2") '' - B43_PHY_HT? y - ''} + B43_PHY_HT? y BCMA_HOST_PCI? y # Enable various FB devices. @@ -151,7 +153,7 @@ with stdenv.lib; FB_VESA y FRAMEBUFFER_CONSOLE y FRAMEBUFFER_CONSOLE_ROTATION y - ${optionalString (versionOlder version "3.9" || stdenv.system == "i686-linux") '' + ${optionalString (stdenv.system == "i686-linux") '' FB_GEODE y ''} @@ -162,11 +164,7 @@ with stdenv.lib; ''} # Allow specifying custom EDID on the kernel command line DRM_LOAD_EDID_FIRMWARE y - ${optionalString (versionOlder version "3.9") '' - DRM_RADEON_KMS? y - ''} - # Hybrid graphics support - VGA_SWITCHEROO y + VGA_SWITCHEROO y # Hybrid graphics support # Sound. SND_DYNAMIC_MINORS y @@ -225,9 +223,7 @@ with stdenv.lib; NFSD_V4_SECURITY_LABEL y ''} NFS_FSCACHE y - ${optionalString (versionAtLeast version "3.6") '' - NFS_SWAP y - ''} + NFS_SWAP y NFS_V3_ACL y ${optionalString (versionAtLeast version "3.11") '' NFS_V4_1 y # NFSv4.1 client support @@ -259,6 +255,7 @@ with stdenv.lib; DEBUG_SET_MODULE_RONX? y # Detect writes to read-only module pages # Security related features. + RANDOMIZE_BASE y STRICT_DEVMEM y # Filter access to /dev/mem SECURITY_SELINUX_BOOTPARAM_VALUE 0 # Disable SELinux by default DEVKMEM n # Disable /dev/kmem @@ -297,34 +294,31 @@ with stdenv.lib; ${optionalString (versionOlder version "4.4") '' B43_PCMCIA? y ''} - BLK_DEV_CMD640_ENHANCED y # CMD640 enhanced support - BLK_DEV_IDEACPI y # IDE ACPI support BLK_DEV_INTEGRITY y BSD_PROCESS_ACCT_V3 y BT_HCIUART_BCSP? y BT_HCIUART_H4? y # UART (H4) protocol support BT_HCIUART_LL? y - ${optionalString (versionAtLeast version "3.4") '' - BT_RFCOMM_TTY? y # RFCOMM TTY support - ''} + BT_RFCOMM_TTY? y # RFCOMM TTY support + CLEANCACHE? y CRASH_DUMP? n - ${optionalString (versionOlder version "3.1") '' - DMAR? n # experimental - ''} DVB_DYNAMIC_MINORS? y # we use udev - ${optionalString (versionAtLeast version "3.3") '' - EFI_STUB y # EFI bootloader in the bzImage itself - ''} + EFI_STUB y # EFI bootloader in the bzImage itself FHANDLE y # used by systemd + FRONTSWAP y FUSION y # Fusion MPT device support - IDE_GD_ATAPI y # ATAPI floppy support + IDE n # deprecated IDE support + ${optionalString (versionAtLeast version "4.3") '' + IDLE_PAGE_TRACKING y + ''} IRDA_ULTRA y # Ultra (connectionless) protocol JOYSTICK_IFORCE_232? y # I-Force Serial joysticks and wheels JOYSTICK_IFORCE_USB? y # I-Force USB joysticks and wheels JOYSTICK_XPAD_FF? y # X-Box gamepad rumble support JOYSTICK_XPAD_LEDS? y # LED Support for Xbox360 controller 'BigX' LED + KEXEC_FILE y + KEXEC_JUMP y LDM_PARTITION y # Windows Logical Disk Manager (Dynamic Disk) support - LEDS_TRIGGER_IDE_DISK y # LED IDE Disk Trigger LOGIRUMBLEPAD2_FF y # Logitech Rumblepad 2 force feedback LOGO n # not needed MEDIA_ATTACH y @@ -343,12 +337,9 @@ with stdenv.lib; PPP_MULTILINK y # PPP multilink support PPP_FILTER y REGULATOR y # Voltage and Current Regulator Support - ${optionalString (versionAtLeast version "3.6") '' - RC_DEVICES? y # Enable IR devices - ''} - ${optionalString (versionAtLeast version "3.10") '' - RT2800USB_RT55XX y - ''} + RC_DEVICES? y # Enable IR devices + RT2800USB_RT55XX y + SCHED_AUTOGROUP y SCSI_LOGGING y # SCSI logging facility SERIAL_8250 y # 8250/16550 and compatible serial support SLIP_COMPRESSED y # CSLIP compressed headers @@ -363,6 +354,9 @@ with stdenv.lib; ''} USB_EHCI_ROOT_HUB_TT y # Root Hub Transaction Translators USB_EHCI_TT_NEWSCHED y # Improved transaction translator scheduling + ${optionalString (versionAtLeast version "4.3") '' + USERFAULTFD y + ''} X86_CHECK_BIOS_CORRUPTION y X86_MCE y @@ -373,16 +367,14 @@ with stdenv.lib; NAMESPACES? y # Required by 'unshare' used by 'nixos-install' RT_GROUP_SCHED? y CGROUP_DEVICE? y - ${if versionAtLeast version "3.6" then '' - MEMCG y - MEMCG_SWAP y - '' else '' - CGROUP_MEM_RES_CTLR y - CGROUP_MEM_RES_CTLR_SWAP y - ''} + MEMCG y + MEMCG_SWAP y ${optionalString (versionOlder version "4.7") "DEVPTS_MULTIPLE_INSTANCES y"} BLK_DEV_THROTTLING y CFQ_GROUP_IOSCHED y + ${optionalString (versionAtLeast version "4.3") '' + CGROUP_PIDS y + ''} # Enable staging drivers. These are somewhat experimental, but # they generally don't hurt. @@ -400,9 +392,7 @@ with stdenv.lib; FTRACE_SYSCALLS y SCHED_TRACER y STACK_TRACER y - ${optionalString (versionAtLeast version "3.10") '' - UPROBE_EVENT y - ''} + UPROBE_EVENT y ${optionalString (versionAtLeast version "4.4") '' BPF_SYSCALL y BPF_EVENTS y @@ -414,28 +404,18 @@ with stdenv.lib; DEVTMPFS y # Easier debugging of NFS issues. - ${optionalString (versionAtLeast version "3.4") '' - SUNRPC_DEBUG y - ''} + SUNRPC_DEBUG y # Virtualisation. PARAVIRT? y - ${if versionAtLeast version "3.10" then '' - HYPERVISOR_GUEST y - '' else '' - PARAVIRT_GUEST? y - ''} + HYPERVISOR_GUEST y + PARAVIRT_SPINLOCKS? y KVM_APIC_ARCHITECTURE y KVM_ASYNC_PF y - ${optionalString (versionOlder version "3.7") '' - KVM_CLOCK? y - ''} ${optionalString (versionAtLeast version "4.0") '' KVM_COMPAT? y ''} - ${optionalString (versionAtLeast version "3.10") '' - KVM_DEVICE_ASSIGNMENT? y - ''} + KVM_DEVICE_ASSIGNMENT? y ${optionalString (versionAtLeast version "4.0") '' KVM_GENERIC_DIRTYLOG_READ_PROTECT y ''} @@ -470,28 +450,22 @@ with stdenv.lib; ${optionalString (!stdenv.is64bit) '' HIGHMEM64G? y # We need 64 GB (PAE) support for Xen guest support. ''} - ${optionalString (versionAtLeast version "3.9" && stdenv.is64bit) '' + ${optionalString (stdenv.is64bit) '' VFIO_PCI_VGA y ''} VIRT_DRIVERS y # Media support. - ${optionalString (versionAtLeast version "3.6") '' - MEDIA_DIGITAL_TV_SUPPORT y - MEDIA_CAMERA_SUPPORT y - MEDIA_RC_SUPPORT y - ''} - ${optionalString (versionAtLeast version "3.7") '' - MEDIA_USB_SUPPORT y - ${optionalString (!(features.chromiumos or false)) '' - MEDIA_PCI_SUPPORT y - ''} + MEDIA_DIGITAL_TV_SUPPORT y + MEDIA_CAMERA_SUPPORT y + MEDIA_RC_SUPPORT y + MEDIA_USB_SUPPORT y + ${optionalString (!(features.chromiumos or false)) '' + MEDIA_PCI_SUPPORT y ''} # Our initrd init uses shebang scripts, so can't be modular. - ${optionalString (versionAtLeast version "3.10") '' - BINFMT_SCRIPT y - ''} + BINFMT_SCRIPT y # For systemd-binfmt BINFMT_MISC? y @@ -506,10 +480,9 @@ with stdenv.lib; TRANSPARENT_HUGEPAGE_MADVISE? y # zram support (e.g for in-memory compressed swap). - ${optionalString (versionAtLeast version "3.4") '' - ZSMALLOC y - ''} + ZSMALLOC y ZRAM m + ZSWAP y # Enable PCIe and USB for the brcmfmac driver BRCMFMAC_USB? y diff --git a/pkgs/os-specific/linux/kernel/linux-4.6.nix b/pkgs/os-specific/linux/kernel/linux-4.6.nix index d5ea9039891e..c0849942f4f2 100644 --- a/pkgs/os-specific/linux/kernel/linux-4.6.nix +++ b/pkgs/os-specific/linux/kernel/linux-4.6.nix @@ -1,12 +1,12 @@ { stdenv, fetchurl, perl, buildLinux, ... } @ args: import ./generic.nix (args // rec { - version = "4.6.3"; + version = "4.6.4"; extraMeta.branch = "4.6"; src = fetchurl { url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz"; - sha256 = "0rq9cciabw5gfi2z30fcwh6z4zm2fgp938xmblfw59hyjj98h60k"; + sha256 = "0zpz29hgwdwkil6rakn08bdq77qjcz8q18qlkfc43s84f4fd8s45"; }; kernelPatches = args.kernelPatches; diff --git a/pkgs/os-specific/linux/kernel/linux-grsecurity.nix b/pkgs/os-specific/linux/kernel/linux-grsecurity.nix index d5ea9039891e..c0849942f4f2 100644 --- a/pkgs/os-specific/linux/kernel/linux-grsecurity.nix +++ b/pkgs/os-specific/linux/kernel/linux-grsecurity.nix @@ -1,12 +1,12 @@ { stdenv, fetchurl, perl, buildLinux, ... } @ args: import ./generic.nix (args // rec { - version = "4.6.3"; + version = "4.6.4"; extraMeta.branch = "4.6"; src = fetchurl { url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz"; - sha256 = "0rq9cciabw5gfi2z30fcwh6z4zm2fgp938xmblfw59hyjj98h60k"; + sha256 = "0zpz29hgwdwkil6rakn08bdq77qjcz8q18qlkfc43s84f4fd8s45"; }; kernelPatches = args.kernelPatches; diff --git a/pkgs/os-specific/linux/kernel/linux-testing.nix b/pkgs/os-specific/linux/kernel/linux-testing.nix index 27e3681fdbae..37e5da5a9050 100644 --- a/pkgs/os-specific/linux/kernel/linux-testing.nix +++ b/pkgs/os-specific/linux/kernel/linux-testing.nix @@ -1,13 +1,13 @@ { stdenv, fetchurl, perl, buildLinux, ... } @ args: import ./generic.nix (args // rec { - version = "4.7-rc6"; - modDirVersion = "4.7.0-rc6"; + version = "4.7-rc7"; + modDirVersion = "4.7.0-rc7"; extraMeta.branch = "4.7"; src = fetchurl { url = "mirror://kernel/linux/kernel/v4.x/testing/linux-${version}.tar.xz"; - sha256 = "1kli8m6xkpdp45ryx6aq894q5dvrl1s7h3g1akk0l7xp6grshk8r"; + sha256 = "11c87rhxlrmag9hhg1m8zfff0d52yrzvhyjj9dxfa3nmxj4sfbb7"; }; features.iwlwifi = true; diff --git a/pkgs/os-specific/linux/kernel/patches.nix b/pkgs/os-specific/linux/kernel/patches.nix index 103e22355321..a5de48298e11 100644 --- a/pkgs/os-specific/linux/kernel/patches.nix +++ b/pkgs/os-specific/linux/kernel/patches.nix @@ -93,9 +93,9 @@ rec { grsecurity_4_4 = throw "grsecurity stable is no longer supported"; grsecurity_testing = grsecPatch - { kver = "4.6.3"; - grrev = "201607070721"; - sha256 = "1858zc77x1qbwwfhjlmffd21w4adsw9f3sycg6bksw2jxrhlzww5"; + { kver = "4.6.4"; + grrev = "201607112205"; + sha256 = "16j01qqa7yi5yvli1lkl8ffybhy4697nyi18lbl5329zd09xq2ww"; }; # This patch relaxes grsec constraints on the location of usermode helpers, diff --git a/pkgs/os-specific/linux/wireguard/default.nix b/pkgs/os-specific/linux/wireguard/default.nix new file mode 100644 index 000000000000..5328743d8b8b --- /dev/null +++ b/pkgs/os-specific/linux/wireguard/default.nix @@ -0,0 +1,34 @@ +{ stdenv, fetchgit, libmnl, kernel }: + +stdenv.mkDerivation rec { + name = "wireguard-${version}"; + version = "20160708"; + + src = fetchgit { + url = "https://git.zx2c4.com/WireGuard"; + rev = "dcc2583fe0618931e51aedaeeddde356d123acb2"; + sha256 = "1ciyjpp8c3fv95y1cypk9qyqynp8cqyh2676afq2hd33110d37ni"; + }; + + preConfigure = '' + cd src + sed -i /depmod/d Makefile + ''; + + buildInputs = [ libmnl ]; + + KERNELDIR = "${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"; + + makeFlags = [ + "DESTDIR=$(out)" + "PREFIX=/" + "INSTALL_MOD_PATH=$(out)" + ]; + + meta = with stdenv.lib; { + homepage = https://www.wireguard.io/; + description = "Fast, modern, secure VPN tunnel"; + license = licenses.gpl2; + platforms = platforms.linux; + }; +} |