# Copyright 1999-2011 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Id$ inherit eutils java-pkg-2 pam MY_P=${P/cd/CD} DESCRIPTION="Make CD-writer(s) available to all users in your network" HOMEPAGE="http://joerghaeger.de/webCDwriter/index.html" SRC_URI="http://joerghaeger.de/webCDwriter/download/${MY_P}.tar.bz2" LICENSE="GPL-2" SLOT="0" KEYWORDS="~amd64 ~x86" IUSE="pam mp3 sox vorbis" DEPEND=">=virtual/jdk-1.4 dev-java/jnlp-api" RDEPEND=">=virtual/jre-1.4 app-cdr/cdrdao virtual/cdrtools mp3? ( media-sound/mpg123 ) sox? ( media-sound/sox ) vorbis? ( media-sound/vorbis-tools )" S=${WORKDIR}/${MY_P} src_unpack() { unpack ${A} rm -v "${S}"/MD5Verify/*.jar "${S}"/webCDcreator/4plugin/*.jar || die } src_compile() { epatch "${FILESDIR}/configure.patch" "${FILESDIR}"/${PV}-javac-flags.patch local myconf local java_conf="$(java-pkg_javac-args) -classpath $(java-pkg_getjar --build-only jnlp-api jnlp-api.jar)" java_conf="${java_conf} -encoding ISO-8859-1" use pam || myconf="--pam" myconf="${myconf} --user=root --group=root" ./configure ${myconf} --javac-flags="${java_conf}" || die "configure failed" make || die "make failed" } src_install() { newinitd "${FILESDIR}/${PN}.rc" CDWserver diropts -m700 dodir /etc/CDWserver keepdir /var/CDWserver/bin dodir /var/CDWserver/export/Server/tools dodir /var/CDWserver/http/rcdrecord keepdir /var/CDWserver/projects keepdir /var/log/CDWserver keepdir /var/spool/CDWserver insinto /etc/CDWserver PORT="12411" if use mp3 then MP3="on" else MP3="off" fi if use vorbis then OGG="on" else OGG="off" fi if use sox then AUDIO="on" else AUDIO="off" fi cd "${S}"/CDWserver/config cat config.default \ | sed s*#portNo=12411*portNo=${PORT}*g \ | sed s*#MP3decoding=on*MP3decoding=${MP3}*g \ | sed s*"# ogg123"*oggDecoding=${OGG}*g \ | sed s*#audioCDSupport=on*audioCDSupport=${AUDIO}*g \ > config for name in `find -name '[!M]*' -type f` do doins ${name} done cd "${S}"/CDWserver/http for dirname in `find -type d` do cd "${S}"/CDWserver/http/${dirname} dodir /var/CDWserver/http/${dirname} insinto /var/CDWserver/http/${dirname} for name in `find -name '[!M]*' -type f` do doins ${name} done done cd "${S}"/CDWserver/test make || die "make -C CDWserver/test failed" for name in `find -type f -perm -111` do dobin ${name} done insinto /var/CDWserver/http/rcdrecord cd "${S}"/rcdrecord for name in `find -name '*.html'` do doins ${name} done cd "${S}"/webCDcreator cp start.html index.html for dirname in `find -type d` do cd "${S}"/webCDcreator/${dirname} dodir /var/CDWserver/http/webCDcreator/${dirname} insinto /var/CDWserver/http/webCDcreator/${dirname} for name in `find -type f` do if test "${name}" != Makefile then doins ${name} fi done done cd "${S}"/tools make || die "make -C tools failed" mv CDWconfig.sh.tmp "${S}"/CDWserver/CDWconfig.sh cd "${S}" dosbin "${S}"/CDWserver/CDWconfig.sh dosbin "${S}"/CDWserver/CDWserver dobin "${S}"/CDWserver/CDWrootGate dobin "${S}"/CDWserver/CDWverify # dobin "${S}"/CDWserver/setScheduler dobin "${S}"/rcdrecord/rcdrecord dosym /usr/sbin/CDWserver /usr/sbin/CDWpasswd dosym /usr/sbin/CDWserver /usr/sbin/CDWuseradd dosym /usr/bin/rcdrecord /usr/bin/files2cd dosym /usr/bin/rcdrecord /usr/bin/image2cd # back to defaults from -m700 diropts -m755 java-pkg_regjar "${D}"/var/CDWserver/http/webCDcreator/*.jar java-pkg_jarinto /var/CDWserver/export/Server/tools java-pkg_dojar "${S}/MD5Verify/MD5Verify.jar" dodoc ChangeLog README CREDITS || die dohtml *.html || die use pam && pamd_mimic system-auth cdwserver auth account password session } pkg_postinst() { # ripped from the makefile local PORTEXT if [ "${PORT}" == "80" ] then PORTEXT="" else PORTEXT=":${PORT}" fi elog "To do:" elog "1. Enter \"/etc/init.d/CDWserver start\" to start your webCDwriter" elog "2. Open your web browser and try" elog " \"http://127.0.0.1${PORTEXT}\" or \"http://`hostname`${PORTEXT}\"" elog "to check the status of your webCDwriter" # elog "3. Run \"/usr/sbin/CDWconfig.sh\" to set the rights of CDWserver" echo ewarn "Remember to setup /etc/CDWserver/config" }