diff --git a/connman-f419c26f637f464ec1c63212bc4f2d069f728947/Makefile b/connman-f419c26f637f464ec1c63212bc4f2d069f728947/Makefile
new file mode 100644
index 0000000..1beb1cd
--- /dev/null
+++ b/connman-f419c26f637f464ec1c63212bc4f2d069f728947/Makefile
@@ -0,0 +1,197 @@
+#
+#    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 connman, a daemon for managing
+#      network connections within embedded devices running the Linux
+#      operating system.
+#
+
+BuildConfigSpecialized	:= No
+BuildProductSpecialized	:= No
+EnableParallel  = Yes
+
+include pre.mak
+
+PackageRoot		:= .
+
+PackageName		:= connman
+
+PackageSeparator	:=
+
+PackageSourceDir	:= $(PackageRoot)/$(PackageName)
+
+PackageBuildMakefile	= $(call GenerateBuildPaths,Makefile)
+
+LicenseSourceFile	:= $(PackageSourceDir)/COPYING
+
+CleanPaths		+= $(PackageLicenseFile)
+
+DbusDir			:= sw/tps/dbus
+DbusIncDirs		:= $(call GenerateResultPaths,$(DbusDir),usr/include/dbus-1.0 usr/lib/dbus-1.0/include)
+DbusLibDir		:= $(call GenerateResultPaths,$(DbusDir),usr/lib)
+
+GlibDir			:= sw/tps/glib
+GlibIncDirs		:= $(call GenerateResultPaths,$(GlibDir),usr/include/glib-2.0 usr/lib/glib-2.0/include)
+GlibLibDir		:= $(call GenerateResultPaths,$(GlibDir),usr/lib)
+
+GnuTlsDir		:= sw/tps/gnutls
+GnuTlsIncDir		:= $(call GenerateResultPaths,$(GnuTlsDir),usr/include)
+GnuTlsLibDir		:= $(call GenerateResultPaths,$(GnuTlsDir),usr/lib)
+
+GcryptDir		:= sw/tps/libgcrypt
+GcryptIncDir		:= $(call GenerateResultPaths,$(GcryptDir),usr/include)
+GcryptLibDir		:= $(call GenerateResultPaths,$(GcryptDir),usr/lib)
+
+GpgErrorDir		:= sw/tps/libgpg-error
+GpgErrorIncDir		:= $(call GenerateResultPaths,$(GpgErrorDir),usr/include)
+GpgErrorLibDir		:= $(call GenerateResultPaths,$(GpgErrorDir),usr/lib)
+
+IptablesDir		:= sw/tps/iptables
+IptablesIncDir		:= $(call GenerateResultPaths,$(IptablesDir),usr/include)
+IptablesLibDir		:= $(call GenerateResultPaths,$(IptablesDir),usr/lib)
+
+LinuxDir		:= sw/tps/linux
+LinuxIncDir		:= $(call GenerateResultPaths,$(LinuxDir),include)
+
+# The following libraries are for connmanctl
+
+LibEditDir		:= sw/tps/libedit
+LibEditIncDirs		:= $(call GenerateResultPaths,$(LibEditDir),usr/include usr/include/editline)
+LibEditLibDir		:= $(call GenerateResultPaths,$(LibEditDir),usr/lib)
+
+NCursesDir		:= sw/tps/ncurses
+NCursesIncDir		= $(call GenerateResultPaths,$(NCursesDir),usr/include)
+NCursesLibDir		= $(call GenerateResultPaths,$(NCursesDir),usr/lib)
+
+
+
+all: $(PackageDefaultGoal)
+
+# Generate the package license contents.
+
+$(LicenseSourceFile): source
+
+$(PackageLicenseFile): $(LicenseSourceFile)
+	$(copy-result)
+
+# We are building this package from version-controlled source, so
+# there is nothing to do for this target goal.
+
+$(PackageSourceDir):
+
+# Prepare the sources.
+
+.PHONY: source
+source: | $(PackageSourceDir)
+
+# Patch the sources, if necessary.
+
+.PHONY: patch
+patch: source
+
+# Generate the package build makefile.
+
+$(PackageBuildMakefile): | $(PackageSourceDir) $(BuildDirectory) $(ResultDirectory)
+	$(Verbose)cd $(BuildDirectory) && \
+	$(CURDIR)/$(PackageSourceDir)/configure \
+	INSTALL="$(INSTALL) $(INSTALLFLAGS)" \
+	CC="$(CC)" CXX="$(CXX)" AR=$(AR) NM=$(NM) RANLIB=$(RANLIB) STRIP=$(STRIP) \
+	CPPFLAGS="$(call ToolGenerateIncludeArgument,$(LinuxIncDir) $(LibEditIncDirs) $(NCursesIncDir))" \
+	LDFLAGS="-L$(LibEditLibDir) -L$(NCursesLibDir) -lcurses" \
+	DBUS_CFLAGS="$(call ToolGenerateIncludeArgument,$(DbusIncDirs))" \
+	DBUS_LIBS="-L$(DbusLibDir) -ldbus-1" \
+	GLIB_CFLAGS="$(call ToolGenerateIncludeArgument,$(GlibIncDirs))" \
+	GLIB_LIBS="-L$(GlibLibDir) -lglib-2.0" \
+	GNUTLS_CFLAGS="$(call ToolGenerateIncludeArgument,$(GnuTlsIncDir))" \
+	GNUTLS_LIBS="-L$(GnuTlsLibDir) -lgnutls -Wl,-rpath-link -Wl,$(GpgErrorLibDir) -Wl,-rpath-link -Wl,$(GcryptLibDir)" \
+	GTHREAD_CFLAGS="$(call ToolGenerateIncludeArgument,$(GlibIncDirs))" \
+	GTHREAD_LIBS="-L$(GlibLibDir) -lgthread-2.0" \
+	XTABLES_CFLAGS="$(call ToolGenerateIncludeArgument,$(IptablesIncDir))" \
+	XTABLES_LIBS="-L$(IptablesLibDir) -lxtables" \
+	WPASUPPLICANT="/sbin/wpa_supplicant" \
+	--build=$(HostTuple) \
+	--host=$(TargetTuple) \
+	--prefix=/usr \
+	--sysconfdir=/etc \
+	--localstatedir=/var \
+	--enable-client \
+	--disable-bluetooth \
+	--disable-dundee \
+	--disable-gtk-doc \
+	--disable-hh2serial-gps \
+	--disable-iospm \
+	--disable-ofono \
+	--disable-openconnect \
+	--disable-openvpn \
+	--disable-pacrunner \
+	--disable-polkit \
+	--disable-threads \
+	--disable-tools \
+	--disable-vpnc \
+	--disable-wispr \
+	--enable-debug \
+	--enable-sleep \
+	--enable-ethernet=builtin \
+	--enable-loopback=builtin \
+	--enable-wifi=builtin
+
+# 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
+	$(Verbose)unset MAKEFLAGS && \
+	$(MAKE) $(JOBSFLAG) -C $(BuildDirectory) \
+	all
+
+# Stage the build to a temporary installation area.
+#
+# We have to unset MAKEFLAGS since they confuse the package build otherwise.
+#
+# We explictly remove plug-in '*.la' files because some packages that
+# depend on these libraries 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 '-lfoo' to '/usr/lib/libfoo.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.
+
+.PHONY: stage
+stage: build | $(ResultDirectory)
+	$(Verbose)unset MAKEFLAGS && \
+	$(MAKE) $(JOBSFLAG) -C $(BuildDirectory) \
+	DESTDIR=$(ResultDirectory) \
+	install
+	$(Verbose)$(RM) $(RMFLAGS) $(call GenerateResultPaths,,$(addprefix usr/lib/connman/plugins/,ethernet.la loopback.la ntpd.la wifi.la sleepplugin.la))
+DeviceUser:=root
+quick-install: stage
+	tar -czC $(ResultDirectory)/usr/ . | ssh $(DeviceUser)@$(DeviceAddress) tar xvzC /usr
+
+clean:
+	$(Verbose)$(RM) $(RMFLAGS) -r $(BuildDirectory)
+	$(Verbose)$(RM) $(RMFLAGS) -r $(ResultDirectory)
+
+include post.mak
diff --git a/connman-f419c26f637f464ec1c63212bc4f2d069f728947/connman.tar.gz b/connman-f419c26f637f464ec1c63212bc4f2d069f728947/connman.tar.gz
new file mode 100644
index 0000000..4d2dd31
--- /dev/null
+++ b/connman-f419c26f637f464ec1c63212bc4f2d069f728947/connman.tar.gz
Binary files differ
diff --git a/connman-f419c26f637f464ec1c63212bc4f2d069f728947/connman.url b/connman-f419c26f637f464ec1c63212bc4f2d069f728947/connman.url
new file mode 100644
index 0000000..1d02c06
--- /dev/null
+++ b/connman-f419c26f637f464ec1c63212bc4f2d069f728947/connman.url
@@ -0,0 +1 @@
+git://git.kernel.org/pub/scm/network/connman/connman.git
diff --git a/connman-f419c26f637f464ec1c63212bc4f2d069f728947/connman.version b/connman-f419c26f637f464ec1c63212bc4f2d069f728947/connman.version
new file mode 100644
index 0000000..10a1a58
--- /dev/null
+++ b/connman-f419c26f637f464ec1c63212bc4f2d069f728947/connman.version
@@ -0,0 +1 @@
+f419c26f637f464ec1c63212bc4f2d069f728947
