summaryrefslogtreecommitdiffstats
path: root/net/amule2
diff options
context:
space:
mode:
authorfjoe <fjoe@FreeBSD.org>2005-05-17 10:40:09 +0000
committerfjoe <fjoe@FreeBSD.org>2005-05-17 10:40:09 +0000
commit8f821bbdf90872f580950ab768aac0e8f5533b38 (patch)
tree523d04c2ddc0eb1de37c8ae4f8e6dbb7ad1ffaed /net/amule2
parent5161e09f73dd1657bc84b74ac292b24809cf2666 (diff)
downloadFreeBSD-ports-8f821bbdf90872f580950ab768aac0e8f5533b38.zip
FreeBSD-ports-8f821bbdf90872f580950ab768aac0e8f5533b38.tar.gz
Update to new stable release 2.0.0
PR: 80734 Submitted by: Ganael Laplanche
Diffstat (limited to 'net/amule2')
-rw-r--r--net/amule2/Makefile156
-rw-r--r--net/amule2/Makefile.man27
-rw-r--r--net/amule2/distinfo2
-rw-r--r--net/amule2/files/amuled.sh70
-rw-r--r--net/amule2/files/patch-amuleDlg.cpp24
-rw-r--r--net/amule2/pkg-descr6
-rw-r--r--net/amule2/pkg-plist121
7 files changed, 406 insertions, 0 deletions
diff --git a/net/amule2/Makefile b/net/amule2/Makefile
new file mode 100644
index 0000000..4d7c35c
--- /dev/null
+++ b/net/amule2/Makefile
@@ -0,0 +1,156 @@
+# New ports collection makefile for: amule2
+# Date created: Wed Nov 05 09:30:00 UTC 2003
+# Whom: Ganael LAPLANCHE <ganael.laplanche@martymac.com>
+#
+# $FreeBSD$
+#
+
+PORTNAME= aMule
+PORTVERSION= 2.0.0
+CATEGORIES= net
+MASTER_SITES= http://download.berlios.de/amule/
+
+MAINTAINER= ganael.laplanche@martymac.com
+COMMENT= The all-platform eMule p2p client
+
+LIB_DEPENDS= wx_gtk2u_core-2.6:${PORTSDIR}/x11-toolkits/wxgtk26-unicode \
+ curl.3:${PORTSDIR}/ftp/curl
+# gd.4:${PORTSDIR}/graphics/gd
+# png.5:${PORTSDIR}/graphics/png
+
+LATEST_LINK= aMule2
+CONFLICTS= aMule-1.* aMule-devel-[0-9]*
+
+USE_X_PREFIX= yes
+USE_GNOME= gnomehier gnomehack gnomeprefix
+USE_GMAKE= yes
+GNU_CONFIGURE= yes
+CONFIGURE_TARGET=--build=${MACHINE_ARCH}-portbld-freebsd${OSREL}
+CONFIGURE_ARGS= --disable-debug \
+ --without-included-gettext \
+ --with-libintl-prefix=${LOCALBASE} \
+ --with-libiconv-prefix=${LOCALBASE} \
+ --with-wx-config=${WX_CONFIG} \
+ --with-wxbase-config=${WX_CONFIG} \
+ --with-curl-config=${CURL_CONFIG} \
+ --enable-embedded_crypto \
+ --enable-utf8-systray \
+ --enable-monolithic
+# --with-gdlib-prefix=${LOCALBASE} \
+# --with-libpng-prefix=${LOCALBASE}
+
+CONFIGURE_ENV= CPPFLAGS="${CPPFLAGS} -I${LOCALBASE}/include ${PTHREAD_CFLAGS}" \
+ LDFLAGS="${LDFLAGS} -L${LOCALBASE}/lib ${PTHREAD_LIBS}"
+
+OPTIONS= OPTIMIZE "Build with optimization" on \
+ ED2K "Compile aMule ed2k links handler" on \
+ AMULECMD "Compile aMule command line client (+GUI)" on \
+ AMULEWEBSRV "Compile aMule WebServer (+GUI)" on \
+ CAS "Compile C aMule Statistics (+GUI)" on \
+ ALC "Compile aMule Link Creator (+GUI)" on \
+ AMULEDAEMON "Compile aMule daemon version - EXPERIMENTAL" off
+
+WX_CONFIG?= ${X11BASE}/bin/wxgtk2u-2.6-config
+CURL_CONFIG?= ${LOCALBASE}/bin/curl-config
+
+.include <bsd.port.pre.mk>
+
+.if ${OSVERSION} < 500000
+BROKEN= "Won't compile on FreeBSD 4.x - See net/amule1 for 4.x compatibility."
+.endif
+
+# Configure options
+.if defined(WITH_OPTIMIZE)
+CONFIGURE_ARGS+= --enable-optimize
+.else
+CONFIGURE_ARGS+= --disable-optimize
+.endif
+
+.if defined(WITH_ED2K)
+CONFIGURE_ARGS+= --enable-ed2k
+PLIST_SUB+= PL_ED2K=""
+.else
+CONFIGURE_ARGS+= --disable-ed2k
+PLIST_SUB+= PL_ED2K="@comment "
+.endif
+
+.if defined(WITH_AMULECMD)
+CONFIGURE_ARGS+= --enable-amulecmd --enable-amulecmdgui
+PLIST_SUB+= PL_AMULECMD=""
+.else
+CONFIGURE_ARGS+= --disable-amulecmd --disable-amulecmdgui
+PLIST_SUB+= PL_AMULECMD="@comment "
+.endif
+
+.if defined(WITH_AMULEWEBSRV)
+CONFIGURE_ARGS+= --enable-webserver --enable-webservergui
+PLIST_SUB+= PL_AMULEWEBSRV=""
+.else
+CONFIGURE_ARGS+= --disable-webserver --disable-webservergui
+PLIST_SUB+= PL_AMULEWEBSRV="@comment "
+.endif
+
+.if defined(WITH_CAS)
+CONFIGURE_ARGS+= --enable-cas --enable-wxcas
+PLIST_SUB+= PL_CAS=""
+.else
+CONFIGURE_ARGS+= --disable-cas --disable-wxcas
+PLIST_SUB+= PL_CAS="@comment "
+.endif
+
+.if defined(WITH_ALC)
+CONFIGURE_ARGS+= --enable-alc --enable-alcc
+PLIST_SUB+= PL_ALC=""
+.else
+CONFIGURE_ARGS+= --disable-alc --disable-alcc
+PLIST_SUB+= PL_ALC="@comment "
+.endif
+
+.if defined(WITH_AMULEDAEMON)
+CONFIGURE_ARGS+= --enable-amule-daemon --enable-amule-gui
+PLIST_SUB+= PL_AMULEDAEMON=""
+USE_RC_SUBR= yes
+RCSCRIPT= ${PREFIX}/etc/rc.d/amuled.sh
+.else
+CONFIGURE_ARGS+= --disable-amule-daemon --disable-amule-gui
+PLIST_SUB+= PL_AMULEDAEMON="@comment "
+.endif
+
+# Man pages management
+.include "Makefile.man"
+
+# Copy startup script if needed (amuledaemon compiled)
+post-install:
+.if defined(WITH_AMULEDAEMON)
+ ${ECHO} "Installing ${RCSCRIPT} startup file."
+ ${INSTALL_SCRIPT} ${FILESDIR}/amuled.sh ${RCSCRIPT}
+.endif
+
+# fr manpages are still incomplete and can't be managed
+# by MANLANG. Will be done when pages are complete.
+.if defined(WITH_AMULECMD)
+ ${GZIP_CMD} ${PREFIX}/man/fr/man1/amulecmd.1
+.endif
+.if defined(WITH_AMULEWEBSRV)
+ ${GZIP_CMD} ${PREFIX}/man/fr/man1/amuleweb.1
+.endif
+ ${GZIP_CMD} ${PREFIX}/man/fr/man1/amule.1
+.if defined(WITH_AMULEDAEMON)
+ ${GZIP_CMD} ${PREFIX}/man/fr/man1/amuled.1
+.endif
+.if defined(WITH_ED2K)
+ ${GZIP_CMD} ${PREFIX}/man/fr/man1/ed2k.1
+.endif
+.if defined(WITH_ALC)
+ ${GZIP_CMD} ${PREFIX}/man/fr/man1/alcc.1
+.endif
+.if defined(WITH_AMULECMD)
+ ${RM} ${PREFIX}/man/fr/man1/amulecmdDLG.1
+ ${LN} ${PREFIX}/man/fr/man1/amulecmd.1.gz ${PREFIX}/man/fr/man1/amulecmdDLG.1.gz
+.endif
+.if defined(WITH_AMULEWEBSRV)
+ ${RM} ${PREFIX}/man/fr/man1/amulewebDLG.1
+ ${LN} ${PREFIX}/man/fr/man1/amuleweb.1.gz ${PREFIX}/man/fr/man1/amulewebDLG.1.gz
+.endif
+
+.include <bsd.port.post.mk>
diff --git a/net/amule2/Makefile.man b/net/amule2/Makefile.man
new file mode 100644
index 0000000..f22f99d
--- /dev/null
+++ b/net/amule2/Makefile.man
@@ -0,0 +1,27 @@
+# TODO : Add fr here when pages are complete
+MANLANG= "" de es hu
+MANCOMPRESSED= no
+.if defined(WITH_CAS)
+MAN1+= cas.1
+MAN1+= wxcas.1
+.endif
+.if defined(WITH_ALC)
+MAN1+= alc.1
+MAN1+= alcc.1
+.endif
+.if defined(WITH_AMULEWEBSRV)
+MAN1+= amuleweb.1
+MLINKS+= amuleweb.1 amulewebDLG.1
+.endif
+.if defined(WITH_AMULECMD)
+MAN1+= amulecmd.1
+MLINKS+= amulecmd.1 amulecmdDLG.1
+.endif
+.if defined(WITH_ED2K)
+MAN1+= ed2k.1
+.endif
+.if defined(WITH_AMULEDAEMON)
+MAN1+= amuled.1
+.endif
+MAN1+= amule.1
+MAN1+= xas.1
diff --git a/net/amule2/distinfo b/net/amule2/distinfo
new file mode 100644
index 0000000..5a651f1
--- /dev/null
+++ b/net/amule2/distinfo
@@ -0,0 +1,2 @@
+MD5 (aMule-2.0.0.tar.gz) = e6680641e171ddf4236c955168947ba0
+SIZE (aMule-2.0.0.tar.gz) = 3020088
diff --git a/net/amule2/files/amuled.sh b/net/amule2/files/amuled.sh
new file mode 100644
index 0000000..7ebdbad
--- /dev/null
+++ b/net/amule2/files/amuled.sh
@@ -0,0 +1,70 @@
+#!/bin/sh
+#
+# aMule RCng startup script
+# Ogirinal work from Gabriele Cecchetti (amule.org forum)
+# Modified by Ganaël LAPLANCHE (ganael.laplanche@martymac.com)
+#
+
+# PROVIDE: amuled
+# REQUIRE: NETWORKING SERVERS
+# BEFORE: DAEMON
+# KEYWORD: FreeBSD shutdown
+
+#
+# Add the following lines to /etc/rc.conf to enable amuled at startup
+# amuled (bool): Set to "NO" by default.
+# Set it to "YES" to enable amuled
+# amuled_user (str): Set to user running amuled
+# (default 'aMule')
+# amuled_home (str): Set to home directory of user running amuled
+# (default /home/${amuled_user})
+#
+. /etc/rc.subr
+
+name="amuled"
+rcvar=`set_rcvar`
+
+load_rc_config $name
+
+[ -z "$amuled_enable" ] && amuled_enable="NO"
+[ -z "$amuled_user" ] && amuled_user="aMule"
+[ -z "$amuled_home" ] && amuled_home="/home/${amuled_user}"
+
+required_dirs=${amuled_home}
+required_files="${amuled_home}/.aMule/amule.conf"
+
+start_cmd="${name}_start"
+stop_cmd="${name}_stop"
+
+amuled_start()
+{
+ if [ ! -f /var/run/${name}.run ]
+ then
+ su -l ${amuled_user} -c "amuled &" 2>>/var/log/${name}.log >>/var/log/${name}.log && touch /var/run/${name}.run
+ echo "Started ${name}."
+ echo `date` : "Started ${name}." >> /var/log/${name}.log
+ else
+ echo "${name} seems to be already running -- remove /var/run/${name}.run manually if needed."
+ fi
+}
+
+amuled_stop()
+{
+ if [ -f /var/run/${name}.run ]
+ then
+ # The following line is much better, but doesn't stop totally amuled
+ # su -l ${amuled_user} -c "amulecmd -c Shutdown" 2>>/var/log/${name}.log >>/var/log/${name}.log
+ # Since amuled catches SIGTERM, this way is preferred for now
+ killall -TERM amuled 2>>/var/log/${name}.log >>/var/log/${name}.log ; sleep 3
+ killall -KILL amuled 2>>/var/log/${name}.log >>/var/log/${name}.log
+ # Also kill amuleweb if needed
+ killall -KILL amuleweb 2>/dev/null >/dev/null
+ rm -f /var/run/${name}.run
+ echo "Stopped ${name}."
+ echo `date` : "Stopped ${name}." >> /var/log/${name}.log
+ else
+ echo "${name} doesn't seem to be running -- create /var/run/${name}.run if needed."
+ fi
+}
+
+run_rc_command "$1"
diff --git a/net/amule2/files/patch-amuleDlg.cpp b/net/amule2/files/patch-amuleDlg.cpp
new file mode 100644
index 0000000..189eba1
--- /dev/null
+++ b/net/amule2/files/patch-amuleDlg.cpp
@@ -0,0 +1,24 @@
+--- src/amuleDlg.cpp.orig Tue May 3 20:37:09 2005
++++ src/amuleDlg.cpp Tue May 3 20:39:53 2005
+@@ -502,9 +502,9 @@
+ {
+ wxString msg = wxT(" ");
+ #ifdef CLIENT_GUI
+- msg << _("aMule remote control ") << wxT(VERSION);
++ msg << _("aMule remote control ") << wxT(VERSION) << wxT(" for FreeBSD");
+ #else
+- msg << wxT("aMule ") << wxT(VERSION);
++ msg << wxT("aMule ") << wxT(VERSION) << wxT(" for FreeBSD");
+ #endif
+ msg << wxT(" ");
+ #ifdef CVSDATE
+@@ -514,7 +514,8 @@
+ " 'All-Platform' p2p client based on eMule \n\n"
+ " Website: http://www.amule.org \n"
+ " Forum: http://forum.amule.org \n"
+- " FAQ: http://wiki.amule.org \n\n"
++ " FAQ: http://wiki.amule.org \n"
++ " FreeBSD port: http://contribs.martymac.com \n\n"
+ " Contact: admin@amule.org (administrative issues) \n"
+ " Copyright (C) 2003-2005 aMule Team \n");
+ if (is_safe_state) {
diff --git a/net/amule2/pkg-descr b/net/amule2/pkg-descr
new file mode 100644
index 0000000..afd986a
--- /dev/null
+++ b/net/amule2/pkg-descr
@@ -0,0 +1,6 @@
+aMule, the all-platform eMule p2p client
+
+aMule is a multiplatform fork of xMule
+client using wxWindows class library.
+
+WWW: http://www.amule.org
diff --git a/net/amule2/pkg-plist b/net/amule2/pkg-plist
new file mode 100644
index 0000000..64c43cf
--- /dev/null
+++ b/net/amule2/pkg-plist
@@ -0,0 +1,121 @@
+%%PL_AMULEDAEMON%%@unexec %D/etc/rc.d/amuled.sh stop > /dev/null 2>&1 || true
+%%PL_AMULEDAEMON%%etc/rc.d/amuled.sh
+%%PL_ALC%%man/fr/man1/alcc.1.gz
+%%PL_AMULEWEBSRV%%man/fr/man1/amuleweb.1.gz
+%%PL_AMULEWEBSRV%%man/fr/man1/amulewebDLG.1.gz
+%%PL_AMULECMD%%man/fr/man1/amulecmd.1.gz
+%%PL_AMULECMD%%man/fr/man1/amulecmdDLG.1.gz
+%%PL_ED2K%%man/fr/man1/ed2k.1.gz
+%%PL_AMULEDAEMON%%man/fr/man1/amuled.1.gz
+man/fr/man1/amule.1.gz
+share/locale/en_GB/LC_MESSAGES/amule.mo
+share/locale/en_US/LC_MESSAGES/amule.mo
+share/locale/es/LC_MESSAGES/amule.mo
+share/locale/de/LC_MESSAGES/amule.mo
+share/locale/fr/LC_MESSAGES/amule.mo
+share/locale/it/LC_MESSAGES/amule.mo
+share/locale/ko/LC_MESSAGES/amule.mo
+share/locale/pl/LC_MESSAGES/amule.mo
+share/locale/et_EE/LC_MESSAGES/amule.mo
+share/locale/ru/LC_MESSAGES/amule.mo
+share/locale/bg/LC_MESSAGES/amule.mo
+share/locale/es_MX/LC_MESSAGES/amule.mo
+share/locale/pt_BR/LC_MESSAGES/amule.mo
+share/locale/gl/LC_MESSAGES/amule.mo
+share/locale/eu/LC_MESSAGES/amule.mo
+share/locale/nl/LC_MESSAGES/amule.mo
+share/locale/ar/LC_MESSAGES/amule.mo
+share/locale/fi/LC_MESSAGES/amule.mo
+share/locale/zh_CN/LC_MESSAGES/amule.mo
+share/locale/zh_TW/LC_MESSAGES/amule.mo
+share/locale/da/LC_MESSAGES/amule.mo
+share/locale/hu/LC_MESSAGES/amule.mo
+share/locale/ca/LC_MESSAGES/amule.mo
+share/locale/it_CH/LC_MESSAGES/amule.mo
+share/locale/pt_PT/LC_MESSAGES/amule.mo
+share/locale/hr/LC_MESSAGES/amule.mo
+share/locale/sl/LC_MESSAGES/amule.mo
+share/gnome/doc/aMule-2.0.0/ABOUT-NLS
+share/gnome/doc/aMule-2.0.0/amulesig.txt
+share/gnome/doc/aMule-2.0.0/amule-win32.HOWTO.txt
+share/gnome/doc/aMule-2.0.0/Changelog
+share/gnome/doc/aMule-2.0.0/Doxyfile
+share/gnome/doc/aMule-2.0.0/ED2K-Links.HOWTO
+share/gnome/doc/aMule-2.0.0/INSTALL
+share/gnome/doc/aMule-2.0.0/license.txt
+share/gnome/doc/aMule-2.0.0/README
+share/gnome/doc/aMule-2.0.0/TODO
+share/gnome/doc/aMule-2.0.0/EC_Protocol.txt
+share/gnome/doc/aMule-2.0.0/socks4.protocol
+@unexec rmdir %D/share/gnome/doc/aMule-2.0.0 2>/dev/null || true
+@unexec rmdir %D/share/gnome/doc 2>/dev/null || true
+%%PL_CAS%%share/gnome/cas/tmp.html
+%%PL_CAS%%share/gnome/cas/stat.png
+%%PL_CAS%%@unexec rmdir %D/share/gnome/cas 2>/dev/null || true
+%%PL_CAS%%share/gnome/pixmaps/wxcas.xpm
+%%PL_ALC%%share/gnome/pixmaps/alc.xpm
+share/gnome/pixmaps/amule.xpm
+@unexec rmdir %D/share/gnome/pixmaps 2>/dev/null || true
+%%PL_CAS%%share/gnome/applications/wxcas.desktop
+%%PL_ALC%%share/gnome/applications/alc.desktop
+share/gnome/applications/amule.desktop
+@unexec rmdir %D/share/gnome/applications 2>/dev/null || true
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/aMule.tmpl
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/add_server.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/arrow_down.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/arrow_right.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/arrow_up.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/back.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/black.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/blue1.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/blue2.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/blue3.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/blue4.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/blue5.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/blue6.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/blue.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/cp_download.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/cp_kad.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/cp_search.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/cp_servers.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/cp_settings.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/cp_shared.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/cp_stats.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/emule.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/green.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/greenpercent.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/l_cancel.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/l_connect.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/l_down.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/l_ed2klink.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/l_info.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/log.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/logo.jpg
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/l_pause.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/l_resume.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/l_up.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/main_bg.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/main_top_bg.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/red.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/top_bar_bg2.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/top_bar_bg.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/transparent.gif
+%%PL_AMULEWEBSRV%%share/gnome/amule/webserver/default/yellow.gif
+%%PL_AMULEWEBSRV%%@unexec rmdir %D/share/gnome/amule/webserver/default 2>/dev/null || true
+%%PL_AMULEWEBSRV%%@unexec rmdir %D/share/gnome/amule/webserver 2>/dev/null || true
+%%PL_AMULEWEBSRV%%@unexec rmdir %D/share/gnome/amule 2>/dev/null || true
+lib/xchat/plugins/xas.pl
+@unexec rmdir %D/lib/xchat/plugins 2>/dev/null || true
+@unexec rmdir %D/lib/xchat 2>/dev/null || true
+%%PL_CAS%%bin/cas
+%%PL_CAS%%bin/wxcas
+%%PL_ALC%%bin/alc
+%%PL_ALC%%bin/alcc
+%%PL_AMULEWEBSRV%%bin/amuleweb
+%%PL_AMULEWEBSRV%%bin/amulewebDLG
+%%PL_AMULECMD%%bin/amulecmd
+%%PL_AMULECMD%%bin/amulecmdDLG
+%%PL_ED2K%%bin/ed2k
+%%PL_AMULEDAEMON%%bin/amulegui
+%%PL_AMULEDAEMON%%bin/amuled
+bin/amule
OpenPOWER on IntegriCloud