diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..cbdb811
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,146 @@
+#
+#    Copyright (c) 2010-2011 Nest, Inc.
+#    All rights reserved.
+#
+#    This document is the property of Nest. It is considered
+#    confidential and proprietary information.
+#
+#    This document may not be reproduced or transmitted in any form,
+#    in whole or in part, without the express written permission of
+#    Nest.
+#
+#    Description:
+#      This file is the make file for util-linux, a variety of low-
+#      level system utilities for Linux.
+#
+
+
+include pre.mak
+
+PackageName		:= util-linux-ng
+
+PackageExtension	:= tar.bz2
+PackageSeparator	:= -
+
+PackageArchive		:= $(PackageName).$(PackageExtension)
+PackageSourceDir	:= $(PackageName)$(PackageSeparator)$(PackageVersion)
+
+PackageBuildMakefile	= $(call GenerateBuildPaths,Makefile)
+
+CleanPaths		+= $(PackageLicenseFile)
+
+LinuxDir		:= sw/tps/linux
+LinuxIncDir		:= $(call GenerateResultPaths,$(LinuxDir),include)
+
+NCursesDir		:= sw/tps/ncurses
+NCursesIncDir		:= $(call GenerateResultPaths,$(NCursesDir),usr/include)
+NCursesLibDir		:= $(call GenerateResultPaths,$(NCursesDir),usr/lib)
+
+SOURCEDIRS                      = $(PackageSourceDir)
+$(PackageSourceDir)_RULE_TARGET = $(BuildDirectory)/configure
+
+all: $(PackageDefaultGoal)
+
+# Generate the package license contents.
+
+$(PackageSourceDir)/COPYING: $(BuildDirectory)/source
+
+$(PackageLicenseFile): $(PackageSourceDir)/COPYING
+	$(copy-result)
+
+# Extract the source from the archive and apply patches, if any.
+
+$(PackageSourceDir): $(PackageArchive) $(PackagePatchPaths)
+	$(expand-and-patch-package)
+
+# Prepare the sources.
+
+$(BuildDirectory)/source: | $(PackageSourceDir)
+	$(Verbose)touch $@
+
+# Patch the sources, if necessary.
+
+$(BuildDirectory)/patch: $(BuildDirectory)/source
+	$(Verbose)touch $@
+
+# Generate the package build makefile.
+# Configure the source for building.
+$(BuildDirectory)/configure: $(BuildDirectory)/source | $(PackageSourceDir) $(BuildDirectory)
+	$(Verbose)cd $(BuildDirectory) && \
+	$(CURDIR)/$(PackageSourceDir)/configure \
+	CC="$(CC)" CXX="$(CXX)" AR=$(AR) RANLIB=$(RANLIB) STRIP=$(STRIP) \
+	CPPFLAGS="$(call ToolGenerateIncludeArgument,$(LinuxIncDir)) \
+	$(call ToolGenerateIncludeArgument,$(NCursesIncDir))" \
+	INSTALL="$(INSTALL) $(INSTALLFLAGS)" \
+	LDFLAGS="-L$(NCursesLibDir)" \
+	--build=$(HostTuple) \
+	--host=$(TargetTuple) \
+	--prefix=/usr \
+	--sysconfdir=/etc \
+	--localstatedir=/var \
+	--disable-agetty \
+	--disable-cramfs \
+	--disable-elvtune \
+	--disable-fallocate \
+	--disable-fsck \
+	--disable-init \
+	--disable-kill \
+	--disable-last \
+	--disable-login-utils \
+	--disable-makeinstall-chown \
+	--disable-makeinstall-setuid \
+	--disable-mesg \
+	--disable-nls \
+	--disable-partx \
+	--disable-pivot_root \
+	--disable-raw \
+	--disable-rdev \
+	--disable-rename \
+	--disable-reset \
+	--disable-schedutils \
+	--disable-switch_root \
+	--disable-tls \
+	--disable-unshare \
+	--disable-uuidd \
+	--disable-wall \
+	--disable-write \
+	--enable-libblkid \
+	--enable-libuuid \
+	--with-ncurses \
+	--without-slang \
+	--without-pam \
+	--without-selinux \
+	--without-audit \
+	--disable-static
+	$(Verbose)touch $@
+
+# Build the source.
+#
+# We have to unset MAKEFLAGS since they confuse the package build otherwise.
+
+$(BuildDirectory)/build: $(BuildDirectory)/configure
+	$(Verbose)unset MAKEFLAGS && \
+	$(MAKE) $(JOBSFLAG) -C $(BuildDirectory) \
+	all
+	$(Verbose)touch $@
+
+# Stage the build to a temporary installation area.
+#
+# We have to unset MAKEFLAGS since they confuse the package build otherwise.
+
+$(BuildDirectory)/stage: $(BuildDirectory)/build | $(ResultDirectory)
+	$(Verbose)unset MAKEFLAGS && \
+	$(MAKE) $(JOBSFLAG) -C $(BuildDirectory) \
+	DESTDIR=$(ResultDirectory) \
+	install
+	$(Verbose)touch $@
+
+.PHONY: stage
+stage: $(BuildDirectory)/stage
+
+clean:
+	$(Verbose)$(RM) $(RMFLAGS) -r $(PackageSourceDir)
+	$(Verbose)$(RM) $(RMFLAGS) -r $(BuildDirectory)
+	$(Verbose)$(RM) $(RMFLAGS) -r $(ResultDirectory)
+
+include post.mak
diff --git a/util-linux-ng.tar.bz2 b/util-linux-ng.tar.bz2
new file mode 100644
index 0000000..512e59a
--- /dev/null
+++ b/util-linux-ng.tar.bz2
Binary files differ
diff --git a/util-linux-ng.url b/util-linux-ng.url
new file mode 100644
index 0000000..906ec7c
--- /dev/null
+++ b/util-linux-ng.url
@@ -0,0 +1 @@
+ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.17/util-linux-ng-2.17.2.tar.bz2
diff --git a/util-linux-ng.version b/util-linux-ng.version
new file mode 100644
index 0000000..94dc0ec
--- /dev/null
+++ b/util-linux-ng.version
@@ -0,0 +1 @@
+2.17.2
