aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStuart Shelton <stuart@shelton.me>2018-02-17 13:53:14 +0000
committerStuart Shelton <stuart@shelton.me>2018-02-17 13:53:14 +0000
commitaba9c4cf56185619eb48426b10884f58f7090a53 (patch)
tree24c4b3a88d3b62044aefb55912320632d23b4703
parentUpdate sys-libs/glibc-2.25-r10 (diff)
downloadsrcshelton-aba9c4cf56185619eb48426b10884f58f7090a53.tar.gz
srcshelton-aba9c4cf56185619eb48426b10884f58f7090a53.tar.bz2
srcshelton-aba9c4cf56185619eb48426b10884f58f7090a53.zip
Add net-misc/unifi-controller-bin-5.7.19_rc
-rw-r--r--net-misc/unifi-controller-bin/Manifest3
-rw-r--r--net-misc/unifi-controller-bin/unifi-controller-bin-5.7.19_rc.ebuild249
2 files changed, 252 insertions, 0 deletions
diff --git a/net-misc/unifi-controller-bin/Manifest b/net-misc/unifi-controller-bin/Manifest
index cb006d65..7941504a 100644
--- a/net-misc/unifi-controller-bin/Manifest
+++ b/net-misc/unifi-controller-bin/Manifest
@@ -31,6 +31,8 @@ DIST unifi-5.7.15-e9b882be05_sysvinit_all.deb 63651966 SHA256 93684bcc311bd56ab7
DIST unifi-5.7.18-121f169b8c_api.sh 5167 SHA256 5baf98dc45b7dac7f5444f7f4e36e26602908755fb6d668b6e47c07135ed2deb SHA512 e8b250e6c363fcda8f5550fb7d3f6d352fa0af458a0d0907177835f6236c37374336e877687644abb1f018fae4a33efa411b286bf1a39488966253b3b4a06600 WHIRLPOOL 1bc922fcc82b3c156e697db55413484df0236eb16992fce5c96448631e57a84cfa230a82395b827221f33cce1780ffb9a1a5ba1f2fc5ad8c901eb8477aa4f21b
DIST unifi-5.7.18-121f169b8c_changelog.txt 247316 SHA256 e59d6204abefa3efd5d62ce960200fbb7e8c7353d95318a4655abe00cc7b4504 SHA512 e7b9ce0acd6cd8103f98d8e480bceef177f845347e6a40952ad4b72d79f8b0fedfb3c1193637fc2628d1c7051d29ac8fa1d797c92f53f2846713c2d3f9e859f8 WHIRLPOOL 18dd3621349e32c33f69aaf8f85c8a0632e6c4684e192f460255030b5ab456f08aed2d3c8572e59441553c15d19859b8cd9f4664779e6be15db71bafeb3f8d9a
DIST unifi-5.7.18-121f169b8c_sysvinit_all.deb 64522022 SHA256 c3b954d9e05ea9b5473abd6a265469897cb2256335c94b5c072691da98856c52 SHA512 fef31b7e76f52f4499d42dadaff124118e0dd71cbb72c78e9fd0a70ad08eb01f7448f06022ac8e191111ce264459b2b11414b0d9cf28d8ea90d4e22897402ed9 WHIRLPOOL f274c7d1c537f0a20a75fee1660cbb7c51cbadf31629a3df59d5d70c6731f34e1b7660b72eff0e8f0d58990699b169d3d5c4b5a84a1a14ff616c4e28dc5b81cc
+DIST unifi-5.7.19-84cd139873_api.sh 5167 SHA256 5baf98dc45b7dac7f5444f7f4e36e26602908755fb6d668b6e47c07135ed2deb SHA512 e8b250e6c363fcda8f5550fb7d3f6d352fa0af458a0d0907177835f6236c37374336e877687644abb1f018fae4a33efa411b286bf1a39488966253b3b4a06600 WHIRLPOOL 1bc922fcc82b3c156e697db55413484df0236eb16992fce5c96448631e57a84cfa230a82395b827221f33cce1780ffb9a1a5ba1f2fc5ad8c901eb8477aa4f21b
+DIST unifi-5.7.19-84cd139873_sysvinit_all.deb 64556596 SHA256 743338f880f5748341bc73151a8c01611a939c5155952a3b98519ee1a423b7b5 SHA512 ab3cb54dd62fdc135f98478929894821eb228f8b89632d3c5ce8439d969af3b74ec5904f43152631820911e58b317ec3c24155b7f9eacd10ea8ba910ae210844 WHIRLPOOL d1601061c187feb9410d6e336895a1450bdf6c854c8dc181bd1bf4fd25728eb8f6bf32ccba7b485655bceb3587bcf9073a98a641d063053af65c1b94eb2b698b
EBUILD unifi-controller-bin-5.5.24.ebuild 6995 SHA256 0586a17fb2abd46e819a2c7baa24de21970bc90ac846c4728f9edbaba9a20503 SHA512 9dca6b2ec2613d3055e4aed7467cd018c6bc22fe301481d83d3ae90377bc549234029f0c78c2e3295e7273bedd345f9a1934d8591c014d94ea0609bf0333bbab WHIRLPOOL 77905657f5c89259477b553d3e6e6914c20d8d5fa53b9d9b887076042e12ba996bc87890ccb82d638809ecc9aea0e709a84938a410344b2084c3924dda7f500a
EBUILD unifi-controller-bin-5.6.18_rc.ebuild 7009 SHA256 013bf4f3bcafb7b4a1669059110548f2e531b34ca24bad09ee7f5acaffeb9adb SHA512 301a52b4854fb47de53f82858964a588bb7df0437677ca87a8fda778c8a871f80ca6ecc9037c767bc2b9e461e54dc6f6a28dd7f6966d7129beee7a20df9caea4 WHIRLPOOL 0a172224edc8e29d2c1e68f0aaadb2d107f9b9cafba3513bffb053cee65ddee7bcc547f0aea7625129084310e09153af498022f259a96b2800e5cd68877fd559
EBUILD unifi-controller-bin-5.6.19.ebuild 7691 SHA256 17d58dcc78b28ebe4740942364040021d983c5dd3ceb9636d309902d606eb446 SHA512 30ad29fce7077b8ce552d844a0e8add8d8eb33f1a19b2de91843aec9c438aad1ac372e756cc99a6e85a9d93d03722565e19db008f6efdf55aad670c6bc9195df WHIRLPOOL 4b5dec02852aef06f4aa881ec2ba4030165da0a3fe54638f765eb93917a90f728c865afeae57ad8599c60b773edb8f380a114f9a8dc145f47d715ea93ffa8efb
@@ -45,3 +47,4 @@ EBUILD unifi-controller-bin-5.6.31_rc.ebuild 7705 SHA256 5fd69be2de07a5a29e76ba4
EBUILD unifi-controller-bin-5.6.35_rc.ebuild 7705 SHA256 79546a18673ee8afc2040c4ff3765f06476ae9d7090680a4bca02d40e12eac66 SHA512 a02c797455a1c71d2cb7d591fa65ae79823529461b1bc19c56d60b08d88233123502e7db5454365bcfea799a9367d724da60f066227ac443f5b047046d2ff8d2 WHIRLPOOL 3687218ed04acafefca2701c42fb87b31510b5f284dceb4c3d772866bb8fbb2850528b5e2980f53c50554bb693aa2e8f83f9ba1d4066b01e1ccf6691493651c1
EBUILD unifi-controller-bin-5.7.15_rc.ebuild 8121 SHA256 809f3e43839b25858f182b1833f871c2ed61983fbdcff271f940aaa3c084b5d7 SHA512 a782362d4f0d91724e321953057cf93916acf4b0c5aca84ccce6da111c72bb7ddf843d6b854942e06b481feb1ae71f0c58fa66ca5b11efe98da76f01f1e68985 WHIRLPOOL f561580d53778359e28a2258a651f162fdbc1d0c5875060fba4245ecf178e69b3a67f8eec98313f78b77a8247544b72400392b25eb3ffaf62b91cfccc90a7cb9
EBUILD unifi-controller-bin-5.7.18_rc.ebuild 8121 SHA256 da96fbe6f9a0f12ddc2b949c18a70fc64b9402718e6ae5a8d17849fc2684bd02 SHA512 cb85cfb13958a1a68601b65f8cd93c5a7c1b224ca2a285deee80f98db4fa4967c799821cd97818b9cb52186fd973ccc5450e85de7cbe6604c1c9f33b6facac2d WHIRLPOOL fd6053624a3c0be552b624c4ae0c79172271ae70dcc9399f3b62822f1749e3ba2a160990cf8c51da66183f4b02a4e5d48013c14cad958519bcb8140643fe0826
+EBUILD unifi-controller-bin-5.7.19_rc.ebuild 7916 SHA256 9c243432343b06a4265851339d520c804118625a7eddf1fdd92a8f118317a16e SHA512 c8ec030069e7d778ff03bbe5ee0c16b8eb8f4e6dad6aabe747a51819cbbc002e29bb6dbba0c2723968970a039a6816b800ece83bc2d8041b663c396dd9884467 WHIRLPOOL 277faa437995c16799a91d617daffadc11113f7baaff226ea766f9a2371b6de04baae22074509f571abfeb5c4cf63335a542c0ebe19926185b23789684dcb025
diff --git a/net-misc/unifi-controller-bin/unifi-controller-bin-5.7.19_rc.ebuild b/net-misc/unifi-controller-bin/unifi-controller-bin-5.7.19_rc.ebuild
new file mode 100644
index 00000000..3a1405c8
--- /dev/null
+++ b/net-misc/unifi-controller-bin/unifi-controller-bin-5.7.19_rc.ebuild
@@ -0,0 +1,249 @@
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+CHECKREQS_DISK_VAR="500M"
+
+inherit check-reqs unpacker user
+
+MY_P="${P/-bin}"
+MY_PN="${PN/-bin}"
+MY_PV="${PV/_rc}-84cd139873"
+
+DESCRIPTION="Ubiquiti UniFi Controller"
+HOMEPAGE="https://www.ubnt.com/download/unifi/"
+SRC_URI="
+ http://dl.ubnt.com/unifi/${MY_PV}/unifi_sysvinit_all.deb -> unifi-${MY_PV}_sysvinit_all.deb
+ tools? (
+ https://dl.ubnt.com/unifi/${MY_PV}/unifi_sh_api -> unifi-${MY_PV}_api.sh
+ )"
+RESTRICT="mirror"
+
+LICENSE="GPL-3 UBNT-20170717"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="nls rpi1 systemd +tools"
+UNIFI_LINGUAS=( ca cs da de_DE el en es_ES nl pl pt_PT sv tr zh_CN )
+IUSE+=" ${UNIFI_LINGUAS[@]/#/linguas_}"
+
+# debian control dependencies:
+# binutils
+# coreutils
+# jsvc
+# mongodb-server (>=2.4.10) | mongodb-10gen (>=2.4.14) | mongodb-org-server (>=2.6.0)
+# openjdk-7-jre-headless | java8-runtime-headless
+
+# The version of mongodb bundled with the Mac edition is v2.4.14 at the moment,
+# but currently the oldest ebuild (and only v2.x) is v2.6.12. The default
+# version is currently v3.0.14 - but this crashes with the UniFi code, possibly
+# documented in https://jira.mongodb.org/browse/SERVER-22334.
+# As a result, we'll only accept the oldest or newer versions as dependencies.
+DEPEND="
+ || (
+ ~dev-db/mongodb-2.6.12
+ >=dev-db/mongodb-3.2
+ )
+ >=virtual/jre-1.8.0
+"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}"
+
+QA_PREBUILT="opt/${MY_P}/lib/native/*/*/libubnt_webrtc_jni.so"
+
+pkg_setup () {
+ # unifi controller uses mongodb as a data-store, and mongo immediately
+ # requires >3GB of space on creation of a new store, if journaling is
+ # enabled. By default, UniFi disables mongo's journal - but if you
+ # override this option then bear in mind that you'll need an additional
+ # 3GB(!) of space on your /var partition, or you'll need to relocate
+ # /var/lib/unifi to a larger drive.
+ # 500M is the bare minimum required for a single AP and a handful of
+ # clients - the likelihood is that (much?) more space will be required
+ # in time...
+ check-reqs_pkg_setup
+
+ enewgroup unifi
+ enewuser unifi -1 -1 /var/lib/unifi unifi
+}
+
+src_unpack () {
+ local file
+ for file in ${A}; do
+ if [[ "${file}" == *.jar ]]; then
+ cp -r "${DISTDIR}"/"${file}" "${S}"/
+ elif [[ "${file}" == *.deb ]]; then
+ unpack_deb "${file}" || die
+ else
+ cp "${DISTDIR}"/"${file}" "${WORKDIR}"/
+ fi
+ done
+ cd "${S}"
+
+ if [[ "${ARCH}" == "arm" ]]; then
+ rm usr/lib/unifi/lib/native/Linux/x86_64/libubnt_webrtc_jni.so
+ use rpi1 && rm usr/lib/unifi/lib/native/Linux/armhf/libubnt_webrtc_jni.so
+ elif [[ "${ARCH}" == "amd64" ]]; then
+ rm usr/lib/unifi/lib/native/Linux/armhf/libubnt_webrtc_jni.so
+ else # [[ "${ARCH}" == "x86" ]]
+ rm usr/lib/unifi/lib/native/Linux/x86_64/libubnt_webrtc_jni.so
+ rm usr/lib/unifi/lib/native/Linux/armhf/libubnt_webrtc_jni.so
+ fi
+ rmdir -p usr/lib/unifi/lib/native/Linux/x86_64 usr/lib/unifi/lib/native/Linux/armhf 2>/dev/null
+
+ rm -r usr/lib/unifi/lib/native/Windows
+ if [[ ${CHOST} == *-darwin* ]] ; then
+ rm -r usr/lib/unifi/lib/native/Linux
+ else
+ rm -r usr/lib/unifi/lib/native/Mac
+ fi
+ rmdir usr/lib/unifi/lib/native 2>/dev/null
+
+ rm -r usr/lib/unifi/{bin,conf}
+}
+
+src_prepare () {
+ default
+
+ if use nls; then
+ local lingua=''
+ for lingua in ${UNIFI_LINGUAS[@]}; do
+ if ! use linguas_${lingua}; then
+ rm -r usr/lib/unifi/webapps/ROOT/app-unifi/locales/"${lingua}" || die
+ fi
+ done
+ fi
+
+ echo "CONFIG_PROTECT=\"${EPREFIX%/}/var/lib/unifi/data\"" > "${T}/90${MY_PN}"
+}
+
+src_install () {
+ local d
+ for d in conf data db logs run; do # Do we still need conf & db?
+ if [[ -d usr/lib/unifi/${d} ]]; then
+ rmdir usr/lib/unifi/${d} || die "Cannot remove directory 'unifi/${d}': ${?}"
+ fi
+ done
+
+ insinto /opt/"${MY_P}"
+ doins -r usr/lib/unifi/* || die "Installation failed"
+
+ keepdir /var/lib/unifi/backup
+ keepdir /var/lib/unifi/conf # ?
+ keepdir /var/lib/unifi/data
+ keepdir /var/lib/unifi/db # ?
+ keepdir /var/lib/unifi/webapp/work
+ keepdir /var/log/unifi
+
+ mkdir -p "${ED%/}"/var/run/unifi # Try to keep QA checker happy - this is created by the init script
+
+ dosym /var/lib/unifi/backup /opt/"${MY_P}"/backup
+ dosym /var/lib/unifi/conf /opt/"${MY_P}"/conf
+ dosym /var/lib/unifi/data /opt/"${MY_P}"/data
+ dosym /var/lib/unifi/db /opt/"${MY_P}"/db
+ dosym /var/lib/unifi/webapp/work /opt/"${MY_P}"/work
+ dosym /var/log/unifi /opt/"${MY_P}"/logs
+ dosym /var/run/unifi /opt/"${MY_P}"/run
+
+ # <sigh>
+ dodir /opt/"${MY_P}"/bin
+ dosym /usr/bin/mongod /opt/"${MY_P}"/bin/mongod
+
+ if use tools; then
+ insinto /opt/"${MY_P}"/bin
+ newins "${WORKDIR}"/unifi-${MY_PV}_api.sh unifi-api.sh
+ fperms 755 /opt/"${MY_P}"/bin/unifi-api.sh
+ fi
+
+ insinto /var/lib/unifi/data
+ doins "${FILESDIR}"/system.properties
+
+ fowners -R unifi:unifi \
+ /var/lib/unifi \
+ /var/log/unifi
+
+ newinitd "${FILESDIR}"/unifi.initd unifi ||
+ die "Could not create init script"
+ newconfd "${FILESDIR}"/unifi.confd unifi ||
+ die "Could not create conf file"
+ sed -i -e "s|%INST_DIR%|/opt/${MY_P}|g" \
+ "${ED%/}"/etc/{init,conf}.d/unifi \
+ || die "Could not customise init scripts"
+
+ doenvd "${T}/90${MY_PN}" || die "Could not configure environment"
+
+ if use systemd; then
+ sed -i -e "s|/usr/lib/unifi|${ED%/}/opt/${MY_P}|" \
+ lib/systemd/system/unifi.service \
+ || die "Could not customise systemd unit file"
+ systemd_dounit lib/systemd/system/unifi.service
+ fi
+
+ rmdir -p "${ED%/}"/var/run/unifi 2>/dev/null # Try to keep QA checker happy - this is created by the init script
+}
+
+pkg_postinst() {
+ elog "By default, ${MY_P} uses the following ports:"
+ elog
+ elog " Web Interface: 8080"
+ elog " API: 8443"
+ elog " Portal HTTP redirect: 8880"
+ elog " Portal HTTPS redirect: 8843"
+ elog " STUN: 3478"
+ elog
+ elog "... and will attempt to connect to mongodb on localhost:27117"
+ elog
+ elog "Additionally, ports 8881 and 8882 are reserved, and 6789 is used"
+ elog "for determining throughput."
+ elog
+ elog "All of these ports may be customised by editing"
+ elog
+ elog " /opt/${MY_P}/data/system.properties"
+ elog
+ elog "... but please note that the file will be re-written on each"
+ elog "startup/shutdown, and any changes to the comments will be lost."
+ elog
+ elog "These settings cannot be passed as '-D' parameters to Java,"
+ elog "${MY_P} only uses values from the properties file."
+ elog
+ elog "If the Web Interface/Inform port is changed from the default of"
+ elog "8080, then all managed devices must be updated via debug console"
+ elog "with the command:"
+ elog
+ elog " set-inform http://<controller IP>:<new port>/inform"
+ elog
+ elog "... before they will be able to reconnect."
+
+ if has_version '>=dev-java/oracle-jdk-bin-1.8.0.151' && has_version '<dev-java/oracle-jdk-bin-1.8.0.162'; then
+ elog
+ ewarn "Oracle Java SDK releases 1.8.0r151 to 1.8.0r161 prevent the"
+ ewarn "UniFi Guest Portal from operating correctly - please upgrade"
+ ewarn "or downgrade your Java installation to avoid this issue"
+ fi
+
+ elog
+ ewarn "From ${PN}-5.6.20, the default behaviour is to immediately"
+ ewarn "attempt to allocate 1GB of memory on startup. If running on a"
+ ewarn "memory-constrained system, please edit:"
+ ewarn
+ ewarn " /opt/${MY_P}/data/system.properties"
+ ewarn
+ ewarn "... in order to set appropriate Java XMS and XMX (minimum and"
+ ewarn "maximum memory constraints) values"
+ elog
+ ewarn "UniFi Controller 5.7+ will not support UAP-AC and UAP-AC-Outdoor"
+ ewarn "models:"
+ ewarn " https://community.ubnt.com/t5/UniFi-Updates-Blog/UAP-AC-UAP-AC-Outdoor-LTS-Announcement/ba-p/2059058"
+}
+
+pkg_prerm() {
+ local link
+
+ # Clean-up any remaining symlinks, which would otherwise be protected and
+ # not removed...
+ if [[ -z "${REPLACED_BY_VERSION:-}" || "${REPLACED_BY_VERSION}" != "${PVR}" ]]; then
+ for link in data logs run work; do
+ [[ -L "${EPREFIX%/}"/opt/"${MY_P}"/${link} ]] &&
+ rm "${EPREFIX%/}"/opt/"${MY_P}"/${link}
+ done
+ fi
+}