diff --git a/pkgs/applications/networking/browsers/firefox/16.0.nix b/pkgs/applications/networking/browsers/firefox/16.0.nix index d9ad100f318..48ecebd8e19 100644 --- a/pkgs/applications/networking/browsers/firefox/16.0.nix +++ b/pkgs/applications/networking/browsers/firefox/16.0.nix @@ -15,14 +15,19 @@ 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"; + 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 = 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 = 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"]; } 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 = '' 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/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/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/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/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 ]; }; } 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. 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; 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..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; @@ -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..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; @@ -258,6 +258,8 @@ import ./generic.nix ( features.iwlwifi = true; features.efiBootStub = true; features.needsCifsUtils = true; + features.canDisableNetfilterConntrackHelpers = 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..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; @@ -262,6 +262,8 @@ import ./generic.nix ( features.iwlwifi = true; features.efiBootStub = true; features.needsCifsUtils = true; + features.canDisableNetfilterConntrackHelpers = true; + features.netfilterRPFilter = true; } // removeAttrs args ["extraConfig"] diff --git a/pkgs/os-specific/linux/spl/default.nix b/pkgs/os-specific/linux/spl/default.nix new file mode 100644 index 00000000000..63a2a8454aa --- /dev/null +++ b/pkgs/os-specific/linux/spl/default.nix @@ -0,0 +1,55 @@ +{ 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)"; + + 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; + 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/zfs/default.nix b/pkgs/os-specific/linux/zfs/default.nix new file mode 100644 index 00000000000..cbb8f30e1b3 --- /dev/null +++ b/pkgs/os-specific/linux/zfs/default.nix @@ -0,0 +1,53 @@ +{ 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" + substituteInPlace ./udev/rules.d/* --replace "/lib/udev/vdev_id" "$out/lib/udev/vdev_id" + ''; + + 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 = "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; + 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/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/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 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 = { diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index caedbfdb783..8bbe6bc588d 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 { }; @@ -4275,6 +4277,10 @@ let libmusicbrainz = libmusicbrainz3; + libnetfilter_conntrack = callPackage ../development/libraries/libnetfilter_conntrack { }; + + libnfnetlink = callPackage ../development/libraries/libnfnetlink { }; + libnih = callPackage ../development/libraries/libnih { }; libnova = callPackage ../development/libraries/libnova { }; @@ -5978,6 +5984,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; }; @@ -5997,6 +6005,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. @@ -8141,8 +8151,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 { }; 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"; 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;