Advertisement
Guest User

Untitled

a guest
Oct 10th, 2023
17
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.22 KB | None | 0 0
  1. # Distributed under the terms of the GNU General Public License v2
  2.  
  3. EAPI=8
  4.  
  5. PYTHON_COMPAT=( python3_{10..11} )
  6. DISTUTILS_USE_PEP517=setuptools
  7. PYPI_NO_NORMALIZE=1
  8. PYPI_PN="homeassistant"
  9. inherit distutils-r1 pypi readme.gentoo-r1 systemd
  10.  
  11. MY_PN=homeassistant
  12.  
  13. if [[ ${PV} == *9999* ]]; then
  14. inherit git-r3
  15. EGIT_REPO_URI="https://github.com/home-assistant/core.git"
  16. EGIT_BRANCH="dev"
  17. S="${WORKDIR}/core/"
  18. else
  19. MY_PV=${PV/_beta/b}
  20. MY_P=${MY_PN}-${MY_PV}
  21. SRC_URI="$(pypi_sdist_url)
  22. https://github.com/home-assistant/core/archive/${MY_PV}.tar.gz -> ${MY_P}.gh.tar.gz"
  23. fi
  24.  
  25. DESCRIPTION="Open-source home automation platform running on Python."
  26. HOMEPAGE="https://home-assistant.io/ https://git.edevau.net/onkelbeh/HomeAssistantRepository/"
  27.  
  28. LICENSE="Apache-2.0"
  29. SLOT="0"
  30. KEYWORDS="amd64 arm arm64 x86"
  31. IUSE="systemd +sqlite"
  32.  
  33. # external deps
  34. RDEPEND="${PYTHON_DEPS} acct-group/${MY_PN} acct-user/${MY_PN}
  35. || ( dev-lang/python:3.10 dev-lang/python:3.11 )
  36. app-admin/logrotate
  37. dev-libs/libfastjson
  38. >=dev-libs/xerces-c-3.1.4-r1"
  39.  
  40. # make sure no conflicting main Ebuild is installed
  41. RDEPEND="${RDEPEND}
  42. !app-misc/homeassistant
  43. !app-misc/homeassistant-full"
  44.  
  45. # Home Assistant Core dependencies
  46. # from package_constraints.txt
  47. RDEPEND="${RDEPEND}
  48. >=dev-python/pip-21.3.1
  49. ~dev-python/astral-2.2[${PYTHON_USEDEP}]
  50. ~dev-python/atomicwrites-homeassistant-1.4.1[${PYTHON_USEDEP}]
  51. ~dev-python/attrs-23.1.0[${PYTHON_USEDEP}]
  52. ~dev-python/bcrypt-4.0.1[${PYTHON_USEDEP}]
  53. ~dev-python/ciso8601-2.3.0[${PYTHON_USEDEP}]
  54. ~dev-python/cryptography-41.0.4[${PYTHON_USEDEP}]
  55. ~dev-python/httpx-0.25.0[${PYTHON_USEDEP}]
  56. ~dev-python/ifaddr-0.2.0[${PYTHON_USEDEP}]
  57. ~dev-python/janus-1.0.0[${PYTHON_USEDEP}]
  58. ~dev-python/jinja-3.1.2[${PYTHON_USEDEP}]
  59. ~dev-python/lru-dict-1.2.0[${PYTHON_USEDEP}]
  60. ~media-libs/mutagen-1.47.0[${PYTHON_USEDEP}]
  61. ~dev-python/orjson-3.9.7[${PYTHON_USEDEP}]
  62. >=dev-python/packaging-23.1[${PYTHON_USEDEP}]
  63. ~dev-python/paho-mqtt-1.6.1[${PYTHON_USEDEP}]
  64. ~dev-python/pillow-10.0.1[${PYTHON_USEDEP}]
  65. ~dev-python/pyjwt-2.8.0[${PYTHON_USEDEP}]
  66. ~dev-python/pynacl-1.5.0[${PYTHON_USEDEP}]
  67. ~dev-python/pyopenssl-23.2.0[${PYTHON_USEDEP}]
  68. ~dev-python/pyserial-3.5[${PYTHON_USEDEP}]
  69. ~dev-python/python-slugify-4.0.1[${PYTHON_USEDEP}]
  70. ~dev-python/pyudev-0.23.2[${PYTHON_USEDEP}]
  71. ~dev-python/pyyaml-6.0.1[${PYTHON_USEDEP}]
  72. ~dev-python/requests-2.31.0[${PYTHON_USEDEP}]
  73. ~net-analyzer/scapy-2.5.0
  74. ~dev-python/sqlalchemy-2.0.21[${PYTHON_USEDEP}]
  75. ~dev-python/typing-extensions-4.8.0[${PYTHON_USEDEP}]
  76. ~dev-python/voluptuous-serialize-2.6.0[${PYTHON_USEDEP}]
  77. ~dev-python/voluptuous-0.13.1[${PYTHON_USEDEP}]
  78. ~dev-python/yarl-1.9.2[${PYTHON_USEDEP}]
  79. ~dev-python/zeroconf-0.115.2[${PYTHON_USEDEP}]
  80. >=dev-python/pycryptodome-3.6.6[${PYTHON_USEDEP}]
  81. <=dev-python/urllib3-2[${PYTHON_USEDEP}]
  82. >=dev-python/httplib2-0.19.0[${PYTHON_USEDEP}]
  83. ~dev-python/libcst-0.3.23[${PYTHON_USEDEP}]
  84. ~dev-python/anyio-3.7.1[${PYTHON_USEDEP}]
  85. ~dev-python/h11-0.14.0[${PYTHON_USEDEP}]
  86. ~dev-python/httpcore-0.18.0[${PYTHON_USEDEP}]
  87. >=dev-python/hyperframe-5.2.0[${PYTHON_USEDEP}]
  88. ~dev-python/numpy-1.26.0[${PYTHON_USEDEP}]
  89. >=dev-python/multidict-6.0.2[${PYTHON_USEDEP}]
  90. >=dev-python/backoff-2.0[${PYTHON_USEDEP}]
  91. ~dev-python/pydantic-1.10.12[${PYTHON_USEDEP}]
  92. ~dev-python/matplotlib-3.6.1[${PYTHON_USEDEP}]
  93. >=dev-python/websockets-11.0.1[${PYTHON_USEDEP}]
  94. ~dev-python/pysnmplib-5.0.21[${PYTHON_USEDEP}]
  95. ~dev-python/charset-normalizer-3.2.0[${PYTHON_USEDEP}]"
  96.  
  97. # Module requirements from useflags
  98. RDEPEND="${RDEPEND}
  99. sqlite? ( dev-db/sqlite )"
  100.  
  101. BDEPEND="
  102. dev-python/setuptools[${PYTHON_USEDEP}]"
  103.  
  104. INSTALL_DIR="/opt/${MY_PN}"
  105.  
  106. DISABLE_AUTOFORMATTING=1
  107. DOC_CONTENTS="
  108. The HA interface listens on port 8123
  109. hass configuration is in: /etc/${MY_PN}
  110. daemon command line arguments are configured in: /etc/conf.d/${MY_PN}
  111. logging is to: /var/log/${MY_PN}/{server,errors,stdout}.log
  112. The sqlite db is by default in: /etc/${MY_PN}
  113. support at https://git.edevau.net/onkelbeh/HomeAssistantRepository
  114. "
  115.  
  116. DOCS="README.rst"
  117.  
  118. src_prepare() {
  119. distutils-r1_src_prepare
  120. }
  121.  
  122. python_install_all() {
  123. dodoc ${DOCS}
  124. distutils-r1_python_install_all
  125. keepdir "$INSTALL_DIR"
  126. keepdir "/etc/${MY_PN}"
  127. fowners -R "${MY_PN}:${MY_PN}" "/etc/${MY_PN}"
  128. keepdir "/var/log/${MY_PN}"
  129. fowners -R "${MY_PN}:${MY_PN}" "/var/log/${MY_PN}"
  130. newconfd "${FILESDIR}/${MY_PN}.conf.d" "${MY_PN}"
  131. newinitd "${FILESDIR}/${MY_PN}.init.d" "${MY_PN}"
  132. use systemd && systemd_dounit "${FILESDIR}/${MY_PN}.service"
  133. dobin "${FILESDIR}/hasstest"
  134. insinto /etc/logrotate.d
  135. newins "${FILESDIR}/${MY_PN}.logrotate" "${MY_PN}"
  136. readme.gentoo_create_doc
  137. }
  138.  
  139. pkg_postinst() {
  140. readme.gentoo_print_elog
  141. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement