diff options
author | Stuart Shelton <stuart@shelton.me> | 2018-04-27 20:20:28 +0100 |
---|---|---|
committer | Stuart Shelton <stuart@shelton.me> | 2018-04-27 20:20:28 +0100 |
commit | abd6e78ffb8b3e822c5ee2782addef706e31a7db (patch) | |
tree | 4620031fecb4878ee07daa9e61e0f0285063216f /www-apps | |
parent | Add sys-libs/slang-2.3.2, update sys-libs/slang-2.3.0 (diff) | |
download | srcshelton-abd6e78ffb8b3e822c5ee2782addef706e31a7db.tar.gz srcshelton-abd6e78ffb8b3e822c5ee2782addef706e31a7db.tar.bz2 srcshelton-abd6e78ffb8b3e822c5ee2782addef706e31a7db.zip |
Update www-apps/heatmiser-9999
Diffstat (limited to 'www-apps')
-rw-r--r-- | www-apps/heatmiser/Manifest | 12 | ||||
-rw-r--r-- | www-apps/heatmiser/files/heatmiser-highcharts-version.patch | 11 | ||||
-rw-r--r-- | www-apps/heatmiser/files/heatmiser.confd | 31 | ||||
-rw-r--r-- | www-apps/heatmiser/files/heatmiser.initd | 52 | ||||
-rw-r--r-- | www-apps/heatmiser/heatmiser-9999.ebuild | 81 |
5 files changed, 139 insertions, 48 deletions
diff --git a/www-apps/heatmiser/Manifest b/www-apps/heatmiser/Manifest index 295e1de6..4befc1c5 100644 --- a/www-apps/heatmiser/Manifest +++ b/www-apps/heatmiser/Manifest @@ -1,5 +1,7 @@ -AUX heatmiser.conf 231 SHA256 6a884ea715a0f5637e34511bac14e3f6620ddf32b6ff2d49d9ca48273832b4f0 SHA512 381da067386ef56156621e96141bfc74463ebf40c95840e18b1242d1614cf128d6622a3bce21f421c295cc19d17986a20035e413247ccdbc59677c2c88be158e WHIRLPOOL da21d0b0973d470e6f24e2619808607947a6141fd3cff98249ac1f290c66ac82735949250231b54b3e0397b92f959c760fbbb904fb89a398c93c38c6f29ae3f8 -AUX heatmiser.initd 624 SHA256 4196a0cb41c0f8b4935fafcdb3e6feca93b57d9eb54f1a3298babb5d2a4e09e8 SHA512 c68760ec1603c51a42a2ba92eebdbb4e5d8f81c014e5e72e4685978b9c764d1bf051b86a130ca1df7fac53c297a02a9b7669f420d77e49799c766572ac042750 WHIRLPOOL 6d6be852d25ea397e7731facdb3cd37ef6fe61c1f59586f5189d54b7e6fa27e176fff1e2b419d7958c6f64c2018666020eedc31593de0f564425c7946a99e441 -DIST Highstock-1.1.5.zip 303571 SHA256 62982a1950b59a7dddeffbe831976063547c52e4b42bcd2b552e7edd30794846 SHA512 97f72d57b328b4791ac9d79c41ce9f309befb7595adc272f2dec56c675219e8e29c73a5faab56f29f16bd71061736e61ee710ca554f064c16744fa0cfb517240 WHIRLPOOL 0cc987d1316a64d11374400e73b3120c0752ae6065d13d4af81ee216be01efc12b68f70ef3e4a79e5582187e37e49155b1d76d8c3d1175cb496a9ea02a51fba4 -DIST jquery-ui.min.js 186173 SHA256 e21e121c209400a165ef1585f49799a7db6753c9663396ede86de434ae84e1e9 SHA512 4bfc6fbf65cee94f3579aa1f5b03454b01c8d557da30524baf727d19423929eabf786390d3ce0fab0645f2daba5494ad332466f27019b3e60fd2031aa6f6d078 WHIRLPOOL 7de212dd7cfa396f92a6bf1dff419f13af6f7e4a64e71d11cce1c42c694801df7749cdfc6e369ced2d172e2e937ac7ef21a30eff1cfd9a3bf0c3c10b412d63ef -EBUILD heatmiser-9999.ebuild 2291 SHA256 6a71d6ba1d51441932c3a82875c1fbc9234c3fe0c91234952856039223b1a5c8 SHA512 452a871f46f0074548826200513c13c5112a954e6449ae05510662ad148d7b0b8d7d5c5b93001f0ba64844cc46d21de66e0d1787f14cd32f5edc4f7e23cc60f4 WHIRLPOOL 46a76b5eec3f08589f9432d9e644be81ae9d8d4144db80e9e4e75094e6d6b062c89547e2c0b65242b8cb871d65b9cd5cc20b10b4a2a21a30c9dce09d6410dae2 +AUX heatmiser-highcharts-version.patch 778 BLAKE2B 28b9cbc64548225f1cece376f4e5930121bfcf98b38d1e7ccaf2613d9f637ffbc5c55e0b3d49aa86e61cdf299881efdcad65f2e0f1cda3bc8b4960a16284e1e8 SHA512 370b17b19c52409313dbf62db7d22c76be2323806ce8cdbd7eed90da6ba2dc275bfc46bc3839b433890094d471311c37ebb57e614970d70162fab238d3cca304 +AUX heatmiser.conf 231 BLAKE2B e34487c0b94f3ceeeca9ec7fafda80beee8380e453f331f856c1d85a7a020c5b0f6bc92a5a4a809bd2f67cb75e4c9491e664effff64c6c46a93c4458fbf36f79 SHA512 381da067386ef56156621e96141bfc74463ebf40c95840e18b1242d1614cf128d6622a3bce21f421c295cc19d17986a20035e413247ccdbc59677c2c88be158e +AUX heatmiser.confd 400 BLAKE2B 2e65ec3be50c5287acd9b594fa2184563d041286f6f10034f602d3aafc47b012f13dc23532180fe88fb2ea4ed4bf6a1a17992690aebfe90f2bbf3d1ce0d2cd22 SHA512 b7f42f8da08b5f27933563ee71fd3cf775210362379640599d4ce2b654d1009b2de1048c9d856a430758291c6dd7d0aa84afe7a08f97eef2566db3fab25d970c +AUX heatmiser.initd 1606 BLAKE2B c16c571ea161c2a13651dc46b23bec5a60fa6cc25d5901cee3c81975b20f54afaf5eccd529dc6b1ce8784c7f596742dd93c52934bb52091a8a53d575f38a17e5 SHA512 4108080ab183e4ef7360c2ec836f31c28f091751766fa0e5788ab22b0a1f8da0a48329b914ab75661d4b00bc8cdb675d8e993290d27e88d854811666f0bd1309 +DIST Highstock-6.0.7.zip 3959069 BLAKE2B 9f6311c470c284f3353f9f9f6d6d2bfc0b957db37a711d5421b6968c91fae786bebd6401c77fd63e493198ff188d523d2ec7442b721af87552dbf774a3a806a5 SHA512 69331611c63e8694fdae6bb97b35eec72f55df4cb7ff02f4b8c690801b8fe9fc5288b7742a0106cbc7fbe7ad4afb2b8a0ffb1d60491944a221e083d3c82ff7c9 +DIST jquery-2.0.2.min.js 83501 BLAKE2B 03675fdee9cd20e11aea5dc6686f1c5761f4e420265d04f833dfb20aa1d44ff874381c4b5bb14f23a977c0da8152f53bd15c30d5539a3f5eb7faa8d89d3314a3 SHA512 421702a33456ab28734765559c45a14b3c9f0c16e70f27314ffc84c7f9ed0d2eeb7a41f083a3bf8f51ef5a0a5087f1497f80ebad6da0600e60d33286ab56e3cd +EBUILD heatmiser-9999.ebuild 2786 BLAKE2B 43686c454d3bbe03b802c057d817866c06dacf7f01674756c7b52cadef3a039494ea30c95e714f6c670c3c27aef9711d56cd7c421b9e5a040313e16ea2cf9e06 SHA512 b64f7f8d7f7bb4fbc3edddb7cb6c4ad2792a322599c2f445d0530b34367ff6a72795f90c6c2139ecf2dc52e21534867d62c2b533baa532c259bad3f1b06790d2 diff --git a/www-apps/heatmiser/files/heatmiser-highcharts-version.patch b/www-apps/heatmiser/files/heatmiser-highcharts-version.patch new file mode 100644 index 00000000..e62db34a --- /dev/null +++ b/www-apps/heatmiser/files/heatmiser-highcharts-version.patch @@ -0,0 +1,11 @@ +--- a/html/index.html ++++ b/html/index.html +@@ -89,7 +89,7 @@ + $('#thermostats').parent().hide(); + + // Warn if the version of the Highstock JS library is too old +- if (Highcharts.version < '1.3.2') alert('This web page is designed to work with Highstock JS version 1.3.2, but the currently installed version is ' + Highcharts.version + '.\nDownload the latest version from http://www.highcharts.com/download\n'); ++ //if (Highcharts.version < '1.3.2') alert('This web page is designed to work with Highstock JS version 1.3.2, but the currently installed version is ' + Highcharts.version + '.\nDownload the latest version from http://www.highcharts.com/download\n'); + + // Create an empty chart + chart = new Highcharts.StockChart({ diff --git a/www-apps/heatmiser/files/heatmiser.confd b/www-apps/heatmiser/files/heatmiser.confd new file mode 100644 index 00000000..f70d16e4 --- /dev/null +++ b/www-apps/heatmiser/files/heatmiser.confd @@ -0,0 +1,31 @@ +# Defaults come from /etc/heatmiser.conf, but can +# be overridden here. + +# Options +#VERBOSE=1 +#LOGFILE='/var/log/heatmiser.log' + +# Thermostat +#HOST= +#PIN= + +#FREQUENCY=60 + +# Database +#DBNAME='dbi:mysql:heatmiser' +#DBUSER='heatmiser' +#DBPASS='heatmiser' + +# Weather Service +#WEATHER= +#APIKEY= +#LOCATION= +#UNITS='C'/'F' +#RATE=5 +# +#WEATHER='wunderground' +#APIKEY= +#LOCATION= +# +#WEATHER='yahoo' +#LOCATION= diff --git a/www-apps/heatmiser/files/heatmiser.initd b/www-apps/heatmiser/files/heatmiser.initd index 3eb80d91..dfbb2942 100644 --- a/www-apps/heatmiser/files/heatmiser.initd +++ b/www-apps/heatmiser/files/heatmiser.initd @@ -1,24 +1,58 @@ #!/sbin/openrc-run +# Copyright 2013-2018 Stuart Shelton # Distributed under the terms of the GNU General Public License v2 PERL="$( type -pf perl )" -NAME=heatmiser_daemon.pl -DAEMON=/usr/libexec/heatmiser/$NAME -DAEMON_ARGS="" -PIDFILE=/var/run/$NAME.pid +NAME='heatmiser_daemon.pl' +DAEMON="/usr/libexec/heatmiser/${NAME}" +DAEMON_ARGS='' +PIDFILE="/var/run/${NAME}.pid" depend() { - need mysql + need localmount net mysql } start() { ebegin "Starting Heatmiser Logger" - start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $PERL -- $DAEMON $DAEMON_ARGS - eend $? "Unable to start Logging Daemon" + + ARGS="" + [ -n "${VERBOSE}" ] && [ "${VERBOSE}" -ne 0 ] && ARGS="-v ${ARGS}" + [ -n "${LOGFILE}" ] && ARGS="${ARGS} -l ${LOGFILE}" + [ -n "${HOST}" ] && ARGS="${ARGS} -h ${HOST}" + [ -n "${PIN}" ] && ARGS="${ARGS} -p ${PIN}" + [ -n "${FREQUENCY}" ] && ARGS="${ARGS} -i ${FREQUENCY}" + [ -n "${DBNAME}" ] && ARGS="${ARGS} -s ${DBNAME}" + [ -n "${DBUSER}" ] && ARGS="${ARGS} -u ${DBUSER}" + [ -n "${DBPASS}" ] && ARGS="${ARGS} -a ${DBPASS}" + if [ -n "${WEATHER}" ]; then + ARGS="${ARGS} -w ${WEATHER}" + [ -n "${RATE}" ] && ARGS="${ARGS} -r ${RATE}" + [ -n "${APIKEY}" ] && ARGS="${ARGS} -k ${APIKEY}" + [ -n "${LOCATION}" ] && ARGS="${ARGS} -g ${LOCATION}" + [ -n "${UNITS}" ] && ARGS="${ARGS} -f ${UNITS}" + fi + + start-stop-daemon \ + --start \ + --quiet \ + --name "${NAME}" \ + --pidfile "${PIDFILE}" \ + --exec "${PERL}" -- "${DAEMON}" ${DAEMON_ARGS} ${ARGS} + retval=${?} + if [ "${retval}" -eq 0 ] && ! [ -f "${PIDFILE}" ]; then + sleep 1 + fi + eend ${retval} "Failed to start Heatmiser Logger daemon" } stop() { ebegin "Stopping Heatmiser Logger" - start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --interpreted --exec $PERL $DAEMON - eend $? "Unable to stop Logging Daemon" + start-stop-daemon \ + --stop \ + --quiet \ + --retry=TERM/30/KILL/5 \ + --pidfile "${PIDFILE}" \ + --interpreted \ + --exec "${PERL}" "${DAEMON}" + eend $? "Unable to stop Heatmiser Logger daemon" } diff --git a/www-apps/heatmiser/heatmiser-9999.ebuild b/www-apps/heatmiser/heatmiser-9999.ebuild index 9a66fec1..82350a48 100644 --- a/www-apps/heatmiser/heatmiser-9999.ebuild +++ b/www-apps/heatmiser/heatmiser-9999.ebuild @@ -1,15 +1,22 @@ -# Copyright 1999-2012 Gentoo Foundation +# Copyright 2013-2018 Stuart Shelton # Distributed under the terms of the GNU General Public License v2 -EAPI=4 +EAPI=6 -inherit subversion webapp +inherit git-r3 webapp + +VER_HC='6.0.7' # Unversioned - this is latest +VER_JQ='2.0.2' # Hard-coded +SUB_JQ='' # Previously 'ui' DESCRIPTION="Perl scripts and web interface for Heatmiser Wi-Fi Thermostats" -HOMEPAGE="http://code.google.com/p/heatmiser-wifi/" -SRC_URI="http://code.jquery.com/ui/1.7.2/jquery-ui.min.js \ -http://www.highcharts.com/downloads/zips/Highstock-1.1.5.zip" -ESVN_REPO_URI="http://heatmiser-wifi.googlecode.com/svn/trunk/" +HOMEPAGE="https://github.com/thoukydides/heatmiser-wifi" +SRC_URI=" + ${SUB_JQ:+https://code.jquery.com/${SUB_JQ:+${SUB_JQ}/}/${VER_JQ}/jquery${SUB_JQ:+-${SUB_JQ}}.min.js -> jquery${SUB_JQ:+-${SUB_JQ}}-${VER_JQ}.min.js} + ${SUB_JQ:-https://code.jquery.com/jquery-${VER_JQ}.min.js} + https://code.highcharts.com/zips/Highstock-${VER_HC}.zip +" +EGIT_REPO_URI="https://github.com/thoukydides/heatmiser-wifi.git" RESTRICT="nomirror" LICENSE="GPL-2" @@ -17,33 +24,35 @@ SLOT="0" WEBAPP_MANUAL_SLOT="yes" IUSE="" -DEPEND="" -RDEPEND="${DEPEND} \ - virtual/perl-Time-HiRes \ - dev-perl/JSON \ - dev-perl/File-HomeDir \ - dev-perl/Proc-Daemon \ - dev-perl/Proc-PID-File" +RDEPEND=" + virtual/perl-Time-HiRes + dev-perl/File-HomeDir + dev-perl/JSON + dev-perl/Proc-Daemon + dev-perl/Proc-PID-File +" need_httpd_cgi +PATCHES=( "${FILESDIR}/${PN}-highcharts-version.patch" ) + src_unpack() { - subversion_src_unpack + git-r3_src_unpack - for FILE in $A; do - case "$( basename "$FILE" | sed 's/^.*\.//' )" in + for FILE in ${A}; do + case "$( basename "${FILE}" | sed 's/^.*\.//' )" in js) - if [[ "$FILE" == "jquery-ui.min.js" ]]; then - cp "$DISTDIR"/"$FILE" "${WORKDIR}"/jquery-1.7.2.min.js || die "File copy failed for file '$FILE'" + if [[ "${FILE}" == "jquery${SUB_JQ:+-${SUB_JQ}}-${VER_JQ}.min.js" ]]; then + cp "${DISTDIR}/${FILE}" "${WORKDIR}/jquery-${VER_JQ}.min.js" || die "File copy failed for file '${FILE}'" else - die "File copy failed for unkown file '$FILE'" + die "File copy failed for unkown file '${FILE}'" fi ;; zip) - unpack "$FILE" || die "Unpack failed for file '$FILE'" + unpack "${FILE}" || die "Unpack failed for file '${FILE}'" ;; *) - die "Unknown file format detected for file '$FILE'" + die "Unknown file extension detected for file '${FILE}'" ;; esac done @@ -54,35 +63,39 @@ src_install() { dodoc COPYING - insinto "${MY_HTDOCSDIR}"/ - doins -r "${WORKDIR}"/jquery-1.7.2.min.js "${WORKDIR}"/js/highstock.js html/index.html + insinto "${MY_HTDOCSDIR}" + if [[ -r "${WORKDIR}"/js/highstock.js ]]; then + doins -r "${WORKDIR}/jquery-${VER_JQ}.min.js" "${WORKDIR}"/js/highstock.js html/index.html + else + doins -r "${WORKDIR}/jquery-${VER_JQ}.min.js" "${WORKDIR}"/code/js/highstock.js html/index.html + fi - insinto "${MY_CGIBINDIR}"/"${PN}"/ + insinto "${MY_CGIBINDIR}/${PN}" doins bin/heatmiser_config.pm bin/heatmiser_db.pm - exeinto "${MY_CGIBINDIR}"/"${PN}"/ + exeinto "${MY_CGIBINDIR}/${PN}" newexe bin/heatmiser_cgi.pl ajax.pl rm bin/heatmiser_cgi.pl 2>/dev/null - insinto /usr/libexec/"${PN}"/ + insinto /usr/libexec/"${PN}" doins bin/*.pm - exeinto /usr/libexec/"${PN}"/ + exeinto /usr/libexec/"${PN}" doexe bin/*.pl newinitd "${FILESDIR}/${PN}.initd" "${PN}" - #newconfd "${FILESDIR}/${PN}.confd" "${PN}" + newconfd "${FILESDIR}/${PN}.confd" "${PN}" - insinto /etc/ + insinto /etc doins "${FILESDIR}/${PN}.conf" keepdir /etc/cron.daily dosym /usr/libexec/"${PN}"/heatmiser_time.pl /etc/cron.daily/heatmiser # Without this it'll crash at startup. When merging in ROOT= this - # won't be created by default, so we want to make sure we got it! - keepdir /var/run - fowners root:root /var/run - fperms 0755 /var/run + # won't be created by default, so we want to make sure we have it! + #keepdir /var/run + #fowners root:root /var/run + #fperms 0755 /var/run webapp_src_install } |