diff --git a/pkgs/development/web/iojs/default.nix b/pkgs/development/web/iojs/default.nix new file mode 100644 index 00000000000..bb596b3060f --- /dev/null +++ b/pkgs/development/web/iojs/default.nix @@ -0,0 +1,31 @@ +{ stdenv, fetchurl, python, utillinux, nightly ? false }: + +let + version = if nightly then "1.1.1-nightly201502072c3121c606" else "1.1.0"; + inherit (stdenv.lib) optional maintainers licenses platforms; +in stdenv.mkDerivation { + name = "iojs-${version}"; + + src = fetchurl { + url = if nightly + then "https://iojs.org/download/nightly/v${version}/iojs-v${version}.tar.gz" + else "https://iojs.org/dist/v${version}/iojs-v${version}.tar.gz"; + sha256 = if nightly + then "1jjh5f8kpcgdjjib9q1f2hqvrs6p4m4fyfbfy6dsdbzl2hglajvw" + else "0yvz3rw7d73snc1g447l4amqbbyydbyzr9ynykmyld7l3gdsif7h"; + }; + + prePatch = '' + sed -e 's|^#!/usr/bin/env python$|#!${python}/bin/python|g' -i configure + ''; + + buildInputs = [ python ] ++ (optional stdenv.isLinux utillinux); + setupHook = ../nodejs/setup-hook.sh; + + meta = { + description = "A friendly fork of Node.js with an open governance model"; + homepage = https://iojs.org/; + license = licenses.mit; + platforms = platforms.linux; + }; +} diff --git a/pkgs/development/web/nodejs/build-node-package.nix b/pkgs/development/web/nodejs/build-node-package.nix index 1965521ba81..4b9e057243c 100644 --- a/pkgs/development/web/nodejs/build-node-package.nix +++ b/pkgs/development/web/nodejs/build-node-package.nix @@ -38,7 +38,7 @@ let sources = runCommand "node-sources" {} '' tar --no-same-owner --no-same-permissions -xf ${nodejs.src} - mv *node* $out + mv $(find . -type d -mindepth 1 -maxdepth 1) $out ''; # Convert deps to attribute set diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 766d2a3a3cc..40fc5a10299 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1729,6 +1729,13 @@ let callPackage ./node-packages.nix { self = nodePackages; } ); + iojs = callPackage ../development/web/iojs { }; + iojs-nightly = callPackage ../development/web/iojs { nightly = true; }; + + iojsPackages = recurseIntoAttrs ( + callPackage ./node-packages.nix { self = iojsPackages; nodejs = iojs; } + ); + ldapvi = callPackage ../tools/misc/ldapvi { }; ldns = callPackage ../development/libraries/ldns { };