Installing Friendica

Note that my systems virtual domains manager has a paths like this for any websites root folder/directory:

  • Main FQDN, example.com
/home/<v.domain.admin.userID>/public_html
  • Any sub-server/sub-domain, other.example.com
/home/<v.domain.admin.userID>/domains/<subdomain.fqdn.tld>/public_html

Your install commands need to be adjusted accordingly for the relative path to your root web folder.

Have some email address you want to be associated with the Admin of your server ready for later. It can be an alias of a main account you already have, your favorite email address, or some brand new one. It will be listed at Friendica if your server is a public type Friendica system.

Make an empty MariaDB database and user for the Friendica's data. (Have MySQL instead of MariaDB?)

Friendica install commands:

  1. cd <path to the directory above the server for your Friendica site>/
  2. git clone https://github.com/friendica/friendica.git -b master public_html
  3. cd public_html/
  4. bin/composer.phar install (assumes you already installed composer)
  5. git clone https://github.com/friendica/friendica-addons.git -b master addon
  6. cd
  7. crontab -e
    1. 10 * * * * cd /<full path to the root directory of the server for your Friendica site>; /usr/bin/php bin/worker.php
  8. cp .htaccess-dist .htaccess

At this point I set-up my Let's Encrypt certificate for the domain. You may now go to the web-installer and follow the instructions for linking the site to the database and user you made earlier. Just hit your corresponding URL to my "social.outsourcedmath.com" and the wizard will start.

At the end of the set-up you will enter that administrators email address. Then when it's done, you'll experience the registration to your instance (using that administrators eMail address), the way any other user will, but you'll have buttons after logging in that they don't.

Setting up the rest of your server is mainly explained at the place you need to know things, especially when it comes to setting up the add-on's. One tip I got was the "Jappix Mini" is very old and shouldn't be activated. When it comes to the XMPP (Jabber) add-on, you don't need it to be set-up for your users to take advantage of it, it just needs to be enabled. Each user can input in their settings a Jabber host that they are already using and then sign into the chat client. They can also put their XMPP id in their profile to allow other users to contact them.

Ignore this. I never got the XMPP server to work right, but these notes will get altered if I ever get it right.

Either:

https://computingforgeeks.com/how-to-install-ejabberd-xmpp-server-on-ubuntu-18-04-ubuntu-16-04/

  1. sudo apt-get install -y -f ejabberd jabberd2
  2. sudo pico /etc/ejabberd/ejabberd.yml
    1. Alter the hosts: section to include your hosts instead of the default "localhost"

Or:

https://computingforgeeks.com/how-to-install-openfire-xmpp-chat-server-on-ubuntu-18-04-ubuntu16-04/

  1. sudo apt-get -y install openjdk-11-jdk

  1. cd /<full path to the root directory of the server for your Friendica site>
  2. git pull
  3. php ~bin/composer install
  4. php ~bin/composer update
  5. cd addon
  6. git pull
  7. php ~bin/composer install
  8. php ~bin/composer update
  9. bin/console dbupdate?