diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..089f992
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,127 @@
+#
+#    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 makefile for the Ext2 File System utilities
+#      libraries, an important one of which is the Universally Unique
+#      Identifier (UUID) library.
+#
+
+
+include pre.mak
+
+PackageName		:= e2fsprogs-libs
+
+PackageExtension	:= tar.gz
+PackageSeparator	:= -
+
+PackagePatchArgs	:= -p1
+
+PackageArchive		:= $(PackageName).$(PackageExtension)
+PackageSourceDir	:= $(PackageName)$(PackageSeparator)$(PackageVersion)
+
+PackageBuildMakefile	= $(call GenerateBuildPaths,Makefile)
+
+CleanPaths		+= $(PackageLicenseFile)
+
+SOURCEDIRS                      = $(PackageSourceDir)
+$(PackageSourceDir)_RULE_TARGET = $(BuildDirectory)/configure
+
+all: $(PackageDefaultGoal)
+
+# Generate the package license contents.
+
+$(PackageLicensePaths): $(BuildDirectory)/source
+
+$(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) $(BuildDirectory)
+	$(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) $(ResultDirectory)
+	$(Verbose)cd $(BuildDirectory) && \
+	$(CURDIR)/$(PackageSourceDir)/configure \
+	CC="$(CC) $(CPPOPTFLAGS)" CXX="$(CXX) $(CPPOPTFLAGS)" AR=$(AR) RANLIB=$(RANLIB) STRIP=$(STRIP) \
+	CPPFLAGS="$(call ToolGenerateIncludeArgument,$(LinuxIncludePath))" \
+	INSTALL="$(INSTALL) $(INSTALLFLAGS)" \
+	--build=$(HostTuple) \
+	--host=$(TargetTuple) \
+	--enable-elf-shlibs \
+	--prefix=/usr \
+	--sysconfdir=/etc \
+	--localstatedir=/var
+	$(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.
+#
+# We explictly remove 'libuuid.la' and 'libuuid++.la' because some
+# packages that depend on libuuid use libtool. If libtool finds a
+# '*.la' file for a library, it uses the value of 'libdir=<dir>' it
+# finds. In our case, since '--prefix=/usr' this value is
+# '/usr/lib'. It then resolves '-luuid' to '/usr/lib/libuuid.so'. In a
+# cross-compilation environment, this is likely to be neither the
+# right architecture nor the right version to link against. In short,
+# we lose.
+#
+# We could also handle this by removing DESTDIR and setting the prefix
+# to $(ResultDirectory); however, that results in libtool hard-coding
+# $(ResultDirectory) as the RPATH in the linked executables which is
+# NOT what we want either. We lose again.
+#
+# By removing the '*.la' file, we win by ensuring neither a misdirected
+# link nor an RPATH.
+
+$(BuildDirectory)/stage: $(BuildDirectory)/build | $(ResultDirectory)
+	$(Verbose)unset MAKEFLAGS && \
+	$(MAKE) $(JOBSFLAG) -C $(BuildDirectory) DESTDIR=$(ResultDirectory) install
+	$(Verbose)$(RM) $(RMFLAGS) $(call GenerateResultPaths,,usr/lib/libuuid.la)
+	$(Verbose)$(RM) $(RMFLAGS) $(call GenerateResultPaths,,usr/lib/libuuid++.la)
+	$(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/e2fsprogs-libs.patches/e2fsprogs-libs-50.description b/e2fsprogs-libs.patches/e2fsprogs-libs-50.description
new file mode 100644
index 0000000..2a4f54d
--- /dev/null
+++ b/e2fsprogs-libs.patches/e2fsprogs-libs-50.description
@@ -0,0 +1 @@
+Fix for very rare parallel build failure.
diff --git a/e2fsprogs-libs.patches/e2fsprogs-libs-50.patch b/e2fsprogs-libs.patches/e2fsprogs-libs-50.patch
new file mode 100644
index 0000000..4a4b8ee
--- /dev/null
+++ b/e2fsprogs-libs.patches/e2fsprogs-libs-50.patch
@@ -0,0 +1,12 @@
+diff -Naur a/lib/uuid/Makefile.in b/lib/uuid/Makefile.in
+--- a/lib/uuid/Makefile.in	2010-05-17 15:20:57.000000000 -0700
++++ b/lib/uuid/Makefile.in	2016-07-08 10:04:56.400504768 -0700
+@@ -76,7 +76,7 @@
+ $(top_builddir)/lib/uuid/uuid_types.h: $(srcdir)/uuid_types.h.in $(top_builddir)/config.status
+ 	cd $(top_builddir); CONFIG_FILES=$(my_dir)/uuid_types.h ./config.status
+ 
+-tst_uuid.o: $(srcdir)/tst_uuid.c
++tst_uuid.o: $(srcdir)/tst_uuid.c uuid.h
+ 	$(E) "	CC $@"
+ 	$(Q) $(CC) $(ALL_CFLAGS) -c $(srcdir)/tst_uuid.c -o tst_uuid.o
+ 
diff --git a/e2fsprogs-libs.tar.gz b/e2fsprogs-libs.tar.gz
new file mode 100644
index 0000000..11c8c4f
--- /dev/null
+++ b/e2fsprogs-libs.tar.gz
Binary files differ
diff --git a/e2fsprogs-libs.url b/e2fsprogs-libs.url
new file mode 100644
index 0000000..647a716
--- /dev/null
+++ b/e2fsprogs-libs.url
@@ -0,0 +1 @@
+http://downloads.sourceforge.net/e2fsprogs/e2fsprogs-libs-1.41.12.tar.gz
diff --git a/e2fsprogs-libs.version b/e2fsprogs-libs.version
new file mode 100644
index 0000000..54b6aec
--- /dev/null
+++ b/e2fsprogs-libs.version
@@ -0,0 +1 @@
+1.41.12
