diff --git a/docs/en/020_Getting_Started/020_Download_and_Installation.md b/docs/en/020_Getting_Started/020_Download_and_Installation.md index aa3e0a3..bcae4e9 100644 --- a/docs/en/020_Getting_Started/020_Download_and_Installation.md +++ b/docs/en/020_Getting_Started/020_Download_and_Installation.md @@ -3,3 +3,48 @@ # Downloading The Arse The latest version of The Arsse can be downloaded [from our releases page](https://code.mensbeam.com/MensBeam/arsse/releases). The attachments named _arsse-x.x.x.tar.gz_ should be used rather than those marked "Source Code". + +Installation from source code is also possible, but the release packages are recommended. + +# Installation + +At present installing The Arsse is largely a manual process. We hope to some day make this easier by integrating the software into commonly used package managers, but for now the below instructions should serve as a useful guide. + +In order for The Arsse to function correctly, [its requirements](Requirements) must be satisfied. The process of installing the required PHP extensions differs from one system to the next, but on Debian the following series of commands should do: + +```sh +# Install PHP; this assumes the FastCGI process manager will be used +sudo apt install php-cli php-fpm +# Install the needed PHP extensions; curl is optional +sudo apt install php-intl php-json php-xml php-curl +# Install one of the required database extensions +sudo apt install php-sqlite3 php-pgsql php-mysql +``` + +Then, it's a simple matter of unpacking the archive someplace (`/usr/share/arsse` is the recommended location on Linux systems, but it can be anywhere) and setting permissions: + +```sh +# Unpack the archive +sudo tar -xzf arsse-x.x.x.tar.gz -C "/usr/share" +# Make the user running the Web server the owner of the files +sudo chown -R www-data:www-data "/usr/share/arsse" +# Ensure the owner can create files such as the SQLite database +sudo chmod o+rwX "/usr/share/arsse" +``` + +Finally, The Arsse's newsfeed refreshing service needs to be installed in order for news to actually be fetched from the Internet: + +```sh +# Copy the service unit +sudo cp "/usr/share/arsse/dist/arsse.service" "/etc/systemd/system" +# Modify the unit file if needed +sudoedit "/etc/systemd/system/arsse.service" +# Enable and start the service +sudo systemctl enable --now arsse.service +``` + +If using a database other than SQLite, you will likely want to [set it up](Database_Setup) before setting up the service. + +# Next Steps + +In order for The Arsse to serve users, those users [must be created](Managing_Users), and in order for the various synchronization protocols to work, a Web server [must be configured](Web_Server_Configuration). The following manual pages provide details on how to get this set up.