aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--www/Makefile1
-rw-r--r--www/moodle30/Makefile84
-rw-r--r--www/moodle30/distinfo2
-rw-r--r--www/moodle30/files/pkg-message.in66
-rw-r--r--www/moodle30/pkg-descr7
5 files changed, 160 insertions, 0 deletions
diff --git a/www/Makefile b/www/Makefile
index 920260a092fb..709717f48bf5 100644
--- a/www/Makefile
+++ b/www/Makefile
@@ -538,6 +538,7 @@
SUBDIR += mongrel2
SUBDIR += moodle28
SUBDIR += moodle29
+ SUBDIR += moodle30
SUBDIR += mozplugger
SUBDIR += multisort
SUBDIR += multiwatch
diff --git a/www/moodle30/Makefile b/www/moodle30/Makefile
new file mode 100644
index 000000000000..75e82876f24e
--- /dev/null
+++ b/www/moodle30/Makefile
@@ -0,0 +1,84 @@
+# Created by: Javier Martin Rueda <jmrueda@diatel.upm.es>
+# $FreeBSD$
+
+PORTNAME= moodle
+PORTVERSION= 3.0
+CATEGORIES= www
+MASTER_SITES= SF/moodle/Moodle/stable30/
+PKGNAMESUFFIX= ${PKGORIGIN:T:S/moodle//}
+
+MAINTAINER= wen@FreeBSD.org
+COMMENT= Course management system based on social constructionism
+
+LICENSE= GPLv3
+
+BUILD_DEPENDS= ${PHPBASE}/lib/php/${PHP_EXT_DIR}/intl.so:${PORTSDIR}/devel/pecl-intl
+RUN_DEPENDS= ${PHPBASE}/lib/php/${PHP_EXT_DIR}/intl.so:${PORTSDIR}/devel/pecl-intl
+
+CONFLICTS= moodle28-2.8.[0-9]* moodle29-2.9.[0-9]*
+
+USES= tar:tgz
+USE_PHP= session gd pcre mbstring iconv tokenizer curl xml xmlrpc ctype \
+ soap openssl simplexml spl dom json zip zlib hash opcache
+WRKSRC= ${WRKDIR}/moodle
+
+OPTIONS_SINGLE= BACKEND
+OPTIONS_SINGLE_BACKEND= MYSQL PGSQL MSSQL
+OPTIONS_DEFINE= LDAP MIMETEX
+OPTIONS_DEFAULT= MYSQL
+MIMETEX_DESC= mimeTeX filter functionality support
+
+.include <bsd.port.options.mk>
+
+.if ${PORT_OPTIONS:MMYSQL}
+USE_PHP+= mysqli
+.endif
+
+.if ${PORT_OPTIONS:MPGSQL}
+USE_PHP+= pgsql
+.endif
+
+.if ${PORT_OPTIONS:MMSSQL}
+USE_PHP+= mssql
+.endif
+
+.if ${PORT_OPTIONS:MLDAP}
+USE_PHP+= ldap
+.endif
+
+.if ${PORT_OPTIONS:MMIMETEX}
+RUN_DEPENDS+= ${LOCALBASE}/www/mimetex/cgi-bin/mimetex.cgi:${PORTSDIR}/www/mimetex
+.endif
+
+NO_BUILD= yes
+PLIST= ${WRKDIR}/plist
+SUB_FILES= pkg-message
+SUB_LIST= MOODLEDIR=${MOODLEDIR} \
+ MOODLEDATADIR=${MOODLEDATADIR}
+
+MOODLEDIR?= www/moodle
+MOODLEDATADIR?= moodledata
+
+pre-install:
+ @${ECHO_CMD} "@owner ${WWWOWN}" >> ${PLIST}
+ @${ECHO_CMD} "@group ${WWWGRP}" >> ${PLIST}
+ @${ECHO_CMD} "@mode 755" >> ${PLIST}
+ @${ECHO} @dir ${MOODLEDATADIR} >> ${PLIST}
+ @${ECHO_CMD} "@mode" >> ${PLIST}
+ @${ECHO_CMD} "@group" >> ${PLIST}
+ @${ECHO_CMD} "@owner" >> ${PLIST}
+
+# Here for safety I do not set moodle diretory 0755 permission
+# It require user write config.php manually then.
+ @${FIND} -s -d ${WRKSRC} -type f | ${SED} "s?${WRKSRC}?${MOODLEDIR}?g" >>${PLIST}
+ @${FIND} -s -d ${WRKSRC} -type d | ${SED} "s?${WRKSRC}?@dir ${MOODLEDIR}?g" >> ${PLIST}
+
+do-install:
+ @cd ${WRKSRC} && ${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/${MOODLEDIR}
+ @${INSTALL} -d ${STAGEDIR}${PREFIX}/${MOODLEDATADIR}
+.if ${PORT_OPTIONS:MMIMETEX}
+ ${LN} -sf ${PREFIX}/www/mimetex/cgi-bin/mimetex.cgi \
+ ${STAGEDIR}${PREFIX}/${MOODLEDIR}/filter/tex/mimetex.freebsd
+.endif
+
+.include <bsd.port.mk>
diff --git a/www/moodle30/distinfo b/www/moodle30/distinfo
new file mode 100644
index 000000000000..94b3fdfad73b
--- /dev/null
+++ b/www/moodle30/distinfo
@@ -0,0 +1,2 @@
+SHA256 (moodle-3.0.tgz) = bd7b4df293ea04d857093e328a05cc85514dfe6a58614dfac24ac92e1dd55380
+SIZE (moodle-3.0.tgz) = 37986599
diff --git a/www/moodle30/files/pkg-message.in b/www/moodle30/files/pkg-message.in
new file mode 100644
index 000000000000..78e588e304d9
--- /dev/null
+++ b/www/moodle30/files/pkg-message.in
@@ -0,0 +1,66 @@
+POST-INSTALL CONFIGURATION FOR MOODLE
+=====================================
+
+1) Create a user and a database for Moodle to store all
+ its tables in (or choose an existing database).
+ It doesn't matter what the database or user names are,
+ as this will be configured in a later step.
+ NOTE: this package assumes that either the phpX-pgsql,
+ phpX-mysql, or phpX-mssql packages are installed.
+
+2) Add the following to your Apache configuration file
+ httpd.conf, and restart the server:
+
+ For Apache versions earlier than 2.4:
+
+ Alias /moodle %%PREFIX%%/%%MOODLEDIR%%/
+ AcceptPathInfo On
+ <Directory %%PREFIX%%/%%MOODLEDIR%%>
+ AllowOverride None
+ Order Allow,Deny
+ Allow from all
+ </Directory>
+
+ For Apache version 2.4.x or above:
+
+ Alias /moodle %%PREFIX%%/%%MOODLEDIR%%/
+ AcceptPathInfo On
+ <Directory %%PREFIX%%/%%MOODLEDIR%%/>
+ AllowOverride None
+ Require all granted
+ </Directory>
+
+3) Visit your Moodle site with a browser (i.e.,
+ http://your.server.com/moodle/), and you should
+ be taken to the install.php script, which will lead
+ you through creating a config.php file and then
+ setting up Moodle, creating an admin account, etc.
+
+ At one step, you will get a message saying that the
+ installer script was not able to automatically create
+ the config.php file. Just download it and copy it to
+ %%PREFIX%%/%%MOODLEDIR%%/config.php. Beware that it
+ will contain the database password in cleartext, so
+ set up whatever file permissions you deem more adequate.
+ For instance, user=root, group=www, mask=640.
+
+4) Set up a cron task to invoke the file admin/cron.php
+ every five minutes or so. For instance:
+ */5 * * * * fetch http://your.server.com/moodle/admin/cron.php
+
+For more information, see the INSTALL DOCUMENTATION:
+
+ http://docs.moodle.org/en/Installing_Moodle
+
+It may be worth reading the installation docs even if Moodle seems
+to be working at first, to ensure your PHP settings and database
+configuration will allow Moodle to operate properly.
+
+If you are upgrading from an earlier version of Moodle, check out
+possible additional steps at:
+
+ http://docs.moodle.org/en/Upgrading
+ http://docs.moodle.org/en/Upgrading_to_Moodle_2.0
+
+If you have real trouble, please visit the Moodle course
+"Using Moodle" on moodle.org.
diff --git a/www/moodle30/pkg-descr b/www/moodle30/pkg-descr
new file mode 100644
index 000000000000..fe30e0d25bab
--- /dev/null
+++ b/www/moodle30/pkg-descr
@@ -0,0 +1,7 @@
+Moodle is a course management system (CMS) - a free, Open Source software
+package designed using sound pedagogical principles, to help educators
+create effective online learning communities. You can use it on any
+computer you have handy (including webhosts), yet it can scale from a
+single-teacher site to a 40,000-student University.
+
+WWW: http://www.moodle.org/