www/moodle44: New port, copied from www/moodle43

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.
main
Wen Heping 2024-04-22 06:14:50 +00:00
parent b5717609c7
commit bf8c31e2d1
5 changed files with 128 additions and 0 deletions

View File

@ -436,6 +436,7 @@
SUBDIR += moodle41
SUBDIR += moodle42
SUBDIR += moodle43
SUBDIR += moodle44
SUBDIR += morty
SUBDIR += multisort
SUBDIR += multiwatch

60
www/moodle44/Makefile Normal file
View File

@ -0,0 +1,60 @@
PORTNAME= moodle
PORTVERSION= 4.4
CATEGORIES= www education
MASTER_SITES= SF/moodle/Moodle/stable404/
PKGNAMESUFFIX= ${PKGORIGIN:T:S/moodle//}${PHP_PKGNAMESUFFIX}
MAINTAINER= wen@FreeBSD.org
COMMENT= Course management system based on social constructionism
WWW= https://www.moodle.org/
LICENSE= GPLv3
CONFLICTS= moodle41-4.1.[0-9]* moodle42-4.2.[0-9]* moodle43-4.3.[0-9]*
USES= cpe php:flavors tar:tgz
USE_PHP= ctype curl dom exif fileinfo filter gd \
iconv intl mbstring opcache \
session simplexml soap sodium tokenizer \
xml xmlreader xmlrpc zip zlib
WRKSRC= ${WRKDIR}/moodle
OPTIONS_SINGLE= BACKEND
OPTIONS_SINGLE_BACKEND= MYSQL PGSQL
OPTIONS_DEFINE= LDAP
OPTIONS_DEFAULT= MYSQL
MYSQL_USES= mysql
MYSQL_USE= php=mysqli
PGSQL_USE= php=pgsql
LDAP_USE= php=ldap
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}
.include <bsd.port.mk>

3
www/moodle44/distinfo Normal file
View File

@ -0,0 +1,3 @@
TIMESTAMP = 1713748123
SHA256 (moodle-4.4.tgz) = 216e3b216b5d6e4064f20c3a78441bfc2f7f051c036c9a62ad79dc1860f2dfeb
SIZE (moodle-4.4.tgz) = 71137364

View File

@ -0,0 +1,59 @@
[
{ type: install
message: <<EOM
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:
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.
EOM
}
{ type: upgrade
message: <<EOM
If you are upgrading from an earlier version of Moodle, check out
possible additional steps at:
https://docs.moodle.org/400/en/Upgrading
If you have real trouble, please visit the Moodle course
"Using Moodle" on moodle.org.
EOM
}
]

5
www/moodle44/pkg-descr Normal file
View File

@ -0,0 +1,5 @@
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.