[DOCUMENTATION] Convert INSTALL to markdown and update the requirements

This commit is contained in:
Diogo Cordeiro 2019-06-02 16:34:24 +01:00
parent eaea9d48c5
commit 7cf4e1bb09

View File

@ -27,41 +27,32 @@ PHP modules
The following software packages are *required* for this software to The following software packages are *required* for this software to
run correctly. run correctly.
- PHP 5.6+ PHP7.x is also supported. - PHP 7+ PHP7.x is also supported.
- MariaDB 5+ MariaDB 10.x is also supported. - MariaDB 5+ MariaDB 10.x is also supported.
- Web server Apache, lighttpd and nginx will all work, see sample - Web server Apache, lighttpd and nginx will all work. CGI mode is
configuration files in the web root. Please use PHP-FPM recommended and also some variant of 'suexec' (or a
and configure mod_rewrite (or equivalent) for an optimal proper setup php-fpm pool)
experience. NOTE: mod_rewrite or its equivalent is extremely useful.
Your PHP installation must include the following PHP extensions for a Your PHP installation must include the following PHP extensions for a
functional setup of GNU Social: functional setup of GNU social:
- openssl (compiled in for Debian, enabled manually in Arch Linux) - openssl (compiled in for Debian, enabled manually in Arch Linux)
- php5-curl Fetching files by HTTP. - php-curl Fetching files by HTTP.
- php5-gd Image manipulation (scaling). - php-exif Exchangeable image information.
- php5-gmp For Salmon signatures (part of OStatus). - php-gd Image manipulation (scaling).
- php5-intl Internationalization support (transliteration et al). - php-intl Internationalization support (transliteration et al).
- php5-json For WebFinger lookups and more. - php-json For WebFinger lookups and more.
- php5-mysqlnd The native driver for PHP5 MariaDB connections. If you - php-mbstring String manipulation
use MySQL, 'php5-mysql' or 'php5-mysqli' may be enough. - php-mysql The native driver for MariaDB connections.
- php-gmp For Salmon signatures (part of OStatus)
- php-bcmath Arbitrary Precision Mathematics
- php-opcache Improved PHP performance by precompilation
- php-readline For interactive scripts
- php-xml XML parser
- php-ds Faster data structures
Or, for PHP7, some or all of these will be necessary. PHP7 works and on NOTE: Some distros require manual enabling in the relevant php.ini for some modules.
the development servers we are successful running PHP7.2. This is a good
list of PHP modules you will want installed with PHP7:
php7.0-bcmath
php7.0-curl
php7.0-exif
php7.0-gd
php7.0-intl
php7.0-mbstring
php7.0-mysql
php7.0-opcache
php7.0-readline
php7.0-xmlwriter
NOTE: In Arch Linux, at least PHP5 requires manual enabling in the
relevant php.ini for some modules, most notably 'gmp'.
Better performance Better performance
------------------ ------------------
@ -71,9 +62,19 @@ For some functionality, you will also need the following extensions:
- opcache Improves performance a _lot_. Included in PHP, must be - opcache Improves performance a _lot_. Included in PHP, must be
enabled manually in php.ini for most distributions. Find enabled manually in php.ini for most distributions. Find
and set at least: opcache.enable=1 and set at least: opcache.enable=1
- mailparse Efficient parsing of email requires this extension.
Submission by email or SMS-over-email uses this.
- sphinx A client for the sphinx server, an alternative to MySQL
or Postgresql fulltext search. You will also need a
Sphinx server to serve the search queries.
- gettext For multiple languages. Default on many PHP installs; - gettext For multiple languages. Default on many PHP installs;
will be emulated if not present. will be emulated if not present.
- exif For thumbnails to be properly oriented. - exif For thumbnails to be properly oriented.
- php-ds For faster data structures; will be emulated if not present.
You may also experience better performance from your site if you configure
a PHP cache/accelerator. Most distributions come with "opcache" support.
Enable it in your php.ini where it is documented together with its settings.
Installation Installation
============ ============
@ -220,10 +221,10 @@ following files:
display.css: a CSS2 file for "default" styling for all browsers. display.css: a CSS2 file for "default" styling for all browsers.
logo.png: a logo image for the site. logo.png: a logo image for the site.
default-avatar-profile.png: a 96x96 pixel image to use as the avatar for default-avatar-profile.png: a 96x96 pixel image to use as the avatar for
users who don't upload their own. users who don't upload their own.
default-avatar-stream.png: Ditto, but 48x48. For streams of notices. default-avatar-stream.png: Ditto, but 48x48. For streams of notices.
default-avatar-mini.png: Ditto ditto, but 24x24. For subscriptions default-avatar-mini.png: Ditto ditto, but 24x24. For subscriptions
listing on profile pages. listing on profile pages.
You may want to start by copying the files from the default theme to You may want to start by copying the files from the default theme to
your own directory. your own directory.