Skip to content

Commit 8a62e5c

Browse files
committed
Merge branch 'master' of github.com:chamilo/chamilo-lms
2 parents 0bd0b13 + b2c8020 commit 8a62e5c

File tree

148 files changed

+594
-1663
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

148 files changed

+594
-1663
lines changed

README.md

Lines changed: 23 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -17,24 +17,32 @@ Chamilo is an e-learning platform, also called "LMS", published under the GNU/GP
1717

1818
**Chamilo 2.0 is still in development. This installation procedure below is for reference only. For a stable Chamilo, please install Chamilo 1.11.x. See the 1.11.x branch's README.md for details.**
1919

20+
### Minimum server hardware requirements
21+
22+
Chamilo 2.0 has been tested on a 2 vCPUs, 2GB RAM virtual machine under Ubuntu 24.04 and has been shown to work.
23+
At this stage, we haven't made any load testing to evaluate the number of users that could use the system simultaneously.
24+
Remember this is an alpha version. As such, it will run in "dev" mode (see the `.env` file), considerably more slowly the "prod" mode.
25+
26+
### Software stack requirements
27+
2028
We assume you already have:
2129

2230
- composer 2.x - https://getcomposer.org/download/
23-
- yarn +4.x - https://yarnpkg.com/getting-started/install
31+
- yarn 4.x+ - https://yarnpkg.com/getting-started/install
2432
- Node >= v18+ (lts) - https://github.com/nodesource/distributions/blob/master/README.md
2533
- Configuring a virtualhost in a domain, not in a sub folder inside a domain.
26-
- A working LAMP/WAMP server with PHP 8.2+
34+
- A working LAMP/WAMP server with PHP 8.3+
2735

2836
### Software stack install (Ubuntu)
2937

30-
You will need PHP8.2+ and NodeJS v18+ to run Chamilo 2.
38+
You will need PHP8.3+ and NodeJS v18+ to run Chamilo 2.
3139

32-
On Ubuntu 24.04+, the following should take care of most dependencies.
40+
On Ubuntu 24.04+, the following should take care of all dependencies (certbot is optional).
3341

3442
~~~~
3543
sudo apt update
3644
sudo apt -y upgrade
37-
sudo apt install apache2 libapache2-mod-php mariadb-client mariadb-server redis php-pear php-{apcu,bcmath,cli,curl,dev,gd,intl,mbstring,mysql,redis,soap,xml,zip} git unzip curl
45+
sudo apt install apache2 libapache2-mod-php mariadb-client mariadb-server redis php-pear php-{apcu,bcmath,cli,curl,dev,gd,intl,mbstring,mysql,redis,soap,xml,zip} git unzip curl certbot
3846
sudo mysql
3947
mysql> GRANT ALL PRIVILEGES ON chamilo.* TO chamilo@localhost IDENTIFIED BY '{password}';
4048
mysql> exit
@@ -56,16 +64,16 @@ sudo apt install apache2 libapache2-mod-php8.3 mariadb-client mariadb-server red
5664
#### NodeJS, Yarn, Composer
5765

5866
If you already have nodejs installed, check the version with `node -v`
59-
Otherwise, install node 18 or above.
67+
Otherwise, install Node.js 18 or above.
6068

61-
The following lines use a static version from https://deb.nodesource.com/ (not very sustainable over time).
69+
The following lines use a static version of Node.js 20 from https://deb.nodesource.com/
6270
~~~~
6371
cd ~
6472
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo bash -
6573
sudo apt-get install -y nodejs
6674
~~~~
6775

68-
Another option to install nodejs is by using NVM (Node Version Manager). You can install it following the instructions [here](https://github.com/nvm-sh/nvm#installing-and-updating).
76+
Another option to install Node.js is by using NVM (Node Version Manager). You can install it following the instructions [here](https://github.com/nvm-sh/nvm#installing-and-updating).
6977
You can install the desired node version (preferably, the LTS version):
7078
~~~~
7179
sudo nvm install --lts
@@ -78,16 +86,16 @@ sudo corepack enable
7886
cd ~
7987
~~~~
8088

81-
Follow the instructions at https://getcomposer.org/download/ to get Composer, then:
89+
Follow the instructions at https://getcomposer.org/download/ to get Composer, then add to the local binaries for easier use:
8290
~~~~
8391
sudo mv composer.phar /usr/local/bin/composer
8492
~~~~
8593

8694
#### Apache tweaks
8795

88-
Optionally, you might want this to enable a series of Apache modules, but only ``rewrite` is 100% necessary:
96+
Apache's rewrite module is mandatory. The rest is optional and depends on your needs.
8997
~~~~
90-
sudo apt install libapache2-mod-xsendfile
98+
sudo apt install libapache2-mod-xsendfile #only for optimization if used in the vhost config
9199
sudo a2enmod rewrite ssl headers expires
92100
sudo systemctl restart apache2
93101
~~~~
@@ -106,9 +114,7 @@ When asked whether you want to execute the recipes or install plugins for some o
106114
~~~~
107115
yarn set version stable
108116
# delete yarn.lock if present, as it might contain restrictive packages from a different context
109-
yarn up
110-
yarn install
111-
yarn dev
117+
yarn up && yarn install && yarn dev
112118
# you can safely ignore any "warning" mentioned by yarn dev
113119
sudo touch .env
114120
sudo chown -R www-data: var/ .env config/
@@ -139,6 +145,8 @@ This should look similar to this very short excerpt (in your Apache vhost block)
139145
php_value session.cookie_httponly 1
140146
php_admin_value session.save_handler "redis"
141147
php_admin_value session.save_path "tcp://127.0.0.1:6379"
148+
php_admin_value upload_max_filesize 256M
149+
php_admin_value post_max_size 256M
142150
</VirtualHost>
143151
~~~~
144152
Don't forget to reload your Apache configuration after each change:
@@ -163,8 +171,7 @@ git pull
163171
composer install
164172
php bin/console doctrine:schema:update --force --complete
165173
php bin/console cache:clear
166-
yarn install
167-
yarn dev
174+
yarn install && yarn dev
168175
~~~~
169176

170177
Note for developers in alpha stage: the doctrine command will try to update

assets/locales/ar.json

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -185,7 +185,7 @@
185185
"Show Overview": "Show Overview",
186186
"Install": "Install",
187187
"New installation": "New installation",
188-
"Chamilo\\'s installation wizard": "Chamilo\\'s installation wizard",
188+
"Chamilo installation wizard": "Chamilo installation wizard",
189189
"Keyword": " \u0627\u0644\u0643\u0644\u0645\u0629 \u0627\u0644\u062f\u0644\u064a\u0644\u064a\u0629",
190190
"Assignment name": "\u0627\u0633\u0645 \u0627\u0644\u0648\u0627\u062c\u0628",
191191
"Description": "\u0648\u0635\u0641 \u0627\u0644\u0645\u0642\u0631\u0631",
@@ -246,8 +246,7 @@
246246
"Next": "\u0627\u0644\u062a\u0627\u0644\u064a",
247247
"Please select installation language": "Please select installation language",
248248
"Server requirements": "Server requirements",
249-
"Server requirements information": "Server requirements information",
250-
"PHP version ": "PHP version ",
249+
"PHP version": "PHP version",
251250
"Your PHP version matches the minimum requirement:": "PHP version is OK",
252251
"Recommended settings": "Recommended settings",
253252
"Setting": "\u0627\u0639\u062f\u0627\u062f\u0627\u062a",
@@ -277,18 +276,16 @@
277276
"Dear user": "\u0639\u0632\u064a\u0632\u064a \u0627\u0644\u0645\u0633\u062a\u062e\u062f\u0645",
278277
"E-mail": "\u0627\u0644\u0628\u0631\u064a\u062f",
279278
"Your company's name": "\u0627\u0633\u0645 \u0627\u0644\u0645\u0646\u0638\u0645\u0629",
280-
"Your company\\'s activity": "Your company\\'s activity",
279+
"Your company's activity": "\u0646\u0634\u0627\u0637\u0627\u062a \u0645\u0646\u0638\u0645\u062a\u0643",
281280
"Your job\\'s description": "Your job\\'s description",
282-
"Your company\\'s home country": "Your company\\'s home country",
281+
"Your company's home country": "\u0627\u0644\u062f\u0648\u0644\u0629 \u0627\u0644\u0627\u0645 \u0644\u0644\u0645\u0646\u0638\u0645\u0629",
283282
"Company city": "\u0627\u0644\u0645\u062f\u064a\u0646\u0629 \u0627\u0644\u062a\u064a \u062a\u0642\u0639 \u0641\u064a\u0647\u0627 \u0627\u0644\u0645\u0646\u0638\u0645\u0629",
284283
"Preferred contact language": "\u0644\u063a\u0629 \u0627\u0644\u062a\u0648\u0627\u0635\u0644 \u0627\u0644\u0645\u0641\u0636\u0644\u0629",
285284
"Do you have the power to take financial decisions on behalf of your company?": "\u0647\u0644 \u0644\u062f\u064a\u0643 \u0627\u0644\u0633\u0644\u0637\u0629 \u0644\u0627\u062a\u062e\u0627\u0630 \u0627\u0644\u0642\u0631\u0627\u0631\u0627\u062a \u0627\u0644\u0645\u0627\u0644\u064a\u0629 \u0646\u064a\u0627\u0628\u0629 \u0645\u0646\u0638\u0645\u062a\u0643",
286285
"Check database connection": "Check database connection",
287286
"Step 4 - Database settings": "Step 4 - Database settings",
288287
"Database host": "Database host",
289288
"Port": "\u0645\u064a\u0646\u0627\u0621",
290-
"Database login": "Database login",
291-
"Database password": "Database password",
292289
"Database name": "Database name",
293290
"Database port": "Database port",
294291
"Database driver": "Database driver",
@@ -324,7 +321,7 @@
324321
"Main language": "Main language",
325322
"Database": "\u0642\u0627\u0639\u062f\u0629 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a",
326323
"Database Host": "Database Host",
327-
"Database Login": "Database Username",
324+
"Database user": "Database Username",
328325
"Database Password": "Database Password",
329326
"Step 7 - Installation process execution": "Step 7 - Installation process execution",
330327
"Step 7 - Update process execution": "Step 7 - Update process execution",
@@ -605,5 +602,7 @@
605602
"Scan the QR code to enable 2FA": "Scan the QR code to enable 2FA",
606603
"QR code for 2FA": "QR code for 2FA",
607604
"Private course": "Private course",
608-
"Not subscribed": "Not subscribed"
605+
"Not subscribed": "Not subscribed",
606+
"The database connection has failed. This is generally due to the wrong user, the wrong password or the wrong database prefix being set above. Please review these settings and try again.": "\u0641\u0634\u0644 \u0627\u0644\u0627\u062a\u0635\u0627\u0644 \u0628\u0642\u0627\u0639\u062f\u0629 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a\u060c \u0647\u0630\u0627 \u064a\u062d\u062f\u062b \u0628\u0633\u0628\u0628 \u062e\u0637\u0623 \u0641\u064a \u0627\u0644\u0645\u0633\u062a\u062e\u062f\u0645\u060c \u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631 \u0627\u0648 \u0628\u0627\u062f\u0626\u0629 \u0642\u0627\u0639\u062f\u0629 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a\u060c \u064a\u0631\u062c\u0649 \u0645\u0631\u0627\u062c\u0639\u0629 \u0647\u0630\u0647 \u0627\u0644\u0627\u0639\u062f\u0627\u062f\u0627\u062a \u0645\u0631\u0629 \u0627\u062e\u0631\u0629",
607+
"Go to your newly created portal.": "Go to your newly created portal."
609608
}

assets/locales/ast_ES.json

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,7 @@
161161
"Show Overview": "Resume de la instalaci\u00f3n",
162162
"Install": "Instalar",
163163
"New installation": "Instalaci\u00f3n nueva",
164-
"Chamilo\\'s installation wizard": "Chamilo\\'s installation wizard",
164+
"Chamilo installation wizard": "Chamilo installation wizard",
165165
"Keyword": "Pallabra clave",
166166
"Assignment name": "Nome de la tarea",
167167
"Description": "Descripci\u00f3n del cursu",
@@ -209,8 +209,7 @@
209209
"Next": "Siguiente",
210210
"Please select installation language": "Please select installation language",
211211
"Server requirements": "Necesidaes del servidor",
212-
"Server requirements information": "Server requirements information",
213-
"PHP version ": "PHP version ",
212+
"PHP version": "Versi\u00f3n PHP",
214213
"Your PHP version matches the minimum requirement:": "La versi\u00f3n PHP ye correuta",
215214
"Recommended settings": "Par\u00e1metros recomendaos",
216215
"Recommended": "Recommended",
@@ -231,15 +230,11 @@
231230
"I accept": "Aceuto",
232231
"CC website": "CC website",
233232
"Dear user": "Estim\u00e1u usuariu",
234-
"Your company\\'s activity": "Your company\\'s activity",
235233
"Your job\\'s description": "Your job\\'s description",
236-
"Your company\\'s home country": "Your company\\'s home country",
237234
"Check database connection": "Comprobar la conesi\u00f3n cola base de datos",
238235
"Step 4 - Database settings": "Step 4 - Database settings",
239236
"Database host": "Database host",
240237
"Port": "Puertu",
241-
"Database login": "Database login",
242-
"Database password": "Database password",
243238
"Database name": "Database name",
244239
"Database port": "Database port",
245240
"Database driver": "Database driver",
@@ -273,7 +268,7 @@
273268
"Main language": "Idioma d'entamu",
274269
"Database": "Base de datos",
275270
"Database Host": "Servidor de base de datos",
276-
"Database Login": "Nome d'usuariu de la base de datos",
271+
"Database user": "Nome d'usuariu de la base de datos",
277272
"Database Password": "Se\u00f1a de la base de datos",
278273
"Step 7 - Installation process execution": "Step 7 - Installation process execution",
279274
"Step 7 - Update process execution": "Step 7 - Update process execution",
@@ -510,5 +505,7 @@
510505
"Scan the QR code to enable 2FA": "Scan the QR code to enable 2FA",
511506
"QR code for 2FA": "QR code for 2FA",
512507
"Private course": "Private course",
513-
"Not subscribed": "Not subscribed"
508+
"Not subscribed": "Not subscribed",
509+
"The database connection has failed. This is generally due to the wrong user, the wrong password or the wrong database prefix being set above. Please review these settings and try again.": "La conesi\u00f3n a la base de datos fall\u00f3. Pue ser que'l nome d'usuariu, la se\u00f1a o el prefixu de la base datos nun valgan. Reviselos y vuelva intentalo.",
510+
"Go to your newly created portal.": "Dir a la plataforma qu'acaba crear."
514511
}

assets/locales/bg.json

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -166,7 +166,7 @@
166166
"Show Overview": "\u041f\u043e\u044f\u0441\u043d\u0435\u043d\u0438\u044f",
167167
"Install": "\u0418\u043d\u0441\u0442\u0430\u043b\u0438\u0440\u0430\u043d\u0435",
168168
"New installation": "\u041d\u043e\u0432\u0430 \u0438\u043d\u0441\u0442\u0430\u043b\u0430\u0446\u0438\u044f",
169-
"Chamilo\\'s installation wizard": "Chamilo\\'s installation wizard",
169+
"Chamilo installation wizard": "Chamilo installation wizard",
170170
"Keyword": "\u041a\u043b\u044e\u0447\u043e\u0432\u0430 \u0434\u0443\u043c\u0430",
171171
"Assignment name": "\u0418\u043c\u0435 \u043d\u0430 \u0437\u0430\u0434\u0430\u0447\u0430\u0442\u0430",
172172
"Description": "\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u043d\u0430 \u043a\u0443\u0440\u0441\u0430",
@@ -215,8 +215,7 @@
215215
"Next": "\u0421\u043b\u0435\u0434\u0432\u0430\u0449\u0430 \u0441\u0442\u044a\u043f\u043a\u0430",
216216
"Please select installation language": "Please select installation language",
217217
"Server requirements": "\u0418\u0437\u0438\u0441\u043a\u0432\u0430\u043d\u0438\u044f \u043a\u044a\u043c \u0441\u044a\u0440\u0432\u044a\u0440\u0430",
218-
"Server requirements information": "Server requirements information",
219-
"PHP version ": "PHP version ",
218+
"PHP version": "\u0412\u0435\u0440\u0441\u0438\u044f \u043d\u0430 PHP",
220219
"Your PHP version matches the minimum requirement:": "\u0412\u0435\u0440\u0441\u0438\u044f\u0442\u0430 \u043d\u0430 PHP \u0435 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0430",
221220
"Recommended settings": "\u041f\u0440\u0435\u043f\u043e\u0440\u044a\u0447\u0438\u0442\u0435\u043b\u043d\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438",
222221
"Setting": "\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430",
@@ -241,16 +240,13 @@
241240
"CC website": "CC website",
242241
"Dear user": "\u0423\u0432\u0430\u0436\u0430\u0435\u043c\u0438 \u0433\u043e\u0441\u043f\u043e\u0434\u0438\u043d\u0435, / \u0423\u0432\u0430\u0436\u0430\u0435\u043c\u0430 \u0433\u043e\u0441\u043f\u043e\u0436\u043e,",
243242
"Your company's name": "\u0418\u043c\u0435 \u043d\u0430 \u0444\u0438\u0440\u043c\u0430\u0442\u0430",
244-
"Your company\\'s activity": "Your company\\'s activity",
243+
"Your company's activity": "\u041f\u0440\u0435\u0434\u043c\u0435\u0442 \u043d\u0430 \u0434\u0435\u0439\u043d\u043e\u0441\u0442 \u043d\u0430 \u0444\u0438\u0440\u043c\u0430\u0442\u0430",
245244
"Your job\\'s description": "Your job\\'s description",
246-
"Your company\\'s home country": "Your company\\'s home country",
247245
"Company city": "\u0421\u0435\u0434\u0430\u043b\u0438\u0449\u0435 \u043d\u0430 \u0444\u0438\u0440\u043c\u0430\u0442\u0430",
248246
"Check database connection": "\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043d\u0430 \u0432\u0440\u044a\u0437\u043a\u0430\u0442\u0430 \u043a\u044a\u043c \u0441\u044a\u0440\u0432\u044a\u0440\u0430 \u0437\u0430 \u0431\u0430\u0437\u0438 \u0434\u0430\u043d\u043d\u0438",
249247
"Step 4 - Database settings": "Step 4 - Database settings",
250248
"Database host": "Database host",
251249
"Port": "\u041f\u043e\u0440\u0442",
252-
"Database login": "Database login",
253-
"Database password": "Database password",
254250
"Database name": "Database name",
255251
"Database port": "Database port",
256252
"Database driver": "Database driver",
@@ -285,7 +281,7 @@
285281
"Main language": "\u041e\u0441\u043d\u043e\u0432\u0435\u043d \u0435\u0437\u0438\u043a",
286282
"Database": "\u0411\u0430\u0437\u0430 \u0434\u0430\u043d\u043d\u0438",
287283
"Database Host": "\u0421\u044a\u0440\u0432\u044a\u0440 \u043d\u0430 \u0431\u0430\u0437\u0438 \u0434\u0430\u043d\u043d\u0438",
288-
"Database Login": "\u041f\u043e\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043b\u0441\u043a\u043e \u0438\u043c\u0435 \u0437\u0430 \u0441\u044a\u0440\u0432\u044a\u0440\u0430 \u043d\u0430 \u0431\u0430\u0437\u0430\u0442\u0430 \u0434\u0430\u043d\u043d\u0438",
284+
"Database user": "\u041f\u043e\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043b\u0441\u043a\u043e \u0438\u043c\u0435 \u0437\u0430 \u0441\u044a\u0440\u0432\u044a\u0440\u0430 \u043d\u0430 \u0431\u0430\u0437\u0430\u0442\u0430 \u0434\u0430\u043d\u043d\u0438",
289285
"Database Password": "\u041f\u0430\u0440\u043e\u043b\u0430 \u0437\u0430 \u0441\u044a\u0440\u0432\u044a\u0440\u0430 \u043d\u0430 \u0431\u0430\u0437\u0430\u0442\u0430 \u0434\u0430\u043d\u043d\u0438",
290286
"Step 7 - Installation process execution": "Step 7 - Installation process execution",
291287
"Step 7 - Update process execution": "Step 7 - Update process execution",
@@ -526,5 +522,7 @@
526522
"Scan the QR code to enable 2FA": "Scan the QR code to enable 2FA",
527523
"QR code for 2FA": "QR code for 2FA",
528524
"Private course": "Private course",
529-
"Not subscribed": "Not subscribed"
525+
"Not subscribed": "Not subscribed",
526+
"The database connection has failed. This is generally due to the wrong user, the wrong password or the wrong database prefix being set above. Please review these settings and try again.": "\u041d\u0435 \u0441\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438 \u0432\u0440\u044a\u0437\u043a\u0430 \u043a\u044a\u043c \u0431\u0430\u0437\u0430\u0442\u0430 \u0434\u0430\u043d\u043d\u0438. \u0412\u044a\u0437\u043c\u043e\u0436\u043d\u0438 \u043f\u0440\u0438\u0447\u0438\u043d\u0438 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442: \u043d\u0435\u0441\u044a\u0449\u0435\u0441\u0442\u0432\u0443\u0432\u0430\u0449 \u043f\u043e\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043b, \u0433\u0440\u0435\u0448\u043d\u0430 \u043f\u0430\u0440\u043e\u043b\u0430, \u0433\u0440\u0435\u0448\u0435\u043d \u043f\u0440\u0435\u0444\u0438\u043a\u0441 \u0437\u0430 \u0431\u0430\u0437\u0438\u0442\u0435 \u0434\u0430\u043d\u043d\u0438. \u0412\u044a\u0437\u043c\u043e\u0436\u043d\u043e \u0435 \u0438 \u0441\u044a\u0440\u0432\u044a\u0440\u044a\u0442 \u0437\u0430 \u0431\u0430\u0437\u0438 \u0434\u0430\u043d\u043d\u0438 \u0434\u0430 \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0438 \u0432 \u043c\u0430\u043c\u0435\u043d\u0442\u0430. \u041c\u043e\u043b\u044f, \u043f\u0440\u0435\u0433\u043b\u0435\u0434\u0430\u0439\u0442\u0435 \u0438 \u043a\u043e\u0440\u0438\u0433\u0438\u0440\u0430\u0439\u0442\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438\u0442\u0435 \u043f\u043e-\u0433\u043e\u0440\u0435 \u0438 \u043e\u043f\u0438\u0442\u0430\u0439\u0442\u0435 \u043e\u0442\u043d\u043e\u0432\u043e.",
527+
"Go to your newly created portal.": "\u0412\u043b\u0435\u0437\u0442\u0435 \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0430 Chamilo."
530528
}

0 commit comments

Comments
 (0)