diff --git a/pkgs/tools/misc/ipxe/default.nix b/pkgs/tools/misc/ipxe/default.nix new file mode 100644 index 000000000000..1f1302698c19 --- /dev/null +++ b/pkgs/tools/misc/ipxe/default.nix @@ -0,0 +1,39 @@ +{ stdenv, fetchgit, perl, cdrkit, syslinux }: + +let + date = "20141124"; + rev = "5cbdc41778622c07429e00f5aee383b575532bf0"; +in + +stdenv.mkDerivation { + name = "ipxe-${date}-${builtins.substring 0 7 rev}"; + + buildInputs = [ perl cdrkit syslinux ]; + + src = fetchgit { + url = git://git.ipxe.org/ipxe.git; + sha256 = "22f427df9141a2bbb319b51bdca4f2b7d3a4cbb5d1b2dcb35a43460eac59d305"; + inherit rev; + }; + + sourceRoot = "git-export/src"; + + makeFlags = + [ "ECHO_E_BIN_ECHO=echo" "ECHO_E_BIN_ECHO_E=echo" # No /bin/echo here. + "ISOLINUX_BIN_LIST=${syslinux}/share/syslinux/isolinux.bin" + ]; + + installPhase = + '' + mkdir $out + cp bin/ipxe.dsk bin/ipxe.usb bin/ipxe.iso bin/ipxe.lkrn $out + ''; + + meta = with stdenv.lib; + { description = "Network boot firmware"; + homepage = http://ipxe.org/; + license = licenses.gpl2; + maintainers = with maintainers; [ emery ]; + platforms = platforms.all; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 68712a254ed4..c5b9e2d523aa 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1508,6 +1508,8 @@ let ipmiutil = callPackage ../tools/system/ipmiutil {}; + ipxe = callPackage ../tools/misc/ipxe { }; + ised = callPackage ../tools/misc/ised {}; isl = callPackage ../development/libraries/isl { };