--- /dev/null
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 python3_4 python3_5 )
+
+inherit distutils-r1 eutils multilib systemd
+
+DESCRIPTION="cloud initialisation magic"
+HOMEPAGE="https://launchpad.net/cloud-init"
+# Launchpad does not provide consistent checksums https://bugs.launchpad.net/launchpad/+bug/1576338
+# SRC_URI="http://bazaar.launchpad.net/~${PN}-dev/${PN}/trunk/tarball/${PV/*_p} -> ${P}.tar.gz"
+SRC_URI="mirror://gentoo/${P}.tar.gz http://dev.gentoo.org/~prometheanfire/dist/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="test"
+
+CDEPEND="
+ dev-python/six[${PYTHON_USEDEP}]
+ dev-python/configobj[${PYTHON_USEDEP}]
+ dev-python/jinja[${PYTHON_USEDEP}]
+ dev-python/jsonpatch[${PYTHON_USEDEP}]
+ dev-python/oauthlib[${PYTHON_USEDEP}]
+ dev-python/prettytable[${PYTHON_USEDEP}]
+ dev-python/pyserial[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+"
+DEPEND="
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ test? (
+ ${CDEPEND}
+ >=dev-python/httpretty-0.7.1[${PYTHON_USEDEP}]
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/nose[${PYTHON_USEDEP}]
+ dev-python/unittest2[${PYTHON_USEDEP}]
+ dev-python/pep8[${PYTHON_USEDEP}]
+ dev-python/flake8[${PYTHON_USEDEP}]
+ dev-python/hacking[${PYTHON_USEDEP}]
+ )
+"
+RDEPEND="
+ ${CDEPEND}
+ sys-apps/iproute2
+ sys-fs/growpart
+ virtual/logger
+"
+
+PATCHES=( "${FILESDIR}/cloud-init-0.7.7-gentooinit.patch" )
+
+python_prepare_all() {
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ emake test
+}
+
+python_install() {
+ distutils-r1_python_install "--init-system=sysvinit_openrc"
+}
+
+python_install_all() {
+ keepdir /etc/cloud
+
+ distutils-r1_python_install_all
+
+ chmod +x "${D}"/etc/init.d/cloud-config
+ chmod +x "${D}"/etc/init.d/cloud-final
+ chmod +x "${D}"/etc/init.d/cloud-init
+ chmod +x "${D}"/etc/init.d/cloud-init-local
+
+ insinto /etc/cloud/templates
+ doins "${FILESDIR}/hosts.gentoo.tmpl"
+ insinto /etc/cloud
+ doins "${FILESDIR}/cloud.cfg"
+
+ systemd_dounit "${S}"/systemd/cloud-config.service
+ systemd_dounit "${S}"/systemd/cloud-config.target
+ systemd_dounit "${S}"/systemd/cloud-final.service
+ systemd_dounit "${S}"/systemd/cloud-init-local.service
+ systemd_dounit "${S}"/systemd/cloud-init.service
+}
--- /dev/null
+diff --git a/setup.py b/setup.py
+index 4abbb67..4885cb5 100755
+--- a/setup.py
++++ b/setup.py
+@@ -1,3 +1,4 @@
++#!/usr/bin/env python
+ # vi: ts=4 expandtab
+ #
+ # Distutils magic for ec2-init
+@@ -74,6 +75,7 @@ INITSYS_FILES = {
+ 'sysvinit': [f for f in glob('sysvinit/redhat/*') if is_f(f)],
+ 'sysvinit_freebsd': [f for f in glob('sysvinit/freebsd/*') if is_f(f)],
+ 'sysvinit_deb': [f for f in glob('sysvinit/debian/*') if is_f(f)],
++ 'sysvinit_openrc': [f for f in glob('sysvinit/gentoo/*') if is_f(f)],
+ 'systemd': [f for f in (glob('systemd/*.service') +
+ glob('systemd/*.target')) if is_f(f)],
+ 'systemd.generators': [f for f in glob('systemd/*-generator') if is_f(f)],
+@@ -83,6 +85,7 @@ INITSYS_ROOTS = {
+ 'sysvinit': '/etc/rc.d/init.d',
+ 'sysvinit_freebsd': '/usr/local/etc/rc.d',
+ 'sysvinit_deb': '/etc/init.d',
++ 'sysvinit_openrc': '/etc/init.d',
+ 'systemd': pkg_config_read('systemd', 'systemdsystemunitdir'),
+ 'systemd.generators': pkg_config_read('systemd',
+ 'systemdsystemgeneratordir'),
+@@ -203,7 +206,7 @@ setuptools.setup(
+ author='Scott Moser',
+ author_email='scott.moser@canonical.com',
+ url='http://launchpad.net/cloud-init/',
+- packages=setuptools.find_packages(exclude=['tests']),
++ packages=setuptools.find_packages(exclude=['tests.*', 'tests']),
+ scripts=['tools/cloud-init-per'],
+ license='GPLv3',
+ data_files=data_files,