diff options
Diffstat (limited to 'pkgs/os-specific/linux')
-rw-r--r-- | pkgs/os-specific/linux/ati-drivers/default.nix | 2 | ||||
-rw-r--r-- | pkgs/os-specific/linux/blcr/0.8.2.nix | 51 | ||||
-rw-r--r-- | pkgs/os-specific/linux/blcr/default.nix | 55 | ||||
-rw-r--r-- | pkgs/os-specific/linux/blcr/fixes.patch | 304 | ||||
-rw-r--r-- | pkgs/os-specific/linux/htop/default.nix | 1 | ||||
-rw-r--r-- | pkgs/os-specific/linux/iproute/default.nix | 22 | ||||
-rw-r--r-- | pkgs/os-specific/linux/iptables/default.nix | 1 | ||||
-rw-r--r-- | pkgs/os-specific/linux/kernel/generate-config.pl | 2 | ||||
-rw-r--r-- | pkgs/os-specific/linux/kernel/generic.nix | 2 | ||||
-rw-r--r-- | pkgs/os-specific/linux/kernel/linux-2.6.27.nix | 4 | ||||
-rw-r--r-- | pkgs/os-specific/linux/kernel/linux-2.6.31.nix | 10 | ||||
-rw-r--r-- | pkgs/os-specific/linux/kernel/linux-2.6.32.nix | 4 | ||||
-rw-r--r-- | pkgs/os-specific/linux/kernel/linux-2.6.34.nix | 4 | ||||
-rw-r--r-- | pkgs/os-specific/linux/kernel/linux-2.6.35.nix | 207 | ||||
-rw-r--r-- | pkgs/os-specific/linux/lvm2/default.nix | 2 | ||||
-rw-r--r-- | pkgs/os-specific/linux/pam/default.nix | 11 | ||||
-rw-r--r-- | pkgs/os-specific/linux/pam_ldap/default.nix | 15 |
17 files changed, 319 insertions, 378 deletions
diff --git a/pkgs/os-specific/linux/ati-drivers/default.nix b/pkgs/os-specific/linux/ati-drivers/default.nix index be5eff7e56e..65c42e09039 100644 --- a/pkgs/os-specific/linux/ati-drivers/default.nix +++ b/pkgs/os-specific/linux/ati-drivers/default.nix @@ -59,7 +59,7 @@ stdenv.mkDerivation { # moved assertions here because the name is evaluated when the NixOS manual is generated # Don't make that fail - fail lazily when a users tries to build this derivation only dummy = - assert xorg.xorgserver.name == "xorg-server-1.7.5"; + # assert xorg.xorgserver.name == "xorg-server-1.7.5"; assert stdenv.system == "x86_64-linux"; # i686-linux should work as well - however I didn't test it. null; diff --git a/pkgs/os-specific/linux/blcr/0.8.2.nix b/pkgs/os-specific/linux/blcr/0.8.2.nix deleted file mode 100644 index d5d715c223c..00000000000 --- a/pkgs/os-specific/linux/blcr/0.8.2.nix +++ /dev/null @@ -1,51 +0,0 @@ -{ stdenv, fetchurl, kernel, perl, makeWrapper, autoconf, automake, libtool }: - -assert stdenv.isLinux; - -let - version = "0.8.2"; - website = https://ftg.lbl.gov/CheckpointRestart; -in - -stdenv.mkDerivation { - name = "blcr-${version}-${kernel.version}"; - - src = fetchurl { - url = "${website}/downloads/blcr-${version}.tar.gz"; - sha256 = "1ldvzrajljkm318z5ix1p27n0gmv7gqxij6ck7p5fz4ncdbb01x8"; - }; - - patches = [ ./fixes.patch ]; - - buildInputs = [ perl makeWrapper autoconf automake libtool ]; - - # this gives "configure: error: unrecognized option: `-d'" - /* - configureFlags = [ - "--with-linux=$(ls -d ${kernel}/lib/modules/ * /build)" - "--with-kmod-dir=$out/lib/modules/$(cd ${kernel}/lib/modules; ls -d 2.6.*)" - "--with-system-map=${kernel}/System.map" - ]; - */ - - configurePhase = '' - autoreconf - ./configure --prefix=$out \ - --with-linux=$(ls -d ${kernel}/lib/modules/*/build) \ - --with-kmod-dir=$out/lib/modules/$(cd ${kernel}/lib/modules; ls -d 2.6.*) \ - --with-system-map=${kernel}/System.map - ''; - - postInstall = '' - for prog in "$out/bin/"* - do - wrapProgram "$prog" --prefix LD_LIBRARY_PATH ":" "$out/lib" - done - ''; - - meta = { - description = "Berkeley Lab Checkpoint/Restart for Linux (BLCR)"; - homepage = website; - license = "GPL2"; - }; -} diff --git a/pkgs/os-specific/linux/blcr/default.nix b/pkgs/os-specific/linux/blcr/default.nix new file mode 100644 index 00000000000..fb0db8e671c --- /dev/null +++ b/pkgs/os-specific/linux/blcr/default.nix @@ -0,0 +1,55 @@ +{ stdenv, fetchurl, kernel, perl, makeWrapper, autoconf, automake, libtool }: + +assert stdenv.isLinux; + +let + version = "0.8.2"; + website = https://ftg.lbl.gov/CheckpointRestart; +in + +stdenv.mkDerivation { + name = "blcr-${version}-${kernel.version}"; + + src = fetchurl { + url = "${website}/downloads/blcr-${version}.tar.gz"; + sha256 = "1ldvzrajljkm318z5ix1p27n0gmv7gqxij6ck7p5fz4ncdbb01x8"; + }; + + patchFlags = "-p0"; + + patches = map fetchurl [ + { url = http://upc-bugs.lbl.gov/blcr-dist/blcr-0.8.2+kernel-2.6.31.patch01; + sha256 = "0jnz18kbrm64hahvhk35zakcpylad1khsp5kjxkj19j0lkjv3m4h"; + } + { url = http://upc-bugs.lbl.gov/blcr-dist/blcr-0.8.2+kernel-2.6.32.patch02; + sha256 = "1f5s9c7iiaxd67ki3bmz09mf66shzbl97hvwaq4nmk6miq94k1fw"; + } + { url = http://upc-bugs.lbl.gov/blcr-dist/blcr-0.8.2+kernel-2.6.34.patch03; + sha256 = "09924h83xdwpxjlx3yg5b51fgm6gjywn2rb4nnygz16n87wqvb41"; + } + ]; + + buildInputs = [ perl makeWrapper autoconf automake libtool ]; + + preConfigure = '' + ./autogen.sh + configureFlagsArray=( + --with-linux=$(ls -d ${kernel}/lib/modules/*/build) + --with-kmod-dir=$out/lib/modules/$(cd ${kernel}/lib/modules; ls -d 2.6.*) + --with-system-map=${kernel}/System.map + ) + ''; + + postInstall = '' + for prog in "$out/bin/"* + do + wrapProgram "$prog" --prefix LD_LIBRARY_PATH ":" "$out/lib" + done + ''; + + meta = { + description = "Berkeley Lab Checkpoint/Restart for Linux (BLCR)"; + homepage = website; + license = "GPL2"; + }; +} diff --git a/pkgs/os-specific/linux/blcr/fixes.patch b/pkgs/os-specific/linux/blcr/fixes.patch deleted file mode 100644 index 879352d8325..00000000000 --- a/pkgs/os-specific/linux/blcr/fixes.patch +++ /dev/null @@ -1,304 +0,0 @@ -diff -ru -x Makefile.in -x aclocal.m4 -x configure -x '*config.h.in' -x 'config.*' -x depcomp -x install-sh -x ltmain.sh -x missing blcr-0.8.2-orig/acinclude.m4 blcr-0.8.2/acinclude.m4 ---- blcr-0.8.2-orig/acinclude.m4 2009-06-12 22:37:01.000000000 +0200 -+++ blcr-0.8.2/acinclude.m4 2010-07-29 21:18:29.000000000 +0200 -@@ -953,8 +953,9 @@ - # When complete sets LINUX_SYMTAB_CMD such that - # "eval $LINUX_SYMTAB_CMD" will produce a System.map on stdout. - cr_stripped_maps='' -+m4_define([cr_ksymtab_patt],[[-e '[TD] sys_open' -e '[AB] _end']]) - AC_DEFUN([_CR_CHECK_SYSTEM_MAP],[ -- if test -n "$1" -a -r "$1" && grep ' [[AB]] _end' <"$1" >/dev/null 2>/dev/null; then -+ if test -n "$1" -a -r "$1" && grep cr_ksymtab_patt <"$1" >/dev/null 2>/dev/null; then - if grep -B1 '[[AB]] _end' <"$1" | grep _stext >/dev/null 2>/dev/null; then - # Reject "stripped" files (such as in FC2) - # Recognized (poorly) by _stext and _end as last two entries. -@@ -968,7 +969,7 @@ - ]) - AC_DEFUN([_CR_CHECK_VMLINUX],[ - AC_REQUIRE([AC_PROG_NM]) -- if test -n "$1" -a -r "$1" && ($NM "$1" | grep ' [[AB]] _end') >/dev/null 2>/dev/null; then -+ if test -n "$1" -a -r "$1" && ($NM "$1" | grep cr_ksymtab_patt) >/dev/null 2>/dev/null; then - LINUX_VMLINUX="$1" - LINUX_SYMTAB_FILE="$1" - LINUX_SYMTAB_CMD="$NM $1 2>/dev/null" -diff -ru -x Makefile.in -x aclocal.m4 -x configure -x '*config.h.in' -x 'config.*' -x depcomp -x install-sh -x ltmain.sh -x missing blcr-0.8.2-orig/blcr_imports/module.c blcr-0.8.2/blcr_imports/module.c ---- blcr-0.8.2-orig/blcr_imports/module.c 2008-05-13 08:06:19.000000000 +0200 -+++ blcr-0.8.2/blcr_imports/module.c 2010-07-29 21:18:29.000000000 +0200 -@@ -81,7 +81,13 @@ - - /* Check current kernel against System.map used at configure time */ - { -+#if defined(CR_EXPORTED_KCODE_register_chrdev) - unsigned long offset1 = CR_EXPORTED_KCODE_register_chrdev - (unsigned long)®ister_chrdev; -+#elif defined(CR_EXPORTED_KCODE___register_chrdev) -+ unsigned long offset1 = CR_EXPORTED_KCODE___register_chrdev - (unsigned long)&__register_chrdev; -+#else -+ #error "No register_chrdev symbol for validation of System.map" -+#endif - unsigned long offset2 = CR_EXPORTED_KCODE_register_blkdev - (unsigned long)®ister_blkdev; - if ( - #if defined(CONFIG_RELOCATABLE) && defined(CONFIG_PHYSICAL_ALIGN) -diff -ru -x Makefile.in -x aclocal.m4 -x configure -x '*config.h.in' -x 'config.*' -x depcomp -x install-sh -x ltmain.sh -x missing blcr-0.8.2-orig/config/kbuild.mak.in blcr-0.8.2/config/kbuild.mak.in ---- blcr-0.8.2-orig/config/kbuild.mak.in 2008-08-04 20:39:29.000000000 +0200 -+++ blcr-0.8.2/config/kbuild.mak.in 2010-07-29 21:18:29.000000000 +0200 -@@ -1,7 +1,7 @@ - # Here are the configuration bits needed in the "caller" to use this file - #SUBDIR = vmadump4 - #TARGET = vmadump --#SOURCES = vmadump_common.c vmadump_@CR_ARCH@.c optional.h -+#SOURCES = vmadump_common.c vmadump_@CR_KARCH@.c optional.h - #[optional]EXTRA_CFLAGS = -I$(top_builddir)/include -I$(top_builddir) -I$(srcdir) - #[optional]IMPORTS_FROM = /some/other/kbuild/module/dir /and/another - # -@@ -26,7 +26,7 @@ - # Remove headers from the list of sources, and sort to remove possible duplicates - DOT_C := $(sort $(filter %.c,$(SOURCES))) - --ifeq ($(TOPDIR),) -+ifeq ($(srctree),) - # not within KBUILD - implement automake's standard goals - - all: $(LINUX_OBJ)/.config prepare -diff -ru -x Makefile.in -x aclocal.m4 -x configure -x '*config.h.in' -x 'config.*' -x depcomp -x install-sh -x ltmain.sh -x missing blcr-0.8.2-orig/configure.ac blcr-0.8.2/configure.ac ---- blcr-0.8.2-orig/configure.ac 2009-06-16 00:33:56.000000000 +0200 -+++ blcr-0.8.2/configure.ac 2010-07-29 21:18:29.000000000 +0200 -@@ -123,6 +123,8 @@ - AC_CONFIG_AUX_DIR(./config) - AM_INIT_AUTOMAKE([foreign no-exeext std-options]) - -+AM_MAINTAINER_MODE([enable]) -+ - ################################################################################ - # Boilerplate for versions and copyrights in generated files - ################################################################################ -@@ -454,9 +456,10 @@ - AC_SUBST(CR_CLIENT_LDADD) - - # If building the tests, we can optionally test C++ --if test x"$cr_build_tests" = xyes; then -+# Note, however, that bug 2619 reports that we can't call this conditionally. -+dnl if test x"$cr_build_tests" = xyes; then - CR_PROG_CXX --fi -+dnl fi - - ################################################################################ - # Check libraries -@@ -843,6 +846,22 @@ - # Checks for matching (we hope) symbol table - CR_LINUX_SYMTAB - -+# Set and substitute CR_KARCH to enable i386 userland on x86_64 kernels -+CR_KARCH=$CR_ARCH -+if test $CR_ARCH = i386; then -+ # probe the System.map to find out if we need to change CR_KARCH at all. -+ # All this does is count the number of *digits* in a hex formatted address -+ AC_MSG_NOTICE([Testing if KARCH is the same as ARCH]) -+ symlen=`$LINUX_SYMTAB_CMD | head -n1 | sed 's/ .*$//;s/\(.\)/\1\n/g;s/\n$//'|wc -l` -+ if test $symlen -eq 16; then -+ AC_MSG_NOTICE([Changing KARCH to x86_64]) -+ CR_KARCH=x86_64 -+ else -+ AC_MSG_NOTICE([Not touching KARCH]) -+ fi -+fi -+AC_SUBST([CR_KARCH], $CR_KARCH) -+ - ## Check for optional kernel headers... - CR_CHECK_KERNEL_HEADER([linux/syscalls.h]) - CR_CHECK_KERNEL_HEADER([linux/pspace.h]) -@@ -985,7 +1004,7 @@ - fi - - # put_task_struct() requires one of these: --CR_FIND_KSYM([__put_task_struct],[CODE]) -+CR_FIND_KSYM([__put_task_struct],[CODE],[extern void __put_task_struct(struct task_struct *);]) - CR_FIND_KSYM([__put_task_struct_cb],[CODE]) - - CR_CHECK_KERNEL_MEMBER([mm.task_size],[#include <linux/sched.h>], -@@ -1025,7 +1044,7 @@ - if test -n "${HAVE_MAP_VSYSCALL}"; then - CR_FIND_KSYM([map_vsyscall],[CODE]) - fi --if test $CR_ARCH = x86_64; then -+if test $CR_KARCH = x86_64; then - CR_FIND_KSYM([syscall32_setup_pages],[CODE], - [extern int syscall32_setup_pages(void *, int);]) - fi -@@ -1093,7 +1112,7 @@ - CR_FIND_KSYM([do_sigaltstack],[CODE], - [extern int do_sigaltstack(const stack_t *, stack_t *, unsigned long);]) - --if test $CR_ARCH = i386 -o $CR_ARCH = x86_64; then -+if test $CR_KARCH = i386 -o $CR_KARCH = x86_64; then - CR_CHECK_KERNEL_TYPE([struct n_desc_struct],[ - #include <linux/sched.h> - #include <asm/desc.h>]) -@@ -1144,7 +1163,7 @@ - fi - fi - --if test $CR_ARCH = i386; then -+if test $CR_KARCH = i386; then - CR_CHECK_KERNEL_MEMBER([pt_regs.xcs],[#include <asm/ptrace.h>],[struct pt_regs],[int],[xcs]) - CR_CHECK_KERNEL_MEMBER([pt_regs.xfs],[#include <asm/ptrace.h>],[struct pt_regs],[int],[xfs]) - CR_CHECK_KERNEL_MEMBER([pt_regs.xgs],[#include <asm/ptrace.h>],[struct pt_regs],[int],[xgs]) -@@ -1230,6 +1249,7 @@ - if test -z "${HAVE_2_ARG_FIND_PID}${HAVE_FIND_TASK_BY_PID}${HAVE_FIND_TASK_BY_PID_NS}"; then - CR_BAD_KERNEL([unable to determine how to map (type, pid_nr) -> struct task]) - fi -+CR_FIND_KSYM([find_task_by_pid_ns],[CODE]) - - CR_CHECK_KERNEL_CALL([alloc_pid],[#include <linux/sched.h>]) - if test -n "${HAVE_ALLOC_PID}"; then -@@ -1492,7 +1512,7 @@ - CR_FIND_KSYM([sys_mremap],[CODE], - [extern asmlinkage unsigned long sys_mremap(unsigned long addr, unsigned long old_len, unsigned long new_len, unsigned long flags, unsigned long new_addr);]) - CR_FIND_KSYM([do_sigaction],[CODE]) --if test $CR_ARCH = x86_64; then -+if test $CR_KARCH = x86_64; then - CR_FIND_KSYM([load_gs_index],[CODE]) - - CR_CHECK_KERNEL_CALL([read_pda],[#include <asm/percpu.h>]) -@@ -1536,7 +1556,10 @@ - # the System.map used to locate symbols and configure time. - CR_FIND_EXPORTED_KSYM([register_chrdev],[CODE]) - if test "$cr_addr" = "0"; then -- CR_BAD_KERNEL([kernel does not export register_chrdev]) -+ CR_FIND_EXPORTED_KSYM([__register_chrdev],[CODE]) -+ if test "$cr_addr" = "0"; then -+ CR_BAD_KERNEL([kernel does not export register_chrdev or __register_chrdev]) -+ fi - fi - CR_FIND_EXPORTED_KSYM([register_blkdev],[CODE]) - if test "$cr_addr" = "0"; then -diff -ru -x Makefile.in -x aclocal.m4 -x configure -x '*config.h.in' -x 'config.*' -x depcomp -x install-sh -x ltmain.sh -x missing blcr-0.8.2-orig/cr_module/cr_kcompat.h blcr-0.8.2/cr_module/cr_kcompat.h ---- blcr-0.8.2-orig/cr_module/cr_kcompat.h 2009-06-12 22:37:03.000000000 +0200 -+++ blcr-0.8.2/cr_module/cr_kcompat.h 2010-07-29 21:18:29.000000000 +0200 -@@ -274,7 +274,8 @@ - #elif HAVE_2_ARG_FIND_PID - #define cr_have_pid(T,P) (find_pid((T),(P)) != NULL) - #else -- #error -+ // XXX: untested! -+ #define cr_have_pid(T,P) (pid_task(find_vpid(P),(T)) != NULL) - #endif - - // Process table iterators -@@ -583,4 +584,9 @@ - #error "no cr_do_pipe() definition" - #endif - -+#if !defined(DECLARE_MUTEX) -+ #define DECLARE_MUTEX(m) DEFINE_SEMAPHORE(m) -+ #define init_MUTEX(m) sema_init(m, 1) -+#endif -+ - #endif /* _CR_KCOMPAT_H */ -diff -ru -x Makefile.in -x aclocal.m4 -x configure -x '*config.h.in' -x 'config.*' -x depcomp -x install-sh -x ltmain.sh -x missing blcr-0.8.2-orig/cr_module/Makefile.am blcr-0.8.2/cr_module/Makefile.am ---- blcr-0.8.2-orig/cr_module/Makefile.am 2008-09-03 02:29:00.000000000 +0200 -+++ blcr-0.8.2/cr_module/Makefile.am 2010-07-29 21:18:29.000000000 +0200 -@@ -31,13 +31,13 @@ - - BPROC_VERSION = "4.0.0pre8" - vmadump_dir = $(top_srcdir)/vmadump4 --vmad_sources = $(vmadump_dir)/vmadump_common.c $(vmadump_dir)/vmadump_@CR_ARCH@.c -+vmad_sources = $(vmadump_dir)/vmadump_common.c $(vmadump_dir)/vmadump_@CR_KARCH@.c - vmad_include = -I$(vmadump_dir) -D__NR_vmadump=-1 -DBPROC_VERSION='$(BPROC_VERSION)' - - cr_sources = $(my_sources) $(vmad_sources) - INCLUDES = -I$(top_builddir)/include \ - -I$(top_srcdir)/include \ -- -I$(srcdir)/arch/@CR_ARCH@ \ -+ -I$(srcdir)/arch/@CR_KARCH@ \ - $(vmad_include) - - # echo an arbitrary make/environment variable (needed by kbuild glue) -diff -ru -x Makefile.in -x aclocal.m4 -x configure -x '*config.h.in' -x 'config.*' -x depcomp -x install-sh -x ltmain.sh -x missing blcr-0.8.2-orig/include/blcr_ksyms.h blcr-0.8.2/include/blcr_ksyms.h ---- blcr-0.8.2-orig/include/blcr_ksyms.h 2008-12-02 01:17:42.000000000 +0100 -+++ blcr-0.8.2/include/blcr_ksyms.h 2010-07-29 21:18:29.000000000 +0200 -@@ -55,7 +55,11 @@ - - #if defined(__i386__) || defined(__x86_64__) - #ifdef CONFIG_RELOCATABLE -- #define _CR_RELOC_KSYM(_addr) (_addr - CR_EXPORTED_KCODE_register_chrdev + register_chrdev) -+ #ifndef CR_EXPORTED_KCODE___register_chrdev -+ #define _CR_RELOC_KSYM(_addr) (_addr - CR_EXPORTED_KCODE_register_chrdev + register_chrdev) -+ #else -+ #define _CR_RELOC_KSYM(_addr) (_addr - CR_EXPORTED_KCODE___register_chrdev + __register_chrdev) -+ #endif - #else - #define _CR_RELOC_KSYM(_addr) _addr - #endif -diff -ru -x Makefile.in -x aclocal.m4 -x configure -x '*config.h.in' -x 'config.*' -x depcomp -x install-sh -x ltmain.sh -x missing blcr-0.8.2-orig/libcr/arch/arm/cr_atomic.h blcr-0.8.2/libcr/arch/arm/cr_atomic.h ---- blcr-0.8.2-orig/libcr/arch/arm/cr_atomic.h 2008-09-05 05:55:11.000000000 +0200 -+++ blcr-0.8.2/libcr/arch/arm/cr_atomic.h 2010-07-29 21:18:29.000000000 +0200 -@@ -33,6 +33,25 @@ - #ifndef _CR_ATOMIC_H - #define _CR_ATOMIC_H 1 - -+#if defined(__ARM_ARCH_2__) || defined(__ARM_ARCH_3__) -+ // Sanity-check that we're not building on a really old architecture, -+ // so that the using #ifdef __ARM_ARCH_4__ works to test for -+ // lack of blx <register> support. -+ #error "ARM Architecture versions prior to ARMv4 not supported." -+#elif defined(__ARM_ARCH_4T__) && defined(__thumb__) -+ // The inline asm is not compatible with Thumb-1 anyway, but in particular -+ // we assume later that if __ARM_ARCH_4__ is not defined, we have ARMv5 -+ // or above. Ensure here that this assumption will be valid. -+ #error "Building for Thumb on ARMv4 is not supported." -+#endif -+ -+// Determine whether to use BLX <register> for function calls to -+// computed addresses: -+#undef ARM_HAVE_BLX_REG -+#if !(defined(__ARM_ARCH_4__) || defined(__ARM_ARCH_4T__)) -+ #define ARM_HAVE_BLX_REG 1 -+#endif -+ - #include "blcr_config.h" - - #ifndef _STRINGIFY -@@ -61,7 +80,7 @@ - __asm__ __volatile__("": : :"memory"); - } - --#if defined(CR_KCODE___kuser_cmpxchg) -+#if 1 - // For kernel >= 2.6.12, we use __kernel_cmpxchg() - // See linux-2.6.12/arch/arm/kernel/entry-armv.S - // For >= ARM6 we could/should be using load-exclusive directly. -@@ -83,10 +102,15 @@ - - __asm__ __volatile__ ( - "0: ldr r0, [r2] @ r0 = *p \n" -+ " add r1, r0, %2 @ r1 = r0 + op \n" - " mov r3, #" _STRINGIFY(cri_kuser_base) " \n" -+#ifdef ARM_HAVE_BLX_REG -+ " sub r3, r3, #" _STRINGIFY(cri_kuser_offset) "\n" -+ " blx r3\n" -+#else // ARMv4T and below - " adr lr, 1f @ lr = return address \n" -- " add r1, r0, %2 @ r1 = r0 + op \n" - " sub pc, r3, #" _STRINGIFY(cri_kuser_offset) "\n" -+#endif - "1: bcc 0b @ retry on Carry Clear" - : "=&r" (__sum) - : "r" (__ptr), "rIL" (op) -@@ -135,9 +159,14 @@ - __asm__ __volatile__ ( - "0: mov r0, r4 @ r0 = oldval \n" - " mov r3, #" _STRINGIFY(cri_kuser_base) " \n" -- " mov lr, pc @ lr = return addr \n" -+#ifdef ARM_HAVE_BLX_REG -+ " sub r3, r3, #" _STRINGIFY(cri_kuser_offset) "\n" -+ " blx r3\n" -+#else // ARMv4T and below -+ " adr lr, 1f @ lr = return addr \n" - " sub pc, r3, #" _STRINGIFY(cri_kuser_offset) "\n" -- " ldrcc ip, [r2] @ if (!swapped) ip=*p \n" -+#endif -+ "1: ldrcc ip, [r2] @ if (!swapped) ip=*p \n" - " eorcs ip, r4, #1 @ else ip=oldval^1 \n" - " teq r4, ip @ if (ip == oldval) \n" - " beq 0b @ then retry " diff --git a/pkgs/os-specific/linux/htop/default.nix b/pkgs/os-specific/linux/htop/default.nix index e7691f1006f..6a232099351 100644 --- a/pkgs/os-specific/linux/htop/default.nix +++ b/pkgs/os-specific/linux/htop/default.nix @@ -10,5 +10,6 @@ stdenv.mkDerivation rec { meta = { description = "An interactive process viewer for Linux"; homepage = "http://htop.sourceforge.net"; + platforms = stdenv.lib.platforms.linux; }; } diff --git a/pkgs/os-specific/linux/iproute/default.nix b/pkgs/os-specific/linux/iproute/default.nix index ba9430fb7f0..ba0f1d4fd0f 100644 --- a/pkgs/os-specific/linux/iproute/default.nix +++ b/pkgs/os-specific/linux/iproute/default.nix @@ -1,19 +1,31 @@ -{fetchurl, stdenv, flex, bison, db4}: +{fetchurl, stdenv, flex, bison, db4, iptables}: stdenv.mkDerivation rec { - name = "iproute2-2.6.29-1"; + name = "iproute2-2.6.35"; src = fetchurl { url = "http://devresources.linux-foundation.org/dev/iproute2/download/${name}.tar.bz2"; - sha256 = "16zvhdzv7yqyvmwxyqa6shzsld6r0wpnk37dig69sk20wpzv1zqk"; + sha256 = "18why1wy0v859axgrlfxn80zmskss0410hh9rf5gn9cr29zg9cla"; }; preConfigure = '' patchShebangs ./configure + sed -e '/ARPDDIR/d' -i Makefile ''; + postConfigure = "cat Config"; - makeFlags = "DESTDIR= LIBDIR=$(out)/lib SBINDIR=$(out)/sbin CONFDIR=$(out)/etc DOCDIR=$(out)/share/doc MANDIR=$(out)/share/man"; + makeFlags = "DESTDIR= LIBDIR=$(out)/lib SBINDIR=$(out)/sbin" + + " CONFDIR=$(out)/etc DOCDIR=$(out)/share/doc/${name}" + + " MANDIR=$(out)/share/man"; - buildInputs = [bison flex db4]; + buildInputs = [bison flex db4 iptables]; + + meta = { + homepage = + http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2; + description = "A collection of utilities for controlling TCP / IP" + + " networking and traffic control in Linux"; + platforms = stdenv.lib.platforms.linux; + }; } diff --git a/pkgs/os-specific/linux/iptables/default.nix b/pkgs/os-specific/linux/iptables/default.nix index 1f56a92efe1..2f447f72ab2 100644 --- a/pkgs/os-specific/linux/iptables/default.nix +++ b/pkgs/os-specific/linux/iptables/default.nix @@ -23,5 +23,6 @@ stdenv.mkDerivation rec { meta = { description = "A program to configure the Linux IP packet filtering ruleset"; homepage = http://www.netfilter.org/projects/iptables/index.html; + platforms = stdenv.lib.platforms.linux; }; } diff --git a/pkgs/os-specific/linux/kernel/generate-config.pl b/pkgs/os-specific/linux/kernel/generate-config.pl index 3db050c900c..05b6867bc55 100644 --- a/pkgs/os-specific/linux/kernel/generate-config.pl +++ b/pkgs/os-specific/linux/kernel/generate-config.pl @@ -26,7 +26,7 @@ while (<ANSWERS>) { s/#.*//; if (/^\s*([A-Za-z0-9_]+)(\?)?\s+(\S+)\s*$/) { $answers{$1} = $3; - $requiredAnswers{$1} = 1 unless defined $2; + $requiredAnswers{$1} = !(defined $2); } elsif (!/^\s*$/) { die "invalid config line: $_"; } diff --git a/pkgs/os-specific/linux/kernel/generic.nix b/pkgs/os-specific/linux/kernel/generic.nix index efc2408d371..f5dd09a2ccc 100644 --- a/pkgs/os-specific/linux/kernel/generic.nix +++ b/pkgs/os-specific/linux/kernel/generic.nix @@ -61,6 +61,8 @@ in stdenv.mkDerivation { name = if userModeLinux then "user-mode-linux-${version}" else "linux-${version}"; + enableParallelBuilding = true; + passthru = { inherit version; # Combine the `features' attribute sets of all the kernel patches. diff --git a/pkgs/os-specific/linux/kernel/linux-2.6.27.nix b/pkgs/os-specific/linux/kernel/linux-2.6.27.nix index beb14c4c87b..dfbe507fd8f 100644 --- a/pkgs/os-specific/linux/kernel/linux-2.6.27.nix +++ b/pkgs/os-specific/linux/kernel/linux-2.6.27.nix @@ -3,11 +3,11 @@ args @ { stdenv, fetchurl, userModeLinux ? false, extraConfig ? "", ... }: import ./generic.nix ( rec { - version = "2.6.27.49"; + version = "2.6.27.51"; src = fetchurl { url = "mirror://kernel/linux/kernel/v2.6/linux-${version}.tar.bz2"; - sha256 = "09gnh26gs4bkaj9ib3c5cnmbgj3bhbw7g6b49hz0xrp067slyxai"; + sha256 = "092x3ribl63i1kj27kg4qmvr20sys0wl58qsf1wjiy33pw5j63lk"; }; features.iwlwifi = true; diff --git a/pkgs/os-specific/linux/kernel/linux-2.6.31.nix b/pkgs/os-specific/linux/kernel/linux-2.6.31.nix index 6bc7e84f3fa..d248e8f8608 100644 --- a/pkgs/os-specific/linux/kernel/linux-2.6.31.nix +++ b/pkgs/os-specific/linux/kernel/linux-2.6.31.nix @@ -4,16 +4,12 @@ assert !userModeLinux; import ./generic.nix ( - let - baseVersion = "2.6.31"; - in - rec { - version = "2.6.31"; + version = "2.6.31.14"; src = fetchurl { - url = "mirror://kernel/linux/kernel/v2.6/linux-${baseVersion}.tar.bz2"; - sha256 = "04im1rk53j1im1q8i6pl6qn75zd63dg51dxhq8cfxdsxp3vq7k8a"; + url = "mirror://kernel/linux/kernel/v2.6/linux-${version}.tar.bz2"; + sha256 = "1c6ivcjgns4gbx04mhnhndqikm3prqhhfm2a5zrb1mfyvvishqpp"; }; features = { diff --git a/pkgs/os-specific/linux/kernel/linux-2.6.32.nix b/pkgs/os-specific/linux/kernel/linux-2.6.32.nix index 48c4b50a5b6..bb7a218f555 100644 --- a/pkgs/os-specific/linux/kernel/linux-2.6.32.nix +++ b/pkgs/os-specific/linux/kernel/linux-2.6.32.nix @@ -206,11 +206,11 @@ in import ./generic.nix ( rec { - version = "2.6.32.17"; + version = "2.6.32.18"; src = fetchurl { url = "mirror://kernel/linux/kernel/v2.6/linux-${version}.tar.bz2"; - sha256 = "12ingi7ml0cw7hjbpaq5mxl4nvi7683kma3d1z0pzrzdd9wngh1x"; + sha256 = "1z35clz0176blqk3ygfim0a6y7b4ndbjpc1pkz7pxnscsj1kl9k7"; }; config = configWithPlatform stdenv.platform; diff --git a/pkgs/os-specific/linux/kernel/linux-2.6.34.nix b/pkgs/os-specific/linux/kernel/linux-2.6.34.nix index 281fbc5ea1b..1f44ae05510 100644 --- a/pkgs/os-specific/linux/kernel/linux-2.6.34.nix +++ b/pkgs/os-specific/linux/kernel/linux-2.6.34.nix @@ -194,11 +194,11 @@ in import ./generic.nix ( rec { - version = "2.6.34.2"; + version = "2.6.34.4"; src = fetchurl { url = "mirror://kernel/linux/kernel/v2.6/linux-${version}.tar.bz2"; - sha256 = "1p1s35sffvsdfh5rd5jl8iyin0il690als0q75fszf0fx1bh63sr"; + sha256 = "19flipl10cbn4xf4skjr6v3p8baxv3igzvhxm175lkrg2qphv5nd"; }; config = configWithPlatform stdenv.platform; diff --git a/pkgs/os-specific/linux/kernel/linux-2.6.35.nix b/pkgs/os-specific/linux/kernel/linux-2.6.35.nix new file mode 100644 index 00000000000..9a0a9f3d860 --- /dev/null +++ b/pkgs/os-specific/linux/kernel/linux-2.6.35.nix @@ -0,0 +1,207 @@ +args @ { stdenv, fetchurl, userModeLinux ? false, extraConfig ? "" +, ... }: + +let + configWithPlatform = kernelPlatform : + '' + # Don't include any debug features. + DEBUG_KERNEL n + + # Support drivers that need external firmware. + STANDALONE n + + # Make /proc/config.gz available. + IKCONFIG_PROC y + + # Optimize with -O2, not -Os. + CC_OPTIMIZE_FOR_SIZE n + + # Enable the kernel's built-in memory tester. + MEMTEST y + + # Disable some expensive (?) features. + FTRACE n + KPROBES n + NUMA? n + PM_TRACE_RTC n + + # Enable various subsystems. + ACCESSIBILITY y # Accessibility support + AUXDISPLAY y # Auxiliary Display support + DONGLE y # Serial dongle support + HIPPI y + MTD_COMPLEX_MAPPINGS y # needed for many devices + NET_POCKET y # enable pocket and portable adapters + SCSI_LOWLEVEL y # enable lots of SCSI devices + SCSI_LOWLEVEL_PCMCIA y + SPI y # needed for many devices + SPI_MASTER y + WAN y + + # Networking options. + IP_PNP n + IPV6_PRIVACY y + NETFILTER_ADVANCED y + IP_VS_PROTO_TCP y + IP_VS_PROTO_UDP y + IP_VS_PROTO_ESP y + IP_VS_PROTO_AH y + IP_DCCP_CCID3 n # experimental + CLS_U32_PERF y + CLS_U32_MARK y + + # Wireless networking. + IPW2100_MONITOR y # support promiscuous mode + IPW2200_MONITOR y # support promiscuous mode + IWL4965 y # Intel Wireless WiFi 4965AGN + IWL5000 y # Intel Wireless WiFi 5000AGN + HOSTAP_FIRMWARE y # Support downloading firmware images with Host AP driver + HOSTAP_FIRMWARE_NVRAM y + + # Some settings to make sure that fbcondecor works - in particular, + # disable tileblitting and the drivers that need it. + + # Enable various FB devices. + FB y + FB_EFI y + FB_NVIDIA_I2C y # Enable DDC Support + FB_RIVA_I2C y + FB_ATY_CT y # Mach64 CT/VT/GT/LT (incl. 3D RAGE) support + FB_ATY_GX y # Mach64 GX support + FB_SAVAGE_I2C y + FB_SAVAGE_ACCEL y + FB_SIS_300 y + FB_SIS_315 y + FB_3DFX_ACCEL y + FB_GEODE y + + # Video configuration + # The intel drivers already require KMS + DRM_I915_KMS y + + # Sound. + SND_AC97_POWER_SAVE y # AC97 Power-Saving Mode + SND_HDA_INPUT_BEEP y # Support digital beep via input layer + SND_USB_CAIAQ_INPUT y + PSS_MIXER y # Enable PSS mixer (Beethoven ADSP-16 and other compatible) + + # USB serial devices. + USB_SERIAL_GENERIC y # USB Generic Serial Driver + USB_SERIAL_KEYSPAN_MPR y # include firmware for various USB serial devices + USB_SERIAL_KEYSPAN_USA28 y + USB_SERIAL_KEYSPAN_USA28X y + USB_SERIAL_KEYSPAN_USA28XA y + USB_SERIAL_KEYSPAN_USA28XB y + USB_SERIAL_KEYSPAN_USA19 y + USB_SERIAL_KEYSPAN_USA18X y + USB_SERIAL_KEYSPAN_USA19W y + USB_SERIAL_KEYSPAN_USA19QW y + USB_SERIAL_KEYSPAN_USA19QI y + USB_SERIAL_KEYSPAN_USA49W y + USB_SERIAL_KEYSPAN_USA49WLC y + + # Filesystem options - in particular, enable extended attributes and + # ACLs for all filesystems that support them. + EXT2_FS_XATTR y # Ext2 extended attributes + EXT2_FS_POSIX_ACL y # Ext2 POSIX Access Control Lists + EXT2_FS_SECURITY y # Ext2 Security Labels + EXT2_FS_XIP y # Ext2 execute in place support + EXT4_FS_POSIX_ACL y + EXT4_FS_SECURITY y + REISERFS_FS_XATTR y + REISERFS_FS_POSIX_ACL y + REISERFS_FS_SECURITY y + JFS_POSIX_ACL y + JFS_SECURITY y + XFS_QUOTA y + XFS_POSIX_ACL y + XFS_RT y # XFS Realtime subvolume support + OCFS2_DEBUG_MASKLOG n + BTRFS_FS_POSIX_ACL y + UBIFS_FS_XATTR y + UBIFS_FS_ADVANCED_COMPR y + NFSD_V2_ACL y + NFSD_V3 y + NFSD_V3_ACL y + NFSD_V4 y + CIFS_XATTR y + CIFS_POSIX y + + # Security related features. + STRICT_DEVMEM y # Filter access to /dev/mem + SECURITY_SELINUX_BOOTPARAM_VALUE 0 # disable SELinux by default + + # Misc. options. + 8139TOO_8129 y + 8139TOO_PIO n # PIO is slower + AIC79XX_DEBUG_ENABLE n + AIC7XXX_DEBUG_ENABLE n + AIC94XX_DEBUG n + B43_PCMCIA y + BLK_DEV_BSG n + 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 + BT_RFCOMM_TTY y # RFCOMM TTY support + CPU_FREQ_DEBUG n + CRASH_DUMP n + DMAR? n # experimental + DVB_DYNAMIC_MINORS y # we use udev + FUSION y # Fusion MPT device support + IDE_GD_ATAPI y # ATAPI floppy support + 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 + KALLSYMS_EXTRA_PASS n + 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 + MEGARAID_NEWGEN y + MICROCODE_AMD y + MODVERSIONS y + MOUSE_PS2_ELANTECH y # Elantech PS/2 protocol extension + MTRR_SANITIZER y + NET_FC y # Fibre Channel driver support + PPP_MULTILINK y # PPP multilink support + REGULATOR y # Voltage and Current Regulator Support + SCSI_LOGGING y # SCSI logging facility + SERIAL_8250 y # 8250/16550 and compatible serial support + SLIP_COMPRESSED y # CSLIP compressed headers + SLIP_SMART y + THERMAL_HWMON y # Hardware monitoring support + USB_DEBUG n + USB_EHCI_ROOT_HUB_TT y # Root Hub Transaction Translators + X86_CHECK_BIOS_CORRUPTION y + X86_MCE y + + ${if kernelPlatform ? kernelExtraConfig then kernelPlatform.kernelExtraConfig else ""} + ${extraConfig} + ''; +in + +import ./generic.nix ( + + rec { + version = "2.6.35.2"; + + src = fetchurl { + url = "mirror://kernel/linux/kernel/v2.6/linux-${version}.tar.bz2"; + sha256 = "1cvbk58i4724v1wkjc574d61in5q4d3l1ix6icy59dsnhx5v9krn"; + }; + + config = configWithPlatform stdenv.platform; + configCross = configWithPlatform stdenv.cross.platform; + + features.iwlwifi = true; + } + + // removeAttrs args ["extraConfig"] +) diff --git a/pkgs/os-specific/linux/lvm2/default.nix b/pkgs/os-specific/linux/lvm2/default.nix index da2292848dc..9a2dc2d28ac 100644 --- a/pkgs/os-specific/linux/lvm2/default.nix +++ b/pkgs/os-specific/linux/lvm2/default.nix @@ -8,7 +8,7 @@ stdenv.mkDerivation { name = "lvm2-${v}"; src = fetchurl { - url = "ftp://sources.redhat.com/pub/lvm2/LVM2.${v}.tgz"; + url = "ftp://sources.redhat.com/pub/lvm2/old/LVM2.${v}.tgz"; sha256 = "1lbskrj4pxbipq8f0qhql3p1nqa796v4i1cy6n2fmmbs3fwmfh9a"; }; diff --git a/pkgs/os-specific/linux/pam/default.nix b/pkgs/os-specific/linux/pam/default.nix index 6b0526c3569..0053d89b605 100644 --- a/pkgs/os-specific/linux/pam/default.nix +++ b/pkgs/os-specific/linux/pam/default.nix @@ -13,7 +13,18 @@ stdenv.mkDerivation { (stdenv.system != "armv5tel-linux" && stdenv.system != "ict_loongson-2_v0.3_fpu_v0.1-linux") libxcrypt; + postInstall = '' + mv -v $out/sbin/unix_chkpwd{,.orig} + ln -sv /var/setuid-wrappers/unix_chkpwd $out/sbin/unix_chkpwd + ''; + preConfigure = '' configureFlags="$configureFlags --includedir=$out/include/security" ''; + + meta = { + homepage = http://ftp.kernel.org/pub/linux/libs/pam/; + description = "Pluggable Authentication Modules, a flexible mechanism for authenticating user"; + platforms = stdenv.lib.platforms.linux; + }; } diff --git a/pkgs/os-specific/linux/pam_ldap/default.nix b/pkgs/os-specific/linux/pam_ldap/default.nix index cb37e4a1815..2be869e73e3 100644 --- a/pkgs/os-specific/linux/pam_ldap/default.nix +++ b/pkgs/os-specific/linux/pam_ldap/default.nix @@ -1,10 +1,10 @@ {stdenv, fetchurl, pam, openldap}: -stdenv.mkDerivation { +stdenv.mkDerivation rec { name = "pam_ldap-183"; src = fetchurl { - url = http://www.padl.com/download/pam_ldap-183.tar.gz; + url = "http://www.padl.com/download/${name}.tar.gz"; md5 = "c0ad81e9d9712ddc6599a6e7a1688778"; }; @@ -13,4 +13,15 @@ stdenv.mkDerivation { "; buildInputs = [pam openldap]; + + meta = { + homepage = http://www.padl.com/OSS/pam_ldap.html; + description = "LDAP backend for PAM"; + longDescription = '' + The pam_ldap module provides the means for Solaris and Linux servers and + workstations to authenticate against LDAP directories, and to change their + passwords in the directory.''; + license = "LGPL"; + inherit (pam.meta) platforms; + }; } |