From e7f3ff803e15e7a65e4bcc0dec300e3b02233cfd Mon Sep 17 00:00:00 2001 From: Jack Cummings Date: Fri, 5 Oct 2012 09:11:25 -0700 Subject: [PATCH 01/25] - zfs 0.6.0-rc11, spl 0.6.0-rc11 --- pkgs/lib/licenses.nix | 6 + pkgs/os-specific/linux/spl/default.nix | 39 +++++ .../linux/spl/install_prefix.patch | 19 +++ .../linux/spl/install_prefix_2.patch | 32 ++++ .../os-specific/linux/spl/module_prefix.patch | 33 +++++ pkgs/os-specific/linux/spl/spl-0.6.0.nix | 24 +++ pkgs/os-specific/linux/zfs/default.nix | 34 +++++ .../linux/zfs/kerneldir_path.patch | 140 ++++++++++++++++++ .../linux/zfs/module_perm_prefix.patch | 70 +++++++++ .../linux/zfs/mount_zfs_prefix.patch | 24 +++ .../zfs/no_absolute_paths_to_coreutils.patch | 25 ++++ pkgs/os-specific/linux/zfs/zfs-0.6.0.nix | 23 +++ pkgs/top-level/all-packages.nix | 4 + 13 files changed, 473 insertions(+) create mode 100644 pkgs/os-specific/linux/spl/default.nix create mode 100644 pkgs/os-specific/linux/spl/install_prefix.patch create mode 100644 pkgs/os-specific/linux/spl/install_prefix_2.patch create mode 100644 pkgs/os-specific/linux/spl/module_prefix.patch create mode 100644 pkgs/os-specific/linux/spl/spl-0.6.0.nix create mode 100644 pkgs/os-specific/linux/zfs/default.nix create mode 100644 pkgs/os-specific/linux/zfs/kerneldir_path.patch create mode 100644 pkgs/os-specific/linux/zfs/module_perm_prefix.patch create mode 100644 pkgs/os-specific/linux/zfs/mount_zfs_prefix.patch create mode 100644 pkgs/os-specific/linux/zfs/no_absolute_paths_to_coreutils.patch create mode 100644 pkgs/os-specific/linux/zfs/zfs-0.6.0.nix diff --git a/pkgs/lib/licenses.nix b/pkgs/lib/licenses.nix index 87f9298706e..e1743bddf69 100644 --- a/pkgs/lib/licenses.nix +++ b/pkgs/lib/licenses.nix @@ -34,6 +34,12 @@ url = https://fedoraproject.org/wiki/Licensing/BSD; }; + cddl = { + shortName = "CDDL"; + fullName = "Common Development Distribution License "; + url = http://www.opensolaris.org/os/licensing/cddllicense.txt; + }; + cpl10 = { shortName = "CPL 1.0"; fullName = "Common Public License version 1.0"; diff --git a/pkgs/os-specific/linux/spl/default.nix b/pkgs/os-specific/linux/spl/default.nix new file mode 100644 index 00000000000..96565fffa0e --- /dev/null +++ b/pkgs/os-specific/linux/spl/default.nix @@ -0,0 +1,39 @@ +{ stdenv, fetchurl, kernel, perl, autoconf, automake, libtool, coreutils, gawk }: + +stdenv.mkDerivation { + name = "spl-0.6.0-rc11"; + src = fetchurl { + url = http://github.com/downloads/zfsonlinux/spl/spl-0.6.0-rc11.tar.gz; + sha256 = "0brsrr9hvzlpx7a26nn8rw9k2kh9s75hmxp6h087hi64hzxysf8g"; + }; + + patches = [ ./install_prefix.patch ./install_prefix_2.patch ./module_prefix.patch ]; + + buildInputs = [ perl kernel autoconf automake libtool ]; + + NIX_CFLAGS_COMPILE = "-I${kernel}/lib/modules/${kernel.modDirVersion}/build/include/generated"; + + preConfigure = '' + ./autogen.sh + + substituteInPlace ./module/spl/spl-generic.c --replace /usr/bin/hostid hostid + substituteInPlace ./module/spl/spl-module.c --replace /bin/mknod mknod + + substituteInPlace ./module/spl/spl-generic.c --replace "PATH=/sbin:/usr/sbin:/bin:/usr/bin" "PATH=${coreutils}:${gawk}:/bin" + substituteInPlace ./module/spl/spl-module.c --replace "PATH=/sbin:/usr/sbin:/bin:/usr/bin" "PATH=${coreutils}:/bin" + substituteInPlace ./module/splat/splat-vnode.c --replace "PATH=/sbin:/usr/sbin:/bin:/usr/bin" "PATH=${coreutils}:/bin" + ''; + + configureFlags = '' + --with-linux=${kernel}/lib/modules/${kernel.version}/build + --with-linux-obj=${kernel}/lib/modules/${kernel.version}/build + ''; + + meta = { + description = "Kernel module driver for solaris porting layer (needed by in-kernel zfs)"; + homepage = http://zfsonlinux.org/; + platforms = stdenv.lib.platforms.linux; + license = stdenv.lib.licenses.cddl; + maintainers = with stdenv.lib.maintainers; [ jcumming ]; + }; +} diff --git a/pkgs/os-specific/linux/spl/install_prefix.patch b/pkgs/os-specific/linux/spl/install_prefix.patch new file mode 100644 index 00000000000..9a7393b7170 --- /dev/null +++ b/pkgs/os-specific/linux/spl/install_prefix.patch @@ -0,0 +1,19 @@ +*** spl-0.6.0-rc10/Makefile.am.old Fri Aug 17 14:49:16 2012 +--- spl-0.6.0-rc10/Makefile.am Fri Aug 17 14:51:06 2012 +*************** +*** 32,38 **** + if CONFIG_KERNEL + install-data-local: + release=$(SPL_META_VERSION)-$(SPL_META_RELEASE); \ +! instdest=$(DESTDIR)/usr/src/spl-$$release/$(LINUX_VERSION); \ + for instfile in $(noinst_HEADERS) module/$(LINUX_SYMBOLS); do \ + $(INSTALL) -D $$instfile $$instdest/$$instfile; \ + done +--- 32,38 ---- + if CONFIG_KERNEL + install-data-local: + release=$(SPL_META_VERSION)-$(SPL_META_RELEASE); \ +! instdest=$(DESTDIR)/@libexecdir@/spl/$(LINUX_VERSION); \ + for instfile in $(noinst_HEADERS) module/$(LINUX_SYMBOLS); do \ + $(INSTALL) -D $$instfile $$instdest/$$instfile; \ + done diff --git a/pkgs/os-specific/linux/spl/install_prefix_2.patch b/pkgs/os-specific/linux/spl/install_prefix_2.patch new file mode 100644 index 00000000000..6068ad1d69c --- /dev/null +++ b/pkgs/os-specific/linux/spl/install_prefix_2.patch @@ -0,0 +1,32 @@ +*** git-export/include/Makefile.am Tue Mar 6 00:05:28 2012 +--- git-export/include/Makefile.am.new Tue Mar 6 00:04:46 2012 +*************** +*** 16,22 **** + + install-data-local: + release=$(SPL_META_VERSION)-$(SPL_META_RELEASE); \ +! instdest=$(DESTDIR)/usr/src/spl-$$release/$(LINUX_VERSION); \ + instfiles=`find . -name '*.h'`; \ + for instfile in $$instfiles; do \ + $(INSTALL) -D $$instfile $$instdest/$$instfile; \ +--- 16,22 ---- + + install-data-local: + release=$(SPL_META_VERSION)-$(SPL_META_RELEASE); \ +! instdest=$(DESTDIR)/@libexecdir@/spl/$(LINUX_VERSION); \ + instfiles=`find . -name '*.h'`; \ + for instfile in $$instfiles; do \ + $(INSTALL) -D $$instfile $$instdest/$$instfile; \ +*************** +*** 24,28 **** + + uninstall-local: + release=$(SPL_META_VERSION)-$(SPL_META_RELEASE); \ +! instdest=$(DESTDIR)/usr/src/spl-$$release/$(LINUX_VERSION); \ + $(RM) -R $$instdest +--- 24,28 ---- + + uninstall-local: + release=$(SPL_META_VERSION)-$(SPL_META_RELEASE); \ +! instdest=$(DESTDIR)/@libexecdir@/spl/$(LINUX_VERSION); \ + $(RM) -R $$instdest diff --git a/pkgs/os-specific/linux/spl/module_prefix.patch b/pkgs/os-specific/linux/spl/module_prefix.patch new file mode 100644 index 00000000000..dd40711ccdb --- /dev/null +++ b/pkgs/os-specific/linux/spl/module_prefix.patch @@ -0,0 +1,33 @@ +*** git-export/module/Makefile.in Wed Dec 31 16:00:01 1969 +--- git-export/module/Makefile.in.new Sat Jan 28 21:42:06 2012 +*************** +*** 17,30 **** + modules_install: + @# Install the kernel modules + $(MAKE) -C @LINUX_OBJ@ SUBDIRS=`pwd` \ +! INSTALL_MOD_PATH=$(DESTDIR) \ + INSTALL_MOD_DIR=addon/spl $@ + @# Remove extraneous build products when packaging +! if [ -n "$(DESTDIR)" ]; then \ +! find $(DESTDIR)/lib/modules/@LINUX_VERSION@ \ + -name 'modules.*' | xargs $(RM); \ + fi +! sysmap=$(DESTDIR)/boot/System.map-@LINUX_VERSION@; \ + if [ -f $$sysmap ]; then \ + depmod -ae -F $$sysmap @LINUX_VERSION@; \ + fi +--- 17,30 ---- + modules_install: + @# Install the kernel modules + $(MAKE) -C @LINUX_OBJ@ SUBDIRS=`pwd` \ +! INSTALL_MOD_PATH=@prefix@ \ + INSTALL_MOD_DIR=addon/spl $@ + @# Remove extraneous build products when packaging +! if [ -n "@prefix@" ]; then \ +! find @prefix@/lib/modules/@LINUX_VERSION@ \ + -name 'modules.*' | xargs $(RM); \ + fi +! sysmap=@prefix@/boot/System.map-@LINUX_VERSION@; \ + if [ -f $$sysmap ]; then \ + depmod -ae -F $$sysmap @LINUX_VERSION@; \ + fi diff --git a/pkgs/os-specific/linux/spl/spl-0.6.0.nix b/pkgs/os-specific/linux/spl/spl-0.6.0.nix new file mode 100644 index 00000000000..c174daad26b --- /dev/null +++ b/pkgs/os-specific/linux/spl/spl-0.6.0.nix @@ -0,0 +1,24 @@ +{ stdenv, fetchgit, kernel, linuxHeaders, perl }: + +stdenv.mkDerivation { + name = "spl-0.6.0-rc4"; + src = fetchgit { + url = git://github.com/behlendorf/spl.git; + rev = "dde6b7b137f56894a457"; + sha256 = "c402517a647de0c22a69588219aa214f96d1cf9d2f8751b99c5a2795898c726b"; + }; + + patches = [ ./install_prefix.patch ./module_prefix.patch ]; + + buildInputs = [ perl kernel linuxHeaders ]; + + configureFlags = [ "--with-linux=${kernel}/lib/modules/${kernel.version}/build" + "--with-linux-obj=${kernel}/lib/modules/${kernel.version}/build" ]; + + meta = { + description = "Kernel module driver for solaris porting layer (needed by in-kernel zfs)"; + homepage = http://zfsonlinux.org/; + license = "CDDL"; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/os-specific/linux/zfs/default.nix b/pkgs/os-specific/linux/zfs/default.nix new file mode 100644 index 00000000000..43e7b2fd95d --- /dev/null +++ b/pkgs/os-specific/linux/zfs/default.nix @@ -0,0 +1,34 @@ +{ stdenv, fetchurl, kernel, spl, perl, zlib, libuuid, coreutils, utillinux }: + +stdenv.mkDerivation { + name = "zfs-0.6.0-rc11"; + src = fetchurl { + url = http://github.com/downloads/zfsonlinux/zfs/zfs-0.6.0-rc11.tar.gz; + sha256 = "0wx0srn2k31j9xdk3nvk7l847r0diyb7ph6hd006ax9l5p9zj0a7"; + }; + + patches = [ ./module_perm_prefix.patch ./mount_zfs_prefix.patch ./kerneldir_path.patch ./no_absolute_paths_to_coreutils.patch ]; + + buildInputs = [ kernel spl perl zlib libuuid coreutils ]; + + NIX_CFLAGS_COMPILE = "-I${kernel}/lib/modules/${kernel.modDirVersion}/build/include/generated"; + + preConfigure = '' + substituteInPlace ./module/zfs/zfs_ctldir.c --replace "umount -t zfs" "${utillinux}/bin/umount -t zfs" + substituteInPlace ./module/zfs/zfs_ctldir.c --replace "mount -t zfs" "${utillinux}/bin/mount -t zfs" + ''; + + configureFlags = '' + --with-linux=${kernel}/lib/modules/${kernel.version}/build + --with-linux-obj=${kernel}/lib/modules/${kernel.version}/build + --with-spl=${spl}/libexec/spl/${kernel.version} + ''; + + meta = { + description = "Native ZFS for Linux"; + homepage = http://zfsonlinux.org/; + platforms = stdenv.lib.platforms.linux; + license = stdenv.lib.licenses.cddl; + maintainers = with stdenv.lib.maintainers; [ jcumming ]; + }; +} diff --git a/pkgs/os-specific/linux/zfs/kerneldir_path.patch b/pkgs/os-specific/linux/zfs/kerneldir_path.patch new file mode 100644 index 00000000000..7deda946821 --- /dev/null +++ b/pkgs/os-specific/linux/zfs/kerneldir_path.patch @@ -0,0 +1,140 @@ +diff -rc zfs-0.6.0-rc10.old/Makefile.in zfs-0.6.0-rc10/Makefile.in +*** zfs-0.6.0-rc10.old/Makefile.in Tue Aug 14 12:35:34 2012 +--- zfs-0.6.0-rc10/Makefile.in Fri Aug 17 15:21:18 2012 +*************** +*** 1121,1127 **** + + @CONFIG_KERNEL_TRUE@install-data-local: + @CONFIG_KERNEL_TRUE@ release=$(ZFS_META_VERSION)-$(ZFS_META_RELEASE); \ +! @CONFIG_KERNEL_TRUE@ instdest=$(DESTDIR)/usr/src/zfs-$$release/$(LINUX_VERSION); \ + @CONFIG_KERNEL_TRUE@ for instfile in $(noinst_HEADERS) module/$(LINUX_SYMBOLS); do \ + @CONFIG_KERNEL_TRUE@ $(INSTALL) -D $$instfile $$instdest/$$instfile; \ + @CONFIG_KERNEL_TRUE@ done +--- 1121,1127 ---- + + @CONFIG_KERNEL_TRUE@install-data-local: + @CONFIG_KERNEL_TRUE@ release=$(ZFS_META_VERSION)-$(ZFS_META_RELEASE); \ +! @CONFIG_KERNEL_TRUE@ instdest=$(DESTDIR)/@libexecdir@/zfs/$(LINUX_VERSION); \ + @CONFIG_KERNEL_TRUE@ for instfile in $(noinst_HEADERS) module/$(LINUX_SYMBOLS); do \ + @CONFIG_KERNEL_TRUE@ $(INSTALL) -D $$instfile $$instdest/$$instfile; \ + @CONFIG_KERNEL_TRUE@ done +diff -rc zfs-0.6.0-rc10.old/include/Makefile.in zfs-0.6.0-rc10/include/Makefile.in +*** zfs-0.6.0-rc10.old/include/Makefile.in Tue Aug 14 12:35:32 2012 +--- zfs-0.6.0-rc10/include/Makefile.in Fri Aug 17 15:20:50 2012 +*************** +*** 402,408 **** + EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H) + @CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs + @CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H) +! @CONFIG_KERNEL_TRUE@kerneldir = /usr/src/zfs-$(ZFS_META_VERSION)-$(ZFS_META_RELEASE)/$(LINUX_VERSION) + @CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H) + all: all-recursive + +--- 402,408 ---- + EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H) + @CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs + @CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H) +! @CONFIG_KERNEL_TRUE@kerneldir = $(DESTDIR)/@libexecdir@/zfs/$(LINUX_VERSION) + @CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H) + all: all-recursive + +diff -rc zfs-0.6.0-rc10.old/include/linux/Makefile.in zfs-0.6.0-rc10/include/linux/Makefile.in +*** zfs-0.6.0-rc10.old/include/linux/Makefile.in Tue Aug 14 12:35:32 2012 +--- zfs-0.6.0-rc10/include/linux/Makefile.in Fri Aug 17 15:20:53 2012 +*************** +*** 337,343 **** + EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H) + @CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs/linux + @CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H) +! @CONFIG_KERNEL_TRUE@kerneldir = /usr/src/zfs-$(ZFS_META_VERSION)-$(ZFS_META_RELEASE)/$(LINUX_VERSION)/linux + @CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H) + all: all-am + +--- 337,343 ---- + EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H) + @CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs/linux + @CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H) +! @CONFIG_KERNEL_TRUE@kerneldir = $(DESTDIR)/@libexecdir@/zfs/$(LINUX_VERSION)/linux + @CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H) + all: all-am + +diff -rc zfs-0.6.0-rc10.old/include/sys/Makefile.in zfs-0.6.0-rc10/include/sys/Makefile.in +*** zfs-0.6.0-rc10.old/include/sys/Makefile.in Tue Aug 14 12:35:32 2012 +--- zfs-0.6.0-rc10/include/sys/Makefile.in Fri Aug 17 15:20:57 2012 +*************** +*** 590,596 **** + EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H) + @CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs/sys + @CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H) +! @CONFIG_KERNEL_TRUE@kerneldir = /usr/src/zfs-$(ZFS_META_VERSION)-$(ZFS_META_RELEASE)/$(LINUX_VERSION)/sys + @CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H) + all: all-recursive + +--- 590,596 ---- + EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H) + @CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs/sys + @CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H) +! @CONFIG_KERNEL_TRUE@kerneldir = $(DESTDIR)/@libexecdir@/zfs/$(LINUX_VERSION)/sys + @CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H) + all: all-recursive + +diff -rc zfs-0.6.0-rc10.old/include/sys/fm/Makefile.in zfs-0.6.0-rc10/include/sys/fm/Makefile.in +*** zfs-0.6.0-rc10.old/include/sys/fm/Makefile.in Tue Aug 14 12:35:32 2012 +--- zfs-0.6.0-rc10/include/sys/fm/Makefile.in Fri Aug 17 15:21:00 2012 +*************** +*** 374,380 **** + EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H) + @CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs/sys/fm + @CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H) +! @CONFIG_KERNEL_TRUE@kerneldir = /usr/src/zfs-$(ZFS_META_VERSION)-$(ZFS_META_RELEASE)/$(LINUX_VERSION)/sys/fm + @CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H) + all: all-recursive + +--- 374,380 ---- + EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H) + @CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs/sys/fm + @CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H) +! @CONFIG_KERNEL_TRUE@kerneldir = $(DESTDIR)/@libexecdir@/zfs/$(LINUX_VERSION)/sys/fm + @CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H) + all: all-recursive + +diff -rc zfs-0.6.0-rc10.old/include/sys/fm/fs/Makefile.in zfs-0.6.0-rc10/include/sys/fm/fs/Makefile.in +*** zfs-0.6.0-rc10.old/include/sys/fm/fs/Makefile.in Tue Aug 14 12:35:32 2012 +--- zfs-0.6.0-rc10/include/sys/fm/fs/Makefile.in Fri Aug 17 15:21:03 2012 +*************** +*** 332,338 **** + EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H) + @CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs/sys/fm/fs + @CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H) +! @CONFIG_KERNEL_TRUE@kerneldir = /usr/src/zfs-$(ZFS_META_VERSION)-$(ZFS_META_RELEASE)/$(LINUX_VERSION)/sys/fm/fs + @CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H) + all: all-am + +--- 332,338 ---- + EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H) + @CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs/sys/fm/fs + @CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H) +! @CONFIG_KERNEL_TRUE@kerneldir = $(DESTDIR)/@libexecdir@/zfs/$(LINUX_VERSION)/sys/fm/fs + @CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H) + all: all-am + +diff -rc zfs-0.6.0-rc10.old/include/sys/fs/Makefile.in zfs-0.6.0-rc10/include/sys/fs/Makefile.in +*** zfs-0.6.0-rc10.old/include/sys/fs/Makefile.in Tue Aug 14 12:35:32 2012 +--- zfs-0.6.0-rc10/include/sys/fs/Makefile.in Fri Aug 17 15:21:06 2012 +*************** +*** 332,338 **** + EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H) + @CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs/sys/fs + @CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H) +! @CONFIG_KERNEL_TRUE@kerneldir = /usr/src/zfs-$(ZFS_META_VERSION)-$(ZFS_META_RELEASE)/$(LINUX_VERSION)/sys/fs + @CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H) + all: all-am + +--- 332,338 ---- + EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H) + @CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs/sys/fs + @CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H) +! @CONFIG_KERNEL_TRUE@kerneldir = $(DESTDIR)/@libexecdir@/zfs/$(LINUX_VERSION)/sys/fs + @CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H) + all: all-am + diff --git a/pkgs/os-specific/linux/zfs/module_perm_prefix.patch b/pkgs/os-specific/linux/zfs/module_perm_prefix.patch new file mode 100644 index 00000000000..07cd04d1dde --- /dev/null +++ b/pkgs/os-specific/linux/zfs/module_perm_prefix.patch @@ -0,0 +1,70 @@ +*** git-export/module/Makefile.in.orig Wed Dec 31 16:00:01 1969 +--- git-export/module/Makefile.in Tue Mar 6 00:23:07 2012 +*************** +*** 11,19 **** + @# installed devel headers, or they may be in the module + @# subdirectory when building against the spl source tree. + @if [ -f @SPL_OBJ@/@SPL_SYMBOLS@ ]; then \ +! /bin/cp @SPL_OBJ@/@SPL_SYMBOLS@ .; \ + elif [ -f @SPL_OBJ@/module/@SPL_SYMBOLS@ ]; then \ +! /bin/cp @SPL_OBJ@/module/@SPL_SYMBOLS@ .; \ + else \ + echo -e "\n" \ + "*** Missing spl symbols ensure you have built the spl:\n" \ +--- 11,21 ---- + @# installed devel headers, or they may be in the module + @# subdirectory when building against the spl source tree. + @if [ -f @SPL_OBJ@/@SPL_SYMBOLS@ ]; then \ +! /bin/cp -f @SPL_OBJ@/@SPL_SYMBOLS@ .; \ +! chmod +w @SPL_SYMBOLS@ .; \ + elif [ -f @SPL_OBJ@/module/@SPL_SYMBOLS@ ]; then \ +! /bin/cp -f @SPL_OBJ@/module/@SPL_SYMBOLS@ .; \ +! chmod +w @SPL_SYMBOLS@ .; \ + else \ + echo -e "\n" \ + "*** Missing spl symbols ensure you have built the spl:\n" \ +*************** +*** 35,55 **** + modules_install: + @# Install the kernel modules + $(MAKE) -C @LINUX_OBJ@ SUBDIRS=`pwd` \ +! INSTALL_MOD_PATH=$(DESTDIR) \ + INSTALL_MOD_DIR=addon/zfs $@ + @# Remove extraneous build products when packaging +! if [ -n "$(DESTDIR)" ]; then \ +! find $(DESTDIR)/lib/modules/@LINUX_VERSION@ \ + -name 'modules.*' | xargs $(RM); \ + fi +! sysmap=$(DESTDIR)/boot/System.map-@LINUX_VERSION@; \ + if [ -f $$sysmap ]; then \ + depmod -ae -F $$sysmap @LINUX_VERSION@; \ + fi + + modules_uninstall: + @# Uninstall the kernel modules +! $(RM) -R $(DESTDIR)/lib/modules/@LINUX_VERSION@/addon/zfs + + distdir: + +--- 37,57 ---- + modules_install: + @# Install the kernel modules + $(MAKE) -C @LINUX_OBJ@ SUBDIRS=`pwd` \ +! INSTALL_MOD_PATH=@prefix@ \ + INSTALL_MOD_DIR=addon/zfs $@ + @# Remove extraneous build products when packaging +! if [ -n "@prefix@" ]; then \ +! find @prefix@/lib/modules/@LINUX_VERSION@ \ + -name 'modules.*' | xargs $(RM); \ + fi +! sysmap=@prefix@/boot/System.map-@LINUX_VERSION@; \ + if [ -f $$sysmap ]; then \ + depmod -ae -F $$sysmap @LINUX_VERSION@; \ + fi + + modules_uninstall: + @# Uninstall the kernel modules +! $(RM) -R @prefix@/lib/modules/@LINUX_VERSION@/addon/zfs + + distdir: + diff --git a/pkgs/os-specific/linux/zfs/mount_zfs_prefix.patch b/pkgs/os-specific/linux/zfs/mount_zfs_prefix.patch new file mode 100644 index 00000000000..94710c5c985 --- /dev/null +++ b/pkgs/os-specific/linux/zfs/mount_zfs_prefix.patch @@ -0,0 +1,24 @@ +*** zfs-0.6.0-rc4.old/cmd/mount_zfs/Makefile.in Thu May 5 15:12:25 2011 +--- zfs-0.6.0-rc4/cmd/mount_zfs/Makefile.in Fri Jun 3 16:42:41 2011 +*************** +*** 285,296 **** + prefix = @prefix@ + program_transform_name = @program_transform_name@ + psdir = @psdir@ +! +! # +! # Ignore the prefix for the mount helper. It must be installed in /sbin/ +! # because this path is hardcoded in the mount(8) for security reasons. +! # +! sbindir = /sbin + sharedstatedir = @sharedstatedir@ + srcdir = @srcdir@ + sysconfdir = @sysconfdir@ +--- 285,291 ---- + prefix = @prefix@ + program_transform_name = @program_transform_name@ + psdir = @psdir@ +! sbindir = @sbindir@ + sharedstatedir = @sharedstatedir@ + srcdir = @srcdir@ + sysconfdir = @sysconfdir@ diff --git a/pkgs/os-specific/linux/zfs/no_absolute_paths_to_coreutils.patch b/pkgs/os-specific/linux/zfs/no_absolute_paths_to_coreutils.patch new file mode 100644 index 00000000000..e223e34c3a4 --- /dev/null +++ b/pkgs/os-specific/linux/zfs/no_absolute_paths_to_coreutils.patch @@ -0,0 +1,25 @@ +*** git-export/module/Makefile.in.old Tue Mar 6 01:04:48 2012 +--- git-export/module/Makefile.in Tue Mar 6 01:04:59 2012 +*************** +*** 11,20 **** + @# installed devel headers, or they may be in the module + @# subdirectory when building against the spl source tree. + @if [ -f @SPL_OBJ@/@SPL_SYMBOLS@ ]; then \ +! /bin/cp -f @SPL_OBJ@/@SPL_SYMBOLS@ .; \ + chmod +w @SPL_SYMBOLS@ .; \ + elif [ -f @SPL_OBJ@/module/@SPL_SYMBOLS@ ]; then \ +! /bin/cp -f @SPL_OBJ@/module/@SPL_SYMBOLS@ .; \ + chmod +w @SPL_SYMBOLS@ .; \ + else \ + echo -e "\n" \ +--- 11,20 ---- + @# installed devel headers, or they may be in the module + @# subdirectory when building against the spl source tree. + @if [ -f @SPL_OBJ@/@SPL_SYMBOLS@ ]; then \ +! cp -f @SPL_OBJ@/@SPL_SYMBOLS@ .; \ + chmod +w @SPL_SYMBOLS@ .; \ + elif [ -f @SPL_OBJ@/module/@SPL_SYMBOLS@ ]; then \ +! cp -f @SPL_OBJ@/module/@SPL_SYMBOLS@ .; \ + chmod +w @SPL_SYMBOLS@ .; \ + else \ + echo -e "\n" \ diff --git a/pkgs/os-specific/linux/zfs/zfs-0.6.0.nix b/pkgs/os-specific/linux/zfs/zfs-0.6.0.nix new file mode 100644 index 00000000000..1cc923f39d1 --- /dev/null +++ b/pkgs/os-specific/linux/zfs/zfs-0.6.0.nix @@ -0,0 +1,23 @@ +{ stdenv, fetchgit, kernel, linuxHeaders, spl, perl, zlib, libuuid }: + +stdenv.mkDerivation { + name = "zfs-0.6.0-rc4"; + src = fetchgit { + url = git://github.com/behlendorf/zfs.git; + rev = "3613204cd7e3ab1ae658"; + sha256 = "217ca162b1b0178dd2e3acc543d3c0cce3a7be7e884a9118ffa0a84d3cbc73f5"; + }; + + patches = [ ./module_perm_prefix.patch ./mount_zfs_prefix.patch ./kerneldir_path.patch ]; + + buildInputs = [ kernel linuxHeaders spl perl zlib libuuid]; + + configureFlags = " --with-linux=${kernel}/lib/modules/${kernel.version}/build --with-linux-obj=${kernel}/lib/modules/${kernel.version}/build --with-spl=${spl}/libexec/spl-0.6.0/${kernel.version}"; + + meta = { + description = "Native ZFS for Linux"; + homepage = http://zfsonlinux.org/; + license = "CDDL"; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 0c0647c60f5..391ebadc6fa 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5964,6 +5964,8 @@ let perf = callPackage ../os-specific/linux/kernel/perf.nix { }; + spl = callPackage ../os-specific/linux/spl/default.nix { }; + sysprof = callPackage ../development/tools/profiling/sysprof { inherit (gnome) libglade; }; @@ -5983,6 +5985,8 @@ let }; virtualboxGuestAdditions = callPackage ../applications/virtualization/virtualbox/guest-additions { }; + + zfs = callPackage ../os-specific/linux/zfs/default.nix { }; }; # Build the kernel modules for the some of the kernels. From e23bda977de2cbf78240c2c54e07fb9a0830598a Mon Sep 17 00:00:00 2001 From: Jack Cummings Date: Fri, 5 Oct 2012 09:40:26 -0700 Subject: [PATCH 02/25] - removing old spl/zfs versions --- pkgs/os-specific/linux/spl/spl-0.6.0.nix | 24 ------------------------ pkgs/os-specific/linux/zfs/zfs-0.6.0.nix | 23 ----------------------- 2 files changed, 47 deletions(-) delete mode 100644 pkgs/os-specific/linux/spl/spl-0.6.0.nix delete mode 100644 pkgs/os-specific/linux/zfs/zfs-0.6.0.nix diff --git a/pkgs/os-specific/linux/spl/spl-0.6.0.nix b/pkgs/os-specific/linux/spl/spl-0.6.0.nix deleted file mode 100644 index c174daad26b..00000000000 --- a/pkgs/os-specific/linux/spl/spl-0.6.0.nix +++ /dev/null @@ -1,24 +0,0 @@ -{ stdenv, fetchgit, kernel, linuxHeaders, perl }: - -stdenv.mkDerivation { - name = "spl-0.6.0-rc4"; - src = fetchgit { - url = git://github.com/behlendorf/spl.git; - rev = "dde6b7b137f56894a457"; - sha256 = "c402517a647de0c22a69588219aa214f96d1cf9d2f8751b99c5a2795898c726b"; - }; - - patches = [ ./install_prefix.patch ./module_prefix.patch ]; - - buildInputs = [ perl kernel linuxHeaders ]; - - configureFlags = [ "--with-linux=${kernel}/lib/modules/${kernel.version}/build" - "--with-linux-obj=${kernel}/lib/modules/${kernel.version}/build" ]; - - meta = { - description = "Kernel module driver for solaris porting layer (needed by in-kernel zfs)"; - homepage = http://zfsonlinux.org/; - license = "CDDL"; - platforms = stdenv.lib.platforms.linux; - }; -} diff --git a/pkgs/os-specific/linux/zfs/zfs-0.6.0.nix b/pkgs/os-specific/linux/zfs/zfs-0.6.0.nix deleted file mode 100644 index 1cc923f39d1..00000000000 --- a/pkgs/os-specific/linux/zfs/zfs-0.6.0.nix +++ /dev/null @@ -1,23 +0,0 @@ -{ stdenv, fetchgit, kernel, linuxHeaders, spl, perl, zlib, libuuid }: - -stdenv.mkDerivation { - name = "zfs-0.6.0-rc4"; - src = fetchgit { - url = git://github.com/behlendorf/zfs.git; - rev = "3613204cd7e3ab1ae658"; - sha256 = "217ca162b1b0178dd2e3acc543d3c0cce3a7be7e884a9118ffa0a84d3cbc73f5"; - }; - - patches = [ ./module_perm_prefix.patch ./mount_zfs_prefix.patch ./kerneldir_path.patch ]; - - buildInputs = [ kernel linuxHeaders spl perl zlib libuuid]; - - configureFlags = " --with-linux=${kernel}/lib/modules/${kernel.version}/build --with-linux-obj=${kernel}/lib/modules/${kernel.version}/build --with-spl=${spl}/libexec/spl-0.6.0/${kernel.version}"; - - meta = { - description = "Native ZFS for Linux"; - homepage = http://zfsonlinux.org/; - license = "CDDL"; - platforms = stdenv.lib.platforms.linux; - }; -} From e117d037e39ac185327cf86282331185f19268c2 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 11 Oct 2012 15:38:54 -0400 Subject: [PATCH 03/25] iproute: Update to 3.6.0 --- pkgs/os-specific/linux/iproute/default.nix | 29 +++++++++++++--------- 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/pkgs/os-specific/linux/iproute/default.nix b/pkgs/os-specific/linux/iproute/default.nix index cc5339ba900..c97c7416de1 100644 --- a/pkgs/os-specific/linux/iproute/default.nix +++ b/pkgs/os-specific/linux/iproute/default.nix @@ -1,11 +1,11 @@ -{fetchurl, stdenv, flex, bison, db4, iptables}: +{ fetchurl, stdenv, flex, bison, db4, iptables, pkgconfig }: stdenv.mkDerivation rec { - name = "iproute2-2.6.35"; + name = "iproute2-3.6.0"; src = fetchurl { - url = "http://pkgs.fedoraproject.org/repo/pkgs/iproute/iproute2-2.6.35.tar.bz2/b0f281b3124bf04669e18f5fe16d4934/iproute2-2.6.35.tar.bz2"; - sha256 = "18why1wy0v859axgrlfxn80zmskss0410hh9rf5gn9cr29zg9cla"; + url = http://kernel.org/pub/linux/utils/net/iproute2/iproute2-3.6.0.tar.xz; + sha256 = "0d05av2s7p552yszgj6glz6d74jlmg392s7n74hicgqfl16m85rd"; }; patches = [ ./vpnc.patch ]; @@ -15,20 +15,25 @@ stdenv.mkDerivation rec { 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/${name}" - + " MANDIR=$(out)/share/man"; + + " CONFDIR=$(out)/etc DOCDIR=$(out)/share/doc/${name}" + + " MANDIR=$(out)/share/man"; - buildInputs = [db4 iptables]; - buildNativeInputs = [bison flex db4]; + buildInputs = [ db4 iptables ]; + buildNativeInputs = [ bison flex pkgconfig ]; + + enableParallelBuilding = true; + + # Get rid of useless TeX/SGML docs. + postInstall = "rm -rf $out/share/doc"; 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"; + 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; + maintainers = [ stdenv.lib.maintainers.eelco ]; }; } From b70d41d309f63ffee761b1131d13c03ddec024a9 Mon Sep 17 00:00:00 2001 From: Jack Cummings Date: Thu, 11 Oct 2012 13:50:28 -0700 Subject: [PATCH 04/25] - long descriptions --- pkgs/os-specific/linux/spl/default.nix | 16 ++++++++++++++++ pkgs/os-specific/linux/zfs/default.nix | 20 +++++++++++++++++++- 2 files changed, 35 insertions(+), 1 deletion(-) diff --git a/pkgs/os-specific/linux/spl/default.nix b/pkgs/os-specific/linux/spl/default.nix index 96565fffa0e..63a2a8454aa 100644 --- a/pkgs/os-specific/linux/spl/default.nix +++ b/pkgs/os-specific/linux/spl/default.nix @@ -31,6 +31,22 @@ stdenv.mkDerivation { meta = { description = "Kernel module driver for solaris porting layer (needed by in-kernel zfs)"; + + longDescription = '' + This kernel module is a porting layer for ZFS to work inside the linux kernel. + + LICENSE NOTE: the Linux kernel is licensed under the GNU General Public + License which is incompatible with ZFS which is licensed under the Sun CDDL. + While both the GPL and CDDL are open source licenses their terms are such that + it is impossible to simultaneously satisfy both licenses. This means that a + single derived work of the Linux kernel and ZFS cannot be legally distributed. + + The ZFS code can be modified to build as a CDDL licensed kernel module + which is not distributed as part of the Linux kernel. This makes a Native ZFS + on Linux implementation possible if you are willing to download and build it + yourself. + ''; + homepage = http://zfsonlinux.org/; platforms = stdenv.lib.platforms.linux; license = stdenv.lib.licenses.cddl; diff --git a/pkgs/os-specific/linux/zfs/default.nix b/pkgs/os-specific/linux/zfs/default.nix index 43e7b2fd95d..fa0a5b47f55 100644 --- a/pkgs/os-specific/linux/zfs/default.nix +++ b/pkgs/os-specific/linux/zfs/default.nix @@ -25,7 +25,25 @@ stdenv.mkDerivation { ''; meta = { - description = "Native ZFS for Linux"; + description = "ZFS Filesystem Linux Kernel module"; + longDescription = '' + + ZFS is a filesystem that combines a logical volume manager with a + Copy-On-Write filesystem with data integrity detection and repair, + snapshotting, cloning, block devices, deduplication, and more. + + LICENSE NOTE: the Linux kernel is licensed under the GNU General Public + License which is incompatible with ZFS which is licensed under the Sun CDDL. + While both the GPL and CDDL are open source licenses their terms are such that + it is impossible to simultaneously satisfy both licenses. This means that a + single derived work of the Linux kernel and ZFS cannot be legally distributed. + + The ZFS code can be modified to build as a CDDL licensed kernel module + which is not distributed as part of the Linux kernel. This makes a Native ZFS + on Linux implementation possible if you are willing to download and build it + yourself. + ''; + homepage = http://zfsonlinux.org/; platforms = stdenv.lib.platforms.linux; license = stdenv.lib.licenses.cddl; From 74196058eeb32f655ea0cdafe40f9b601bcf213d Mon Sep 17 00:00:00 2001 From: Joachim Schiele Date: Fri, 12 Oct 2012 00:45:42 +0000 Subject: [PATCH 05/25] added gsmartcontrol 0.8.7 to nixpkgs --- pkgs/tools/misc/gsmartcontrol/default.nix | 23 +++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 6 +++++- 2 files changed, 28 insertions(+), 1 deletion(-) create mode 100644 pkgs/tools/misc/gsmartcontrol/default.nix diff --git a/pkgs/tools/misc/gsmartcontrol/default.nix b/pkgs/tools/misc/gsmartcontrol/default.nix new file mode 100644 index 00000000000..60003b3b5d5 --- /dev/null +++ b/pkgs/tools/misc/gsmartcontrol/default.nix @@ -0,0 +1,23 @@ +{ fetchurl, stdenv, smartmontools, gtk, gtkmm, libglademm, pkgconfig, pcre }: + +stdenv.mkDerivation rec { + version="0.8.7"; + name = "gsmartcontrol"; + + src = fetchurl { + url = "http://artificialtime.com/gsmartcontrol/gsmartcontrol-${version}.tar.bz2"; + sha256 = "1ipykzqpfvlr84j38hr7q2cag4imrn1gql10slp8bfrs4h1si3vh"; + }; + + buildInputs = [ smartmontools gtk gtkmm libglademm pkgconfig pcre ]; + + #installTargets = "install datainstall"; + + meta = { + description = "GSmartControl is a graphical user interface for smartctl (from smartmontools package), which is a tool for querying and controlling SMART (Self-Monitoring, Analysis, and Reporting Technology) data on modern hard disk drives."; + homepage = http://gsmartcontrol.berlios.de; + license = "GPLv2+"; + maintainers = with stdenv.lib.maintainers; [qknight]; + platforms = with stdenv.lib.platforms; linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index fc5b67f6745..fa88d4b5bc3 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8145,8 +8145,12 @@ let inherit (gnome) gnomedocutils; }; - gtypist = callPackage ../games/gtypist { }; + gsmartcontrol = callPackage ../tools/misc/gsmartcontrol { + inherit (gnome) libglademm; + }; + gtypist = callPackage ../games/gtypist { }; + hexen = callPackage ../games/hexen { }; icbm3d = callPackage ../games/icbm3d { }; From 9e6e5391ad8014342f69a46e93c2dd1be5ba3510 Mon Sep 17 00:00:00 2001 From: James Cook Date: Thu, 11 Oct 2012 21:49:25 -0700 Subject: [PATCH 06/25] Update Firefox 16.0 to 16.0.1, and switch to the high-bandwidth releases.mozilla.org for the source. --- .../applications/networking/browsers/firefox/16.0.nix | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/pkgs/applications/networking/browsers/firefox/16.0.nix b/pkgs/applications/networking/browsers/firefox/16.0.nix index d9ad100f318..5b3c0723b45 100644 --- a/pkgs/applications/networking/browsers/firefox/16.0.nix +++ b/pkgs/applications/networking/browsers/firefox/16.0.nix @@ -15,14 +15,17 @@ assert stdenv.gcc ? libc && stdenv.gcc.libc != null; rec { - firefoxVersion = "16.0"; + firefoxVersion = "16.0.1"; - xulVersion = "16.0"; # this attribute is used by other packages + xulVersion = "16.0.1"; # this attribute is used by other packages src = fetchurl { - url = "ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${firefoxVersion}/source/firefox-${firefoxVersion}.source.tar.bz2"; - sha1 = "8f79e4ccf28c57afd341b9fc258931b5f9e62064"; + # Use this url for official releases. + url = "http://releases.mozilla.org/pub/mozilla.org/firefox/releases/${firefoxVersion}/source/firefox-${firefoxVersion}.source.tar.bz2"; + # Use this url only for versions not available at releases.mozilla.org, to take load off Mozilla's ftp server. + #url = "ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${firefoxVersion}/source/firefox-${firefoxVersion}.source.tar.bz2"; + sha256 = "1rrg2rmhczcwx5p5gilavqp4cvlig40ipw9avbgczahqjw89ivap"; }; commonConfigureFlags = From 85140f590afcd57eb3f6cb7940fcc019c234194b Mon Sep 17 00:00:00 2001 From: David Guibert Date: Fri, 12 Oct 2012 08:38:38 +0200 Subject: [PATCH 07/25] zfs: fix udev rules This patch fixes Nixos checking of udev rules: Checking that all programs call by absolute paths in udev rules exist ... FAIL /lib/udev/vdev_id is called in udev rules but not installed by udev --- pkgs/os-specific/linux/zfs/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/os-specific/linux/zfs/default.nix b/pkgs/os-specific/linux/zfs/default.nix index fa0a5b47f55..cbb8f30e1b3 100644 --- a/pkgs/os-specific/linux/zfs/default.nix +++ b/pkgs/os-specific/linux/zfs/default.nix @@ -16,6 +16,7 @@ stdenv.mkDerivation { preConfigure = '' substituteInPlace ./module/zfs/zfs_ctldir.c --replace "umount -t zfs" "${utillinux}/bin/umount -t zfs" substituteInPlace ./module/zfs/zfs_ctldir.c --replace "mount -t zfs" "${utillinux}/bin/mount -t zfs" + substituteInPlace ./udev/rules.d/* --replace "/lib/udev/vdev_id" "$out/lib/udev/vdev_id" ''; configureFlags = '' From b1169e550985976bd22d7d9ac999fb43a8d847e9 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Fri, 12 Oct 2012 15:22:48 +0200 Subject: [PATCH 08/25] ghc-*-binary: remove redundant assertion Any attempt to instantiate these expressions on an unsupported platform is going to 'throw' an error. The call to 'assert' doesn't add any value to that (and generates less readable error messages, too). Further details are available at . --- pkgs/development/compilers/ghc/6.10.1-binary.nix | 8 +------- pkgs/development/compilers/ghc/6.10.2-binary.nix | 8 +------- pkgs/development/compilers/ghc/6.12.1-binary.nix | 8 +------- pkgs/development/compilers/ghc/6.4.2-binary.nix | 8 +------- pkgs/development/compilers/ghc/7.0.4-binary.nix | 8 +------- pkgs/development/compilers/ghc/7.4.2-binary.nix | 8 +------- 6 files changed, 6 insertions(+), 42 deletions(-) diff --git a/pkgs/development/compilers/ghc/6.10.1-binary.nix b/pkgs/development/compilers/ghc/6.10.1-binary.nix index 5a15cc0dff7..353a4176ea4 100644 --- a/pkgs/development/compilers/ghc/6.10.1-binary.nix +++ b/pkgs/development/compilers/ghc/6.10.1-binary.nix @@ -1,11 +1,5 @@ {stdenv, fetchurl, perl, libedit, ncurses, gmp}: -let - supportedPlatforms = ["i686-darwin" "x86_64-linux" "i686-linux"]; -in - -assert stdenv.lib.elem stdenv.system supportedPlatforms; - stdenv.mkDerivation rec { version = "6.10.1"; @@ -104,5 +98,5 @@ stdenv.mkDerivation rec { [ $(./main) == "yes" ] ''; - meta.platforms = supportedPlatforms; + meta.platforms = ["i686-darwin" "x86_64-linux" "i686-linux"]; } diff --git a/pkgs/development/compilers/ghc/6.10.2-binary.nix b/pkgs/development/compilers/ghc/6.10.2-binary.nix index 616c9de7ede..02f1db354a1 100644 --- a/pkgs/development/compilers/ghc/6.10.2-binary.nix +++ b/pkgs/development/compilers/ghc/6.10.2-binary.nix @@ -1,11 +1,5 @@ {stdenv, fetchurl, perl, libedit, ncurses, gmp}: -let - supportedPlatforms = ["x86_64-linux" "i686-linux"]; -in - -assert stdenv.lib.elem stdenv.system supportedPlatforms; - stdenv.mkDerivation rec { version = "6.10.2"; @@ -103,5 +97,5 @@ stdenv.mkDerivation rec { [ $(./main) == "yes" ] ''; - meta.platforms = supportedPlatforms; + meta.platforms = ["x86_64-linux" "i686-linux"]; } diff --git a/pkgs/development/compilers/ghc/6.12.1-binary.nix b/pkgs/development/compilers/ghc/6.12.1-binary.nix index a84b75d705b..23486b5f4fa 100644 --- a/pkgs/development/compilers/ghc/6.12.1-binary.nix +++ b/pkgs/development/compilers/ghc/6.12.1-binary.nix @@ -1,11 +1,5 @@ {stdenv, fetchurl, perl, ncurses, gmp}: -let - supportedPlatforms = ["x86_64-linux" "i686-linux"]; -in - -assert stdenv.lib.elem stdenv.system supportedPlatforms; - stdenv.mkDerivation rec { version = "6.12.1"; @@ -105,5 +99,5 @@ stdenv.mkDerivation rec { [ $(./main) == "yes" ] ''; - meta.platforms = supportedPlatforms; + meta.platforms = ["x86_64-linux" "i686-linux"]; } diff --git a/pkgs/development/compilers/ghc/6.4.2-binary.nix b/pkgs/development/compilers/ghc/6.4.2-binary.nix index 2ed6f2be4fe..1a5bf059e9f 100644 --- a/pkgs/development/compilers/ghc/6.4.2-binary.nix +++ b/pkgs/development/compilers/ghc/6.4.2-binary.nix @@ -1,11 +1,5 @@ {stdenv, fetchurl, perl, readline, ncurses, gmp}: -let - supportedPlatforms = ["i686-darwin" "x86_64-linux" "i686-linux"]; -in - -assert stdenv.lib.elem stdenv.system supportedPlatforms; - stdenv.mkDerivation { name = if stdenv.system == "i686-darwin" then "ghc-6.6.1-binary" else "ghc-6.4.2-binary"; @@ -68,5 +62,5 @@ stdenv.mkDerivation { '' else ""; - meta.platforms = supportedPlatforms; + meta.platforms = ["i686-darwin" "x86_64-linux" "i686-linux"]; } diff --git a/pkgs/development/compilers/ghc/7.0.4-binary.nix b/pkgs/development/compilers/ghc/7.0.4-binary.nix index 0baf9718f85..0bfc81a17a4 100644 --- a/pkgs/development/compilers/ghc/7.0.4-binary.nix +++ b/pkgs/development/compilers/ghc/7.0.4-binary.nix @@ -1,11 +1,5 @@ {stdenv, fetchurl, perl, ncurses, gmp}: -let - supportedPlatforms = ["x86_64-linux" "i686-linux" "i686-darwin" "x86_64-darwin"]; -in - -assert stdenv.lib.elem stdenv.system supportedPlatforms; - stdenv.mkDerivation rec { version = "7.0.4"; @@ -93,5 +87,5 @@ stdenv.mkDerivation rec { [ $(./main) == "yes" ] ''; - meta.platforms = supportedPlatforms; + meta.platforms = ["x86_64-linux" "i686-linux" "i686-darwin" "x86_64-darwin"]; } diff --git a/pkgs/development/compilers/ghc/7.4.2-binary.nix b/pkgs/development/compilers/ghc/7.4.2-binary.nix index 85e10d7090c..e0a8fee4b66 100644 --- a/pkgs/development/compilers/ghc/7.4.2-binary.nix +++ b/pkgs/development/compilers/ghc/7.4.2-binary.nix @@ -1,11 +1,5 @@ {stdenv, fetchurl, perl, ncurses, gmp}: -let - supportedPlatforms = ["x86_64-linux" "i686-linux" "i686-darwin" "x86_64-darwin"]; -in - -assert stdenv.lib.elem stdenv.system supportedPlatforms; - stdenv.mkDerivation rec { version = "7.4.2"; @@ -93,5 +87,5 @@ stdenv.mkDerivation rec { [ $(./main) == "yes" ] ''; - meta.platforms = supportedPlatforms; + meta.platforms = ["x86_64-linux" "i686-linux" "i686-darwin" "x86_64-darwin"]; } From 84c18a97e475dd5b658653675660b9cb4c2b5f5b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Fri, 12 Oct 2012 15:40:04 +0200 Subject: [PATCH 09/25] testdisk: updating to 6.13 I fixed the licence field to GPLv2+ too --- pkgs/tools/misc/testdisk/default.nix | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pkgs/tools/misc/testdisk/default.nix b/pkgs/tools/misc/testdisk/default.nix index fd9f4578294..6ccfea50482 100644 --- a/pkgs/tools/misc/testdisk/default.nix +++ b/pkgs/tools/misc/testdisk/default.nix @@ -1,18 +1,18 @@ -{stdenv, fetchurl, ncurses, libjpeg, e2fsprogs, zlib, openssl}: +{stdenv, fetchurl, ncurses, libjpeg, e2fsprogs, zlib, openssl, libuuid}: stdenv.mkDerivation { - name = "testdisk-6.8"; + name = "testdisk-6.13"; src = fetchurl { - url = http://www.cgsecurity.org/testdisk-6.8.tar.bz2; - sha256 = "0cyqikcyi6zj671kkr8vydqskh2r7f3n1v3xks1vh1biaffqq2ir"; + url = http://www.cgsecurity.org/testdisk-6.13.tar.bz2; + sha256 = "087jrn41z3ymf1b6njl2bg99pr79v8l1f63f7rn5ni69vz6mq9s8"; }; - buildInputs = [ncurses libjpeg e2fsprogs zlib openssl]; + buildInputs = [ncurses libjpeg e2fsprogs zlib openssl libuuid]; meta = { homepage = http://www.cgsecurity.org/wiki/TestDisk; - license = "GPL"; + license = "GPLv2+"; longDescription = '' TestDisk is a program for data recovery, primarily designed to help recover lost partitions and/or make non-booting disks From cfebdffd585edcab65c4d0f3ca7447581b210023 Mon Sep 17 00:00:00 2001 From: James Cook Date: Fri, 12 Oct 2012 10:59:33 -0700 Subject: [PATCH 10/25] firefox 16: Use the published sha1, and pass the ftp url to fetchurl as a fallback. --- .../networking/browsers/firefox/16.0.nix | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/pkgs/applications/networking/browsers/firefox/16.0.nix b/pkgs/applications/networking/browsers/firefox/16.0.nix index 5b3c0723b45..48ecebd8e19 100644 --- a/pkgs/applications/networking/browsers/firefox/16.0.nix +++ b/pkgs/applications/networking/browsers/firefox/16.0.nix @@ -21,11 +21,13 @@ rec { src = fetchurl { - # Use this url for official releases. - url = "http://releases.mozilla.org/pub/mozilla.org/firefox/releases/${firefoxVersion}/source/firefox-${firefoxVersion}.source.tar.bz2"; - # Use this url only for versions not available at releases.mozilla.org, to take load off Mozilla's ftp server. - #url = "ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${firefoxVersion}/source/firefox-${firefoxVersion}.source.tar.bz2"; - sha256 = "1rrg2rmhczcwx5p5gilavqp4cvlig40ipw9avbgczahqjw89ivap"; + urls = [ + # It is better to use this url for official releases, to take load off Mozilla's ftp server. + "http://releases.mozilla.org/pub/mozilla.org/firefox/releases/${firefoxVersion}/source/firefox-${firefoxVersion}.source.tar.bz2" + # Fall back to this url for versions not available at releases.mozilla.org. + "ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${firefoxVersion}/source/firefox-${firefoxVersion}.source.tar.bz2" + ]; + sha1 = "ad5723fcf4ec6c6734e2022cecad174290fa425e"; }; commonConfigureFlags = From 06eff3c86003461f0a75c284421385e93b6dce8f Mon Sep 17 00:00:00 2001 From: Rok Garbas Date: Fri, 12 Oct 2012 20:07:20 +0200 Subject: [PATCH 11/25] weechat: update to 0.3.9 --- pkgs/applications/networking/irc/weechat/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/irc/weechat/default.nix b/pkgs/applications/networking/irc/weechat/default.nix index a891c145b76..eb1a9c4474f 100644 --- a/pkgs/applications/networking/irc/weechat/default.nix +++ b/pkgs/applications/networking/irc/weechat/default.nix @@ -2,12 +2,12 @@ , zlib, curl , pkgconfig, libgcrypt, ruby, lua5, tcl, guile }: stdenv.mkDerivation rec { - version = "0.3.8"; + version = "0.3.9"; name = "weechat-${version}"; src = fetchurl { url = "http://weechat.org/files/src/${name}.tar.gz"; - sha256 = "4293eb9d29f11b8ee8c301049d57e535acbea677bc1dc41ab12fe1bb8af0f10e"; + sha256 = "8666c788cbb212036197365df3ba3cf964a23e4f644d76ea51d66dbe3be593bb"; }; buildInputs = From 1f857877ad7fae8250568f3663e862be71cd12f4 Mon Sep 17 00:00:00 2001 From: aszlig Date: Sat, 13 Oct 2012 09:54:37 +0200 Subject: [PATCH 12/25] python-publicsuffix: New package, version 1.0.2. This is for determining the public suffix of a particular domain name from http://publicsuffix.org/. Signed-off-by: aszlig --- pkgs/top-level/python-packages.nix | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 387e8964705..9ef6887d2be 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1718,6 +1718,23 @@ let pythonPackages = python.modules // rec { }; + publicsuffix = buildPythonPackage rec { + name = "publicsuffix-${version}"; + version = "1.0.2"; + + src = fetchurl { + url = "http://pypi.python.org/packages/source/p/publicsuffix/${name}.tar.gz"; + md5 = "f86babf56f6e58b564d3853adebcf37a"; + }; + + meta = { + description = "Allows to get the public suffix of a domain name"; + homepage = "http://pypi.python.org/pypi/publicsuffix/"; + license = pkgs.lib.licenses.mit; + }; + }; + + pyasn1 = buildPythonPackage ({ name = "pyasn1-0.0.11a"; From 900ffd2d000d55ab5b1ecde8a429e791bbad2684 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Sat, 13 Oct 2012 12:19:58 +0200 Subject: [PATCH 13/25] release: making hydra build firefox16. --- pkgs/top-level/release.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/top-level/release.nix b/pkgs/top-level/release.nix index 0f8ea5574e3..727aff16f01 100644 --- a/pkgs/top-level/release.nix +++ b/pkgs/top-level/release.nix @@ -360,6 +360,7 @@ with (import ./release-lib.nix); firefox36Pkgs.firefox = linux; firefox12Pkgs.firefox = linux; firefox15Pkgs.firefox = linux; + firefox16Pkgs.firefox = linux; gnome = { gnome_panel = linux; From 6b8e468e2dbf3e22f1ed2c305360c32f9bbc7372 Mon Sep 17 00:00:00 2001 From: Mathijs Kwik Date: Fri, 12 Oct 2012 12:55:25 +0200 Subject: [PATCH 14/25] iptables: upgrade to 1.4.16.2 --- pkgs/os-specific/linux/iptables/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/iptables/default.nix b/pkgs/os-specific/linux/iptables/default.nix index a1dace598fe..78d8ee52fb1 100644 --- a/pkgs/os-specific/linux/iptables/default.nix +++ b/pkgs/os-specific/linux/iptables/default.nix @@ -1,11 +1,11 @@ {stdenv, fetchurl}: stdenv.mkDerivation rec { - name = "iptables-1.4.10"; + name = "iptables-1.4.16.2"; src = fetchurl { url = "http://www.netfilter.org/projects/iptables/files/${name}.tar.bz2"; - md5 = "f382fe693f0b59d87bd47bea65eca198"; + md5 = "57220bb26866a713073e5614f88071fc"; }; # Install header files required by miniupnpd. From 8ea81050717e22847b8045a8017f654c11250fd1 Mon Sep 17 00:00:00 2001 From: Mathijs Kwik Date: Fri, 12 Oct 2012 12:56:15 +0200 Subject: [PATCH 15/25] linux kernels: mark kernels with rpfilter support --- pkgs/os-specific/linux/kernel/linux-3.3.nix | 1 + pkgs/os-specific/linux/kernel/linux-3.4.nix | 1 + pkgs/os-specific/linux/kernel/linux-3.5.nix | 1 + pkgs/os-specific/linux/kernel/linux-3.6.nix | 1 + 4 files changed, 4 insertions(+) diff --git a/pkgs/os-specific/linux/kernel/linux-3.3.nix b/pkgs/os-specific/linux/kernel/linux-3.3.nix index 395b93e9f3f..0db9a5c375d 100644 --- a/pkgs/os-specific/linux/kernel/linux-3.3.nix +++ b/pkgs/os-specific/linux/kernel/linux-3.3.nix @@ -253,6 +253,7 @@ import ./generic.nix ( features.iwlwifi = true; features.efiBootStub = true; + features.netfilterRPFilter = true; } // removeAttrs args ["extraConfig"] diff --git a/pkgs/os-specific/linux/kernel/linux-3.4.nix b/pkgs/os-specific/linux/kernel/linux-3.4.nix index e79bb111a3d..8ab68997e7f 100644 --- a/pkgs/os-specific/linux/kernel/linux-3.4.nix +++ b/pkgs/os-specific/linux/kernel/linux-3.4.nix @@ -257,6 +257,7 @@ import ./generic.nix ( features.iwlwifi = true; features.efiBootStub = true; features.needsCifsUtils = true; + features.netfilterRPFilter = true; } // removeAttrs args ["extraConfig"] diff --git a/pkgs/os-specific/linux/kernel/linux-3.5.nix b/pkgs/os-specific/linux/kernel/linux-3.5.nix index a5d375a68a7..42456a8bdd9 100644 --- a/pkgs/os-specific/linux/kernel/linux-3.5.nix +++ b/pkgs/os-specific/linux/kernel/linux-3.5.nix @@ -258,6 +258,7 @@ import ./generic.nix ( features.iwlwifi = true; features.efiBootStub = true; features.needsCifsUtils = true; + features.netfilterRPFilter = true; } // removeAttrs args ["extraConfig"] diff --git a/pkgs/os-specific/linux/kernel/linux-3.6.nix b/pkgs/os-specific/linux/kernel/linux-3.6.nix index 8afcffba87f..66ca30a839c 100644 --- a/pkgs/os-specific/linux/kernel/linux-3.6.nix +++ b/pkgs/os-specific/linux/kernel/linux-3.6.nix @@ -262,6 +262,7 @@ import ./generic.nix ( features.iwlwifi = true; features.efiBootStub = true; features.needsCifsUtils = true; + features.netfilterRPFilter = true; } // removeAttrs args ["extraConfig"] From 5711282fd8b9f536b261018529e9d7d17ff63329 Mon Sep 17 00:00:00 2001 From: Mathijs Kwik Date: Fri, 12 Oct 2012 12:56:46 +0200 Subject: [PATCH 16/25] linux kernels: mark kernels that can disable the conntrack-helper --- pkgs/os-specific/linux/kernel/linux-3.5.nix | 1 + pkgs/os-specific/linux/kernel/linux-3.6.nix | 1 + 2 files changed, 2 insertions(+) diff --git a/pkgs/os-specific/linux/kernel/linux-3.5.nix b/pkgs/os-specific/linux/kernel/linux-3.5.nix index 42456a8bdd9..afcf73e0e35 100644 --- a/pkgs/os-specific/linux/kernel/linux-3.5.nix +++ b/pkgs/os-specific/linux/kernel/linux-3.5.nix @@ -258,6 +258,7 @@ import ./generic.nix ( features.iwlwifi = true; features.efiBootStub = true; features.needsCifsUtils = true; + features.canDisableNetfilterConntrackHelpers = true; features.netfilterRPFilter = true; } diff --git a/pkgs/os-specific/linux/kernel/linux-3.6.nix b/pkgs/os-specific/linux/kernel/linux-3.6.nix index 66ca30a839c..463833df358 100644 --- a/pkgs/os-specific/linux/kernel/linux-3.6.nix +++ b/pkgs/os-specific/linux/kernel/linux-3.6.nix @@ -262,6 +262,7 @@ import ./generic.nix ( features.iwlwifi = true; features.efiBootStub = true; features.needsCifsUtils = true; + features.canDisableNetfilterConntrackHelpers = true; features.netfilterRPFilter = true; } From 12ad270d2a0df32a8622c4c7f5e899da96cf6462 Mon Sep 17 00:00:00 2001 From: Mathijs Kwik Date: Sat, 13 Oct 2012 09:41:28 +0200 Subject: [PATCH 17/25] linux-3.6: upgrade to 3.6.2 --- pkgs/os-specific/linux/kernel/linux-3.6.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/linux-3.6.nix b/pkgs/os-specific/linux/kernel/linux-3.6.nix index 463833df358..fdd01bc97e7 100644 --- a/pkgs/os-specific/linux/kernel/linux-3.6.nix +++ b/pkgs/os-specific/linux/kernel/linux-3.6.nix @@ -244,7 +244,7 @@ in import ./generic.nix ( rec { - version = "3.6.1"; + version = "3.6.2"; testing = false; preConfigure = '' @@ -253,7 +253,7 @@ import ./generic.nix ( src = fetchurl { url = "mirror://kernel/linux/kernel/v3.x/${if testing then "testing/" else ""}linux-${version}.tar.xz"; - sha256 = "0jpjhnp0pnly2nvfhb5z2wqaw66yzr9pd477rsdmx1wi9gsp07mz"; + sha256 = "1clxrmxq09bjcxcxi2z2fmbfij0zah5jxy29b0b59hgpg24cfyb0"; }; config = configWithPlatform stdenv.platform; From 86693f1c5c73da29d9afdafe2b145430a71a5f13 Mon Sep 17 00:00:00 2001 From: Mathijs Kwik Date: Sat, 13 Oct 2012 09:41:41 +0200 Subject: [PATCH 18/25] linux-3.5: upgrade to 3.5.7 --- pkgs/os-specific/linux/kernel/linux-3.5.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/linux-3.5.nix b/pkgs/os-specific/linux/kernel/linux-3.5.nix index afcf73e0e35..78f60c9906a 100644 --- a/pkgs/os-specific/linux/kernel/linux-3.5.nix +++ b/pkgs/os-specific/linux/kernel/linux-3.5.nix @@ -240,7 +240,7 @@ in import ./generic.nix ( rec { - version = "3.5.6"; + version = "3.5.7"; testing = false; preConfigure = '' @@ -249,7 +249,7 @@ import ./generic.nix ( src = fetchurl { url = "mirror://kernel/linux/kernel/v3.x/${if testing then "testing/" else ""}linux-${version}.tar.xz"; - sha256 = "0z6hklmpm33d1cjwzsny5s03kajp9zmdgxhfrd0aky98x36202gf"; + sha256 = "0k3r0qrlfgn7yk35wf4c49yvyy79kzn42qcrf5kms5iir838kini"; }; config = configWithPlatform stdenv.platform; From 444b136eeeeb04f883273b45b19b37e0336b76b0 Mon Sep 17 00:00:00 2001 From: Mathijs Kwik Date: Sat, 13 Oct 2012 09:41:53 +0200 Subject: [PATCH 19/25] linux-3.4: upgrade to 3.4.14 --- pkgs/os-specific/linux/kernel/linux-3.4.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/linux-3.4.nix b/pkgs/os-specific/linux/kernel/linux-3.4.nix index 8ab68997e7f..fe80e38eade 100644 --- a/pkgs/os-specific/linux/kernel/linux-3.4.nix +++ b/pkgs/os-specific/linux/kernel/linux-3.4.nix @@ -239,7 +239,7 @@ in import ./generic.nix ( rec { - version = "3.4.13"; + version = "3.4.14"; testing = false; preConfigure = '' @@ -248,7 +248,7 @@ import ./generic.nix ( src = fetchurl { url = "mirror://kernel/linux/kernel/v3.x/${if testing then "testing/" else ""}linux-${version}.tar.xz"; - sha256 = "16wpnqnjxcrm2aszjdkrn4vlcdm9j35ixnq7myvc432w7pkdqk11"; + sha256 = "0kr7yjhw5di2srryd1aypyi8mlxjh9gvmsz1684mj1fdpxi5adq4"; }; config = configWithPlatform stdenv.platform; From fb62b5fb9185202c4200dae0f43b41586a8164e2 Mon Sep 17 00:00:00 2001 From: Mathijs Kwik Date: Sat, 13 Oct 2012 09:42:09 +0200 Subject: [PATCH 20/25] linux-3.0: upgrade to 3.0.46 --- pkgs/os-specific/linux/kernel/linux-3.0.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/linux-3.0.nix b/pkgs/os-specific/linux/kernel/linux-3.0.nix index cc6fd89e46e..b5d54befc09 100644 --- a/pkgs/os-specific/linux/kernel/linux-3.0.nix +++ b/pkgs/os-specific/linux/kernel/linux-3.0.nix @@ -230,7 +230,7 @@ in import ./generic.nix ( rec { - version = "3.0.45"; + version = "3.0.46"; preConfigure = '' substituteInPlace scripts/depmod.sh --replace '-b "$INSTALL_MOD_PATH"' "" @@ -238,7 +238,7 @@ import ./generic.nix ( src = fetchurl { url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz"; - sha256 = "0mgv6iqnfam16v2s8hdxpf2imx49sjhndjc80646lk9053l5rh0d"; + sha256 = "1m5zxbnclv1b72pn7zwrmik45pxzsapcj94m39aqq5akq8i149ig"; }; config = configWithPlatform stdenv.platform; From d5e4b92f22e2be41e63e02c07d26980e979b24e2 Mon Sep 17 00:00:00 2001 From: Mathijs Kwik Date: Sat, 13 Oct 2012 18:53:17 +0200 Subject: [PATCH 21/25] add libnfnetlink-1.0.1 --- .../libraries/libnfnetlink/default.nix | 27 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 29 insertions(+) create mode 100644 pkgs/development/libraries/libnfnetlink/default.nix diff --git a/pkgs/development/libraries/libnfnetlink/default.nix b/pkgs/development/libraries/libnfnetlink/default.nix new file mode 100644 index 00000000000..07a182dff10 --- /dev/null +++ b/pkgs/development/libraries/libnfnetlink/default.nix @@ -0,0 +1,27 @@ +{ stdenv, fetchurl }: + +stdenv.mkDerivation rec { + name = "libnfnetlink-1.0.1"; + + src = fetchurl { + url = "http://www.netfilter.org/projects/libnfnetlink/files/${name}.tar.bz2"; + md5 = "98927583d2016a9fb1936fed992e2c5e"; + }; + + meta = { + description = "low-level library for netfilter related kernel/userspace communication."; + longDescription = '' + libnfnetlink is the low-level library for netfilter related kernel/userspace communication. + It provides a generic messaging infrastructure for in-kernel netfilter subsystems + (such as nfnetlink_log, nfnetlink_queue, nfnetlink_conntrack) and their respective users + and/or management tools in userspace. + + This library is not meant as a public API for application developers. + It is only used by other netfilter.org projects, like the aforementioned ones. + ''; + homepage = http://www.netfilter.org/projects/libnfnetlink/index.html; + license = "GPLv2"; + + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index fa88d4b5bc3..fc351f94e94 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4275,6 +4275,8 @@ let libmusicbrainz = libmusicbrainz3; + libnfnetlink = callPackage ../development/libraries/libnfnetlink { }; + libnih = callPackage ../development/libraries/libnih { }; libnova = callPackage ../development/libraries/libnova { }; From e9a1c82bac70a24c1b7332b44d2b38d8bae91a64 Mon Sep 17 00:00:00 2001 From: Mathijs Kwik Date: Sat, 13 Oct 2012 19:27:18 +0200 Subject: [PATCH 22/25] add libmnl-1.0.3 --- pkgs/development/libraries/libmnl/default.nix | 25 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 27 insertions(+) create mode 100644 pkgs/development/libraries/libmnl/default.nix diff --git a/pkgs/development/libraries/libmnl/default.nix b/pkgs/development/libraries/libmnl/default.nix new file mode 100644 index 00000000000..fb6eacc366b --- /dev/null +++ b/pkgs/development/libraries/libmnl/default.nix @@ -0,0 +1,25 @@ +{ stdenv, fetchurl }: + +stdenv.mkDerivation rec { + name = "libmnl-1.0.3"; + + src = fetchurl { + url = "http://netfilter.org/projects/libmnl/files/${name}.tar.bz2"; + sha1 = "c27e25f67c6422ebf893fc3a844af8085a1c5b63"; + }; + + meta = { + description = "minimalistic user-space library oriented to Netlink developers"; + longDescription = '' + libmnl is a minimalistic user-space library oriented to Netlink developers. + There are a lot of common tasks in parsing, validating, constructing of both the Netlink + header and TLVs that are repetitive and easy to get wrong. + This library aims to provide simple helpers that allows you to re-use code and to avoid + re-inventing the wheel. + ''; + homepage = http://netfilter.org/projects/libmnl/index.html; + license = "GPLv2+"; + + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index fc351f94e94..d4d781a7f95 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4257,6 +4257,8 @@ let libmng = callPackage ../development/libraries/libmng { }; + libmnl = callPackage ../development/libraries/libmnl { }; + libmodplug = callPackage ../development/libraries/libmodplug {}; libmpcdec = callPackage ../development/libraries/libmpcdec { }; From c39805d81cd73848d6508d5abb5739b03bffc122 Mon Sep 17 00:00:00 2001 From: Mathijs Kwik Date: Sat, 13 Oct 2012 19:18:16 +0200 Subject: [PATCH 23/25] add libnetfilter_conntrack-1.0.2 --- .../libnetfilter_conntrack/default.nix | 26 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 28 insertions(+) create mode 100644 pkgs/development/libraries/libnetfilter_conntrack/default.nix diff --git a/pkgs/development/libraries/libnetfilter_conntrack/default.nix b/pkgs/development/libraries/libnetfilter_conntrack/default.nix new file mode 100644 index 00000000000..99624911077 --- /dev/null +++ b/pkgs/development/libraries/libnetfilter_conntrack/default.nix @@ -0,0 +1,26 @@ +{ stdenv, fetchurl, pkgconfig, libnfnetlink, libmnl }: + +stdenv.mkDerivation rec { + name = "libnetfilter_conntrack-1.0.2"; + + src = fetchurl { + url = "http://netfilter.org/projects/libnetfilter_conntrack/files/${name}.tar.bz2"; + md5 = "447114b5d61bb9a9617ead3217c3d3ff"; + }; + + buildInputs = [ pkgconfig libnfnetlink libmnl ]; + + meta = { + description = "userspace library providing an API to the in-kernel connection tracking state table."; + longDescription = '' + libnetfilter_conntrack is a userspace library providing a programming interface (API) to the + in-kernel connection tracking state table. The library libnetfilter_conntrack has been + previously known as libnfnetlink_conntrack and libctnetlink. This library is currently used + by conntrack-tools among many other applications + ''; + homepage = http://netfilter.org/projects/libnetfilter_conntrack/; + license = "GPLv2+"; + + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d4d781a7f95..8bbe6bc588d 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4277,6 +4277,8 @@ let libmusicbrainz = libmusicbrainz3; + libnetfilter_conntrack = callPackage ../development/libraries/libnetfilter_conntrack { }; + libnfnetlink = callPackage ../development/libraries/libnfnetlink { }; libnih = callPackage ../development/libraries/libnih { }; From e9f0cae00f48a253d1975752b6811ee8ba97f226 Mon Sep 17 00:00:00 2001 From: Mathijs Kwik Date: Sat, 13 Oct 2012 18:34:31 +0200 Subject: [PATCH 24/25] miniupnpd: upgrade to 1.7.20121005 --- pkgs/tools/networking/miniupnpd/default.nix | 23 +++++++++++---------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/pkgs/tools/networking/miniupnpd/default.nix b/pkgs/tools/networking/miniupnpd/default.nix index 6db47f8e079..b5002d22990 100644 --- a/pkgs/tools/networking/miniupnpd/default.nix +++ b/pkgs/tools/networking/miniupnpd/default.nix @@ -1,33 +1,34 @@ -{ stdenv, fetchurl, iptables }: +{ stdenv, fetchurl, iptables, libnfnetlink, libnetfilter_conntrack }: assert stdenv.isLinux; stdenv.mkDerivation rec { - name = "miniupnpd-1.4"; + name = "miniupnpd-1.7.20121005"; src = fetchurl { url = "http://miniupnp.free.fr/files/download.php?file=${name}.tar.gz"; - sha256 = "06q5agkzv2snjxcsszpm27h8bqv41jijahs8jqnarxdrik97rfl5"; + sha256 = "03kaxj808hgj1zf2528pzilgywgh70mh0qivjb5nm3spziiq32sv"; }; - buildInputs = [ iptables ]; + buildInputs = [ iptables libnfnetlink libnetfilter_conntrack ]; + + patchPhase = '' + sed -i -e 's/upnputils\.o -lnfnetlink/upnputils.o/' Makefile.linux + ''; NIX_CFLAGS_COMPILE = "-DIPTABLES_143"; - NIX_CFLAGS_LINK = "-liptc"; - + NIX_CFLAGS_LINK = "-liptc -lnfnetlink"; + makefile = "Makefile.linux"; makeFlags = "LIBS="; - postBuild = "cat config.h"; - installFlags = "PREFIX=$(out) INSTALLPREFIX=$(out)"; - postInstall = + preInstall = '' - mkdir -p $out/share/man/man1 - cp miniupnpd.1 $out/share/man/man1/ + mkdir -p $out/share/man/man8 ''; meta = { From 29980e0d547ad814fa252ffec7fd8ce8ab79596d Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Sun, 14 Oct 2012 22:28:49 +0400 Subject: [PATCH 25/25] Add threads support to CLisp --- pkgs/development/interpreters/clisp/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/interpreters/clisp/default.nix b/pkgs/development/interpreters/clisp/default.nix index c985da9a5a2..23b4e4e9e54 100644 --- a/pkgs/development/interpreters/clisp/default.nix +++ b/pkgs/development/interpreters/clisp/default.nix @@ -34,6 +34,7 @@ stdenv.mkDerivation rec { --with-module=clx/new-clx --with-module=i18n --with-module=bindings/glibc --with-module=pcre --with-module=rawsock --with-module=readline --with-module=syscalls --with-module=wildcard --with-module=zlib + --with-threads=POSIX_THREADS ''; preBuild = ''