diff --git a/procps-3.2.8/Makefile b/procps-3.2.8/Makefile
new file mode 100644
index 0000000..71735be
--- /dev/null
+++ b/procps-3.2.8/Makefile
@@ -0,0 +1,135 @@
+#
+#    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 for the Linux process utilities, procps. These
+#      utilities provide both command line and full-screen information
+#      about the Linux process table and the processes within it.
+#
+
+BuildConfigSpecialized	:= No
+BuildProductSpecialized	:= No
+EnableParallel  = Yes
+
+include pre.mak
+
+PackageName		:= procps
+
+PackageExtension	:= tar.gz
+PackageSeparator	:= -
+
+PackagePatchArgs	:= -p1
+
+PackageArchive		:= $(PackageName).$(PackageExtension)
+PackageSourceDir	:= $(PackageName)$(PackageSeparator)$(PackageVersion)
+
+PackageBuildMakefile	= $(call GenerateBuildPaths,Makefile)
+
+LicenseSourceFiles	:= COPYING COPYING.LIB
+LicenseSourcePaths      := $(addprefix $(PackageSourceDir)/,$(LicenseSourceFiles))
+
+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)
+
+all: $(PackageDefaultGoal)
+
+# Generate the package license contents.
+
+$(LicenseSourcePaths): source
+
+$(PackageLicenseFile): $(LicenseSourcePaths)
+	$(Verbose)touch $@
+	$(Verbose)for file in $(LicenseSourcePaths); do	\
+		echo "Concatenating \"$${file}\"...";	\
+		cat $${file} >> $@;			\
+	done
+
+# Extract the source from the archive and apply patches, if any.
+
+$(PackageSourceDir): $(PackageArchive) $(PackagePatchPaths)
+	$(expand-and-patch-package)
+
+# Prepare the sources.
+
+.PHONY: source
+source: | $(PackageSourceDir)
+
+# Patch the sources, if necessary.
+
+.PHONY: patch
+patch: source
+
+# Generate the package build makefile.
+
+$(PackageBuildMakefile): | $(PackageSourceDir) $(BuildDirectory)
+	$(call create-links,$(CURDIR)/$(PackageSourceDir),$(BuildDirectory))
+
+# Configure the source for building.
+
+.PHONY: configure
+configure: source $(PackageBuildMakefile)
+
+# Build the source.
+#
+# We have to unset MAKEFLAGS since they confuse the package build otherwise.
+
+.PHONY: build
+build: configure | $(BuildDirectory)
+	$(Verbose)unset MAKEFLAGS && \
+	$(MAKE) $(JOBSFLAG) -C $(BuildDirectory) \
+	CC="$(CC)" CXX="$(CXX)" AR=$(AR) NM=$(NM) RANLIB=$(RANLIB) STRIP=$(STRIP) \
+	CPPFLAGS="$(call ToolGenerateIncludeArgument,$(LinuxIncDir)) \
+	$(call ToolGenerateIncludeArgument,$(NCursesIncDir))" \
+	LDFLAGS="-L$(NCursesLibDir)" \
+	all
+
+# Stage the build to a temporary installation area.
+#
+# We have to unset MAKEFLAGS since they confuse the package build otherwise.
+#
+# Also, override both install and ldconfig. We aren't running install
+# for a native host and we aren't running as super user, so the
+# default actions for those won't otherwise work.
+
+.PHONY: stage stage-default stage-headers
+stage: stage-default stage-headers
+
+stage-default: build | $(ResultDirectory)
+	$(Verbose)unset MAKEFLAGS && \
+	$(MAKE) $(JOBSFLAG) -C $(BuildDirectory) \
+	DESTDIR=$(ResultDirectory) \
+	install="$(shell which install) -D" \
+	ldconfig="$(shell which true)" \
+        m64=-m32 \
+        lib64=lib \
+	install
+
+ResultHeaderDir			= $(ResultDirectory)/usr/include/proc
+SourceHeaderPaths		= $(wildcard $(BuildDirectory)/proc/*.h)
+
+$(ResultHeaderDir):
+	$(create-directory)
+
+stage-headers: build | $(ResultHeaderDir)
+	install --mode=0664 $(SourceHeaderPaths) $(ResultHeaderDir)
+
+clean:
+	$(Verbose)$(RM) $(RMFLAGS) -r $(PackageSourceDir)
+	$(Verbose)$(RM) $(RMFLAGS) -r $(BuildDirectory)
+	$(Verbose)$(RM) $(RMFLAGS) -r $(ResultDirectory)
+
+include post.mak
diff --git a/procps-3.2.8/procps.patches.tar.gz b/procps-3.2.8/procps.patches.tar.gz
new file mode 100644
index 0000000..7eec729
--- /dev/null
+++ b/procps-3.2.8/procps.patches.tar.gz
Binary files differ
diff --git a/procps-3.2.8/procps.tar.gz b/procps-3.2.8/procps.tar.gz
new file mode 100644
index 0000000..18db26d
--- /dev/null
+++ b/procps-3.2.8/procps.tar.gz
Binary files differ
diff --git a/procps-3.2.8/procps.url b/procps-3.2.8/procps.url
new file mode 100644
index 0000000..080480f
--- /dev/null
+++ b/procps-3.2.8/procps.url
@@ -0,0 +1 @@
+http://procps.sourceforge.net/procps-3.2.8.tar.gz
diff --git a/procps-3.2.8/procps.version b/procps-3.2.8/procps.version
new file mode 100644
index 0000000..f092941
--- /dev/null
+++ b/procps-3.2.8/procps.version
@@ -0,0 +1 @@
+3.2.8
