diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2006-05-18 23:28:07 +0000 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2006-05-18 23:28:07 +0000 |
commit | df8197dc21d6db55351277b776761097e9817066 (patch) | |
tree | c5c3831a9c63b0a1a751ac9bff2e917695f242cf /sys-power/nut | |
parent | Remove version 209 as it hasn't been ported to modular X and 301 is now stabl... (diff) | |
download | gentoo-2-df8197dc21d6db55351277b776761097e9817066.tar.gz gentoo-2-df8197dc21d6db55351277b776761097e9817066.tar.bz2 gentoo-2-df8197dc21d6db55351277b776761097e9817066.zip |
Clean up permissions code, add lighttpd config, and patch for upsset.cgi link from upsstats.cgi.
(Portage version: 2.1_rc1-r2)
Diffstat (limited to 'sys-power/nut')
-rw-r--r-- | sys-power/nut/ChangeLog | 10 | ||||
-rw-r--r-- | sys-power/nut/files/digest-nut-2.0.3-r1 | 3 | ||||
-rw-r--r-- | sys-power/nut/files/lighttpd_nut.conf | 23 | ||||
-rw-r--r-- | sys-power/nut/files/upsstats-upsset-link.patch | 10 | ||||
-rw-r--r-- | sys-power/nut/nut-2.0.3-r1.ebuild | 167 |
5 files changed, 212 insertions, 1 deletions
diff --git a/sys-power/nut/ChangeLog b/sys-power/nut/ChangeLog index 3be760e58ef6..4ed8f6634a02 100644 --- a/sys-power/nut/ChangeLog +++ b/sys-power/nut/ChangeLog @@ -1,6 +1,14 @@ # ChangeLog for www-apps/nut # Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-power/nut/ChangeLog,v 1.2 2006/05/18 06:05:29 robbat2 Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-power/nut/ChangeLog,v 1.3 2006/05/18 23:28:07 robbat2 Exp $ + +*nut-2.0.3-r1 (18 May 2006) + + 18 May 2006; Robin H. Johnson <robbat2@gentoo.org> + +files/lighttpd_nut.conf, +files/upsstats-upsset-link.patch, + +nut-2.0.3-r1.ebuild: + Clean up permissions code, add lighttpd config, and patch for upsset.cgi + link from upsstats.cgi. *nut-2.0.3 (18 May 2006) diff --git a/sys-power/nut/files/digest-nut-2.0.3-r1 b/sys-power/nut/files/digest-nut-2.0.3-r1 new file mode 100644 index 000000000000..55c8a6e59877 --- /dev/null +++ b/sys-power/nut/files/digest-nut-2.0.3-r1 @@ -0,0 +1,3 @@ +MD5 ed2d3104d021a6ddb864f23d8cbd1cf6 nut-2.0.3.tar.gz 656376 +RMD160 890c52b1ab538101c30e5be33e785817a773cdb9 nut-2.0.3.tar.gz 656376 +SHA256 e4ded1fd1f119a71ee500d043bfa08d912d84793738d81b2bd08871e34ed8f95 nut-2.0.3.tar.gz 656376 diff --git a/sys-power/nut/files/lighttpd_nut.conf b/sys-power/nut/files/lighttpd_nut.conf new file mode 100644 index 000000000000..7e5d4d1843cc --- /dev/null +++ b/sys-power/nut/files/lighttpd_nut.conf @@ -0,0 +1,23 @@ +############################################################################### +# Lighttpd configuration for using NUT under Gentoo Linux. +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-power/nut/files/lighttpd_nut.conf,v 1.1 2006/05/18 23:28:07 robbat2 Exp $ +############################################################################### + +# Simple copy this to /etc/lighttpd/ and include it in your lighttpd.conf. +# It will make NUT available at http://$HOST/nut/ + +server.modules += ("mod_cgi") + +# If you want to limit it to some host, uncomment the host check and modify it to your needs. +# $HTTP["host"] == "www2.example.org" { +alias.url += ( "/nut/" => "/usr/share/nut/" ) +$HTTP["url"] =~ "^/nut/" { + dir-listing.activate = "disable" + cgi.assign = ( ".cgi" => "" ) + index-file.names = ( "upsstats.cgi" ) +} +# } + +# vim: set ft=conf foldmethod=marker et : diff --git a/sys-power/nut/files/upsstats-upsset-link.patch b/sys-power/nut/files/upsstats-upsset-link.patch new file mode 100644 index 000000000000..789a3f922c1a --- /dev/null +++ b/sys-power/nut/files/upsstats-upsset-link.patch @@ -0,0 +1,10 @@ +--- nut-2.0.3.orig/conf/upsstats.html 2005-02-28 01:14:07.000000000 -0800 ++++ nut-2.0.3/conf/upsstats.html 2006-05-18 12:56:34.206538641 -0700 +@@ -114,4 +114,6 @@ + </table> + + </td></tr> +-</table></body></html> ++</table> ++<p style="text-align: center"><a href="upsset.cgi">Settings & Commands</a></p> ++</body></html> diff --git a/sys-power/nut/nut-2.0.3-r1.ebuild b/sys-power/nut/nut-2.0.3-r1.ebuild new file mode 100644 index 000000000000..89f865eddfd1 --- /dev/null +++ b/sys-power/nut/nut-2.0.3-r1.ebuild @@ -0,0 +1,167 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-power/nut/nut-2.0.3-r1.ebuild,v 1.1 2006/05/18 23:28:07 robbat2 Exp $ + +inherit eutils fixheadtails + +MY_P="${P/_/-}" + +DESCRIPTION="Network-UPS Tools" +HOMEPAGE="http://www.networkupstools.org/" +# Nut mirrors are presently broken +#SRC_URI="mirror://nut/source/${PV%.*}/${MY_P}.tar.gz" +SRC_URI="http://www.networkupstools.org/source/${PV%.*}/${MY_P}.tar.gz" + +S="${WORKDIR}/${MY_P}" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~x86 ~sparc ~ppc ~ppc64 ~alpha ~amd64" +IUSE="cgi snmp usb ssl" + +RDEPEND="cgi? ( >=media-libs/gd-2 ) + snmp? ( net-analyzer/net-snmp ) + usb? ( dev-libs/libusb ) + ssl? ( dev-libs/openssl )" +DEPEND="$RDEPEND + >=sys-apps/sed-4 + >=sys-devel/autoconf-2.58" + +# public files should be 644 root:root +NUT_PUBLIC_FILES="/etc/nut/{{hosts,upsset,ups,upssched}.conf,upsstats{,-single}.html}" +# private files should be 640 root:nut - readable by nut, writeable by root, +NUT_PRIVATE_FILES="/etc/nut/{upsd.conf,upsd.users,upsmon.conf}" + +pkg_setup() { + enewgroup nut 84 + enewuser nut 84 -1 /var/state/nut nut +} + +src_unpack() { + unpack ${A} + + epatch ${FILESDIR}/upsstats-upsset-link.patch + + cd "${S}" + + sed -e "s/install: install-dirs/install: install-dirs install-conf/" \ + -i Makefile.in || die "sed failed" + + ht_fix_file configure.in + + sed -e "s:GD_LIBS.*=.*-L/usr/X11R6/lib \(.*\) -lXpm -lX11:GD_LIBS=\"\1:" \ + -i configure.in || die "sed failed" + + ebegin "Recreating configure" + WANT_AUTOCONF=2.5 autoconf || die "autoconf failed" + eend $? +} + +src_compile() { + local myconf + + if [ -n "${NUT_DRIVERS}" ]; then + myconf="${myconf} --with-drivers=${NUT_DRIVERS// /,}" + fi + + econf \ + --with-user=nut \ + --with-group=nut \ + --with-drvpath=/lib/nut \ + --sysconfdir=/etc/nut \ + --with-logfacility=LOG_DAEMON \ + --with-statepath=/var/lib/nut \ + $(use_with ssl) \ + $(use_with cgi) \ + $(use_with cgi cgipath /usr/share/nut) \ + ${myconf} || die "econf failed" + + emake || die "compile problem" + + if use snmp; then + emake snmp || die "snmp compile problem" + fi + + if use usb; then + emake usb || die "usb compile problem" + fi + + if use cgi; then + emake cgi || die "cgi compile problem" + fi +} + +src_install() { + make DESTDIR="${D}" install install-lib || die "make install failed" + + dodir /sbin + dosym /lib/nut/upsdrvctl /sbin/upsdrvctl + # This needs to exist for the scripts + dosym /lib/nut/upsdrvctl /usr/sbin/upsdrvctl + + if use snmp; then + make DESTDIR="${D}" install-snmp || die "make install-snmp failed" + fi + + if use usb; then + make DESTDIR="${D}" install-usb || die "make install-usb failed" + fi + + if use cgi; then + make DESTDIR="${D}" install-cgi || die "make install-cgi failed" + make DESTDIR="${D}" install-cgi-conf || die "make install-cgi-conf failed" + einfo "CGI monitoring scripts are installed in /usr/share/nut." + einfo "copy them to your web server's ScriptPath to activate." + einfo "If you use lighttpd, see lighttpd_nut.conf in the documentation." + fi + + # this must be done after all of the install phases + for i in "${D}"/etc/nut/*.sample ; do + mv "${i}" "${i/.sample/}" + done + + + dodoc CHANGES CREDITS INSTALL MAINTAINERS NEWS README UPGRADING \ + docs/{FAQ,*.txt} + + newdoc lib/README README.lib + + dodoc ${FILESDIR}/lighttpd_nut.conf + + docinto cables + dodoc docs/cables/* + + + exeinto /etc/init.d + newexe "${FILESDIR}/upsd.rc6" upsd + newexe "${FILESDIR}/upsdrv.rc6-r1" upsdrv + newexe "${FILESDIR}/upsmon.rc6" upsmon + + # This sets up permissions for nut to access a UPS + insinto /etc/udev/rules.d/ + newins scripts/hotplug-ng/nut-usbups.rules 70-nut-usbups.rules + + keepdir /var/lib/nut + + fperms 0700 /var/lib/nut + fowners nut:nut /var/lib/nut + + eval fperms 0640 ${NUT_PRIVATE_FILES} + eval fowners root:nut ${NUT_PRIVATE_FILES} + + eval fperms 0644 ${NUT_PUBLIC_FILES} + eval fowners root:root ${NUT_PUBLIC_FILES} +} + +pkg_postinst() { + # this is to ensure that everybody that installed old versions still has + # correct permissions + chown nut:nut ${ROOT}/var/lib/nut 2>/dev/null + chmod 0700 ${ROOT}/var/lib/nut 2>/dev/null + + eval chown root:nut ${ROOT}${NUT_PRIVATE_FILES} 2>/dev/null + eval chmod 0640 ${ROOT}${NUT_PRIVATE_FILES} 2>/dev/null + + eval chown root:root ${ROOT}${NUT_PUBLIC_FILES} 2>/dev/null + eval chmod 0644 ${ROOT}${NUT_PUBLIC_FILES} 2>/dev/null +} |