summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Schuerch <nativemad@gentoo.org>2015-09-10 16:18:14 +0200
committerAndreas Schuerch <nativemad@gentoo.org>2015-09-10 16:18:58 +0200
commit66c912b46c1f4f9cdf3d48db4210fcfac9501c06 (patch)
tree114f344d092bc2dbd8870ebd2a4f271d3b02233f /www-apps/guacamole/guacamole-0.9.8.ebuild
parentdev-java/jfreesvg: Drop old. (diff)
downloadgentoo-66c912b46c1f4f9cdf3d48db4210fcfac9501c06.tar.gz
gentoo-66c912b46c1f4f9cdf3d48db4210fcfac9501c06.tar.bz2
gentoo-66c912b46c1f4f9cdf3d48db4210fcfac9501c06.zip
www-apps/guacamole: Bump to 0.9.8 with better instructions
Package-Manager: portage-2.2.20.1
Diffstat (limited to 'www-apps/guacamole/guacamole-0.9.8.ebuild')
-rw-r--r--www-apps/guacamole/guacamole-0.9.8.ebuild126
1 files changed, 126 insertions, 0 deletions
diff --git a/www-apps/guacamole/guacamole-0.9.8.ebuild b/www-apps/guacamole/guacamole-0.9.8.ebuild
new file mode 100644
index 000000000000..0e27996d9064
--- /dev/null
+++ b/www-apps/guacamole/guacamole-0.9.8.ebuild
@@ -0,0 +1,126 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils
+DESCRIPTION="Guacamole is a html5 vnc client as servlet"
+HOMEPAGE="http://guac-dev.org/"
+SRC_URI="mirror://sourceforge/${PN}/${PN}-client-${PV}.tar.gz
+ mysql? ( http://sourceforge.net/projects/${PN}/files/current/extensions/${PN}-auth-jdbc-${PV}.tar.gz )
+ postgres? ( http://sourceforge.net/projects/${PN}/files/current/extensions/${PN}-auth-jdbc-${PV}.tar.gz )
+ noauth? ( http://sourceforge.net/projects/${PN}/files/current/extensions/${PN}-auth-noauth-${PV}.tar.gz )
+ ldap? ( http://sourceforge.net/projects/guacamole/files/current/extensions/${PN}-auth-ldap-${PV}.tar.gz )"
+S="${WORKDIR}/${PN}-client-${PV}"
+
+LICENSE="MIT"
+
+SLOT="0"
+
+KEYWORDS="~x86 ~amd64"
+
+IUSE="ldap mysql postgres noauth"
+
+DEPEND="dev-java/maven-bin:*"
+
+RDEPEND="${DEPEND}
+ www-servers/tomcat[websockets]
+ >virtual/jre-1.6
+ net-misc/guacamole-server
+ mysql? ( virtual/mysql )
+ postgres? ( dev-db/postgresql )
+ ldap? ( net-nds/openldap )"
+
+src_compile() {
+ mkdir "${HOME}"/.m2
+ cat /usr/share/`readlink /usr/bin/mvn | sed 's:mvn:maven-bin:'`/conf/settings.xml | \
+ sed -e 's:/path/to/local/repo:'${HOME}/.m2':g' -e 's:<!-- localRepo::' >"${S}"/settings.xml
+ mvn -s "${S}"/settings.xml package
+}
+
+src_install() {
+ echo guacd-hostname: localhost >>"${S}/${PN}/doc/example/${PN}.properties"
+ echo guacd-port: 4822 >>"${S}/${PN}/doc/example/${PN}.properties"
+ echo basic-user-mapping: /etc/guacamole/user-mapping.xml >>"${S}/${PN}/doc/example/${PN}.properties"
+ if use noauth; then
+ sed -e 's:basic-user-mapping:#basic-user-mapping:' -i "${S}/${PN}/doc/example/${PN}.properties"
+ echo noauth-config: /etc/guacamole/noauth-config.xml >>"${S}/${PN}/doc/example/${PN}.properties"
+ insinto "/etc/${PN}/extensions"
+ find "${WORKDIR}/${PN}-auth-noauth-${PV}/" -name '*.jar' -exec doins '{}' +
+ insinto "/etc/guacamole"
+ find "${WORKDIR}/${PN}-auth-noauth-${PV}/doc/example/" -name '*.xml' -exec doins '{}' +
+ elog "Warning: Setting No Authentication is obviously very insecure! Only use it if you know what you are doing!"
+ fi
+ if use mysql; then
+ echo mysql-hostname: localhost >>"${S}/${PN}/doc/example/${PN}.properties"
+ echo mysql-port: 3306 >>"${S}/${PN}/doc/example/${PN}.properties"
+ echo mysql-database: guacamole >>"${S}/${PN}/doc/example/${PN}.properties"
+ echo mysql-username: guacamole >>"${S}/${PN}/doc/example/${PN}.properties"
+ echo mysql-password: some_password >>"${S}/${PN}/doc/example/${PN}.properties"
+ sed -e 's:basic-user-mapping:#basic-user-mapping:' -i "${S}/${PN}/doc/example/${PN}.properties"
+ insinto "/etc/${PN}/extensions"
+ find "${WORKDIR}/${PN}-auth-jdbc-${PV}/mysql/" -name '*.jar' -exec doins '{}' +
+ insinto "/usr/share/${PN}/schema"
+ find "${WORKDIR}/${PN}-auth-jdbc-${PV}/mysql/schema/" -name '*.sql' -exec doins '{}' +
+ insinto "/usr/share/${PN}/schema/upgrade"
+ find "${WORKDIR}/${PN}-auth-jdbc-${PV}/mysql/schema/upgrade/" -name '*.sql' -exec doins '{}' +
+ elog "Please add a mysql database and a user and load the sql files in /usr/share/guacamole/schema/ into it."
+ elog "If this is an update, then you will need to apply the appropriate update script in the location above."
+ elog "You will also need to adjust the DB propeties in /etc/guacamole.properties!"
+ elog "The default user and it's password is \"guacadmin\"."
+ elog "You will also need to download the mysql-connector from here http://dev.mysql.com/downloads/connector/j/"
+ elog "and put the contained .jar file into /etc/guacamole/lib!"
+ elog "-"
+ fi
+ if use postgres; then
+ echo postgresql-hostname: localhost >>"${S}/${PN}/doc/example/${PN}.properties"
+ echo postgresql-port: 5432 >>"${S}/${PN}/doc/example/${PN}.properties"
+ echo postgresql-database: guacamole >>"${S}/${PN}/doc/example/${PN}.properties"
+ echo postgresql-username: guacamole >>"${S}/${PN}/doc/example/${PN}.properties"
+ echo postgresql-password: some_password >>"${S}/${PN}/doc/example/${PN}.properties"
+ sed -e 's:basic-user-mapping:#basic-user-mapping:' -i "${S}/${PN}/doc/example/${PN}.properties"
+ insinto "/etc/${PN}/extensions"
+ find "${WORKDIR}/${PN}-auth-jdbc-${PV}/postgresql/" -name '*.jar' -exec doins '{}' +
+ insinto "/usr/share/${PN}/schema"
+ find "${WORKDIR}/${PN}-auth-jdbc-${PV}/postgresql/schema/" -name '*.sql' -exec doins '{}' +
+ insinto "/usr/share/${PN}/schema/upgrade"
+ find "${WORKDIR}/${PN}-auth-jdbc-${PV}/postgresql/schema/upgrade/" -name '*.sql' -exec doins '{}' +
+ elog "Please add a postgresql database and a user and load the sql files in /usr/share/guacamole/schema/ into it."
+ elog "If this is an update, then you will need to apply the appropriate update script in the location above."
+ elog "You will also need to adjust the DB propeties in /etc/guacamole.properties!"
+ elog "The default user and it's password is \"guacadmin\"."
+ elog "You will also need to download the postgresql-connector from here https://jdbc.postgresql.org/download.html#current"
+ elog "and put the contained .jar file into /etc/guacamole/lib!"
+ elog "-"
+ fi
+ if use ldap; then
+ echo ldap-hostname: localhost >>"${S}/${PN}/doc/example/${PN}.properties"
+ echo ldap-port: 389 >>"${S}/${PN}/doc/example/${PN}.properties"
+ echo ldap-user-base-dn: ou=people,dc=example,dc=net >>"${S}/${PN}/doc/example/${PN}.properties"
+ echo ldap-username-attribute: uid >>"${S}/${PN}/doc/example/${PN}.properties"
+ echo ldap-config-base-dn: ou=groups,dc=example,dc=net >>"${S}/${PN}/doc/example/${PN}.properties"
+ sed -e 's:basic-user-mapping:#basic-user-mapping:' -i "${S}/${PN}/doc/example/${PN}.properties"
+ insinto "/etc/${PN}/extensions"
+ find "${WORKDIR}/${PN}-auth-ldap-${PV}" -name '*.jar' -exec doins '{}' +
+ insinto "/usr/share/${PN}/schema"
+ doins "${WORKDIR}/${PN}-auth-ldap-${PV}/schema/guacConfigGroup.ldif" "${WORKDIR}/${PN}-auth-ldap-${PV}/schema/guacConfigGroup.schema"
+ elog "You will need to add and load the .schema file in /usr/share/guacamole/schema/ to your ldap server."
+ elog "There is also an example .lidf file for creating the users."
+ elog "-"
+ fi
+ insinto "/etc/${PN}"
+ doins "${WORKDIR}/${PN}-client-${PV}/${PN}/doc/example/user-mapping.xml"
+ insinto "/etc/${PN}"
+ doins "${S}/${PN}/doc/example/guacamole.properties"
+ echo "GUACAMOLE_HOME=/etc/guacamole" >98guacamole
+ doenvd 98guacamole
+ insinto "/var/lib/${PN}"
+ newins "${S}/${PN}/target/${P}.war" "${PN}.war"
+ elog "If it is an update, please make sure to delete the old webapp in /var/lib/tomcat-7/webapps/ first!"
+ elog "To deploy guacamole with tomcat, you will need to link the war file and create the configuration!"
+ elog "ln -sf /var/lib/${PN}/${PN}.war /var/lib/tomcat-7/webapps/"
+ elog "You will also need to adjust the configuration in /etc/${PN}/${PN}.properties"
+ elog "See http://guac-dev.org/doc/${PV}/gug/configuring-guacamole.html#initial-setup for a basic setup"
+ elog "or http://guac-dev.org/doc/${PV}/gug/jdbc-auth.html for a database for authentication and host definitions."
+}