aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYuchen Pei <hi@ypei.me>2022-09-16 11:48:33 +1000
committerYuchen Pei <hi@ypei.me>2022-09-16 11:48:33 +1000
commit410a096a1a288ee4d5b41436d2e2530658453c74 (patch)
tree825408cba7ecb4c511c49cd43d17927f0f34ff86
parent36bbc1b57d51e55589212df3844d447275634f5b (diff)
Updated README
-rw-r--r--README.txt47
1 files changed, 34 insertions, 13 deletions
diff --git a/README.txt b/README.txt
index 3cbf454..e16b9f8 100644
--- a/README.txt
+++ b/README.txt
@@ -24,13 +24,26 @@ On a Debian-like system, the following command should be sufficient:
# apt install apache2 mysql-server php libapache2-mod-php php-mysql php-xml
# a2enmod rewite
-The DB server must have strict mode set to 'off'. The default must be changed in MariaDB 10.2+ or MySQL 5.7+.
-* FIXME: i did not need to do that
+You may need to turn off the STRICT_TRANS_TABLES sql mode to avoid query errors.
+
+In a sql shell, do
+
+ > SELECT @@GLOBAL.sql_mode;
+
+Note all the modes in the output, and set the mode to exclude the STRICT_TRANS_TABLES.
+
+For example, if the output was "NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES", do
+
+ > SET GLOBAL sql_mode = "NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION";
+
+* FIXME: apparently this is not needed in some cases. Find the root cause.
== Installation and configuration ==
-Extract the tarball or clone the VCS to your filesystem.
+Extract the tarball or clone the VCS to your filesystem:
+
+git clone https://git.savannah.gnu.org/git/h-source.git
You have to create the MySQL database used by h-source. The tables of the database that have to be created are written inside the file tables.sql and distros.sql. A way to carry out this operation is the following:
@@ -79,15 +92,29 @@ Now you have created the database named <DB> and populated it with the default a
username: admin
password: admin
-* FIXME: IIRC, no user was created by the preceding commands, i had to create the 'admin' user manually
+* FIXME: apparently, this is not created sometimes.
> CREATE USER '<USERNAME>'@'localhost' IDENTIFIED BY '<PASSWORD>';
> GRANT ALL ON <DB>.* TO '<USERNAME>'@'localhost' IDENTIFIED BY '<PASSWORD>' WITH GRANT OPTION;
> FLUSH PRIVILEGES;
-Now you have to copy the extracted h-source files inside the DocumentRoot of your server. You can choose to leave all the files inside the DocumentRoot or not, see the explanations in this page (http://www.easygiant.org/learn/index/6).
+Create an apache virtual host conf pointing to the h-source directory (say it's /var/www/h-source), enable it and reload the apache web server. Here's a simple example of the Apache virtual host conf:
-You have now to ensure that the 'allowOverride' directive is active in the configuration file of your Apache server. You have to activate the 'allowOverride' directive for the folder inside which you have saved the h-source files (and the index.php file). If you have not, then your URL won't be interpreted by the 'mod_rewrite' module (you won't be able to use h-source). In a GNU/Linux system the Apache configuration file is usually saved at /etc/apache2/apache2.conf.
+ <VirtualHost *:80>
+ ServerName <DOMAIN_NAME>
+
+ DocumentRoot /var/www/h-source
+
+ <Directory /var/www/h-source>
+ Options Indexes FollowSymLinks MultiViews
+ AllowOverride All
+ Order allow,deny
+ allow from all
+ </Directory>
+
+ ErrorLog ${APACHE_LOG_DIR}/error.log
+ </VirtualHost>
+
Direct your browser to the following URL:
@@ -152,7 +179,7 @@ Modify the PHP file Application/Include/languages.php
== How to fill the vendors entry ==
After the installation, you have to fill the MySQL table containing the vendors. To carry out this task, you need to download the proper scripts using the following command:
-* FIXME: why are these scripts not in the source tree?
+* FIXME: restore the scripts.
svn co svn://svn.savannah.nongnu.org/h-source/trunk/scripts/vendorid
@@ -175,12 +202,6 @@ Be sure you have installed php-cli, then write the following command:
It will fill the 'vendors' MySql table. It will take a bit.
-== Learn the EasyGiant PHP framework ==
-
-Since h-source is an application of the EasyGiant PHP framework you can use the EasyGiant features in order to modify the h-source source code. Visit www.easygiant.org
-* FIXME: www.easygiant.org is offline
-
-
<!-- NOTE: this file is legal mediawiki syntax -->
<!-- LICENSE