mash-playbook/docs/services/writefreely.md
ZenKyma a246db29a6
Add Writefreely service (#230)
* Add writefreely service

* Make writefreely.md better readable

* Change source of writefreely role from self-hosted to github

* Reintroduce admin environment variables

* Update writefreely.md

---------

Co-authored-by: timofej <timofej@vivaldi.net>
Co-authored-by: Slavi Pantaleev <slavi@devture.com>
2024-07-09 06:55:29 +03:00

3.2 KiB

WriteFreely

WriteFreely is a clean, minimalist publishing platform made for writers, federated via ActivityPub.

Dependencies

This service requires the following other services:

WriteFreely supports using a MariaDB database, but this Ansible role and playbook are not configured to make use of it.

Configuration

To enable this service, add the following configuration to your vars.yml file and re-run the installation process:

########################################################################
#                                                                      #
# writefreely                                                          #
#                                                                      #
########################################################################

writefreely_enabled: true

writefreely_hostname: writefreely.example.com

writefreely_instance_name: 'A Writefreely blog' # optional
writefreely_instance_description: 'My Writefreely blog' # optional

########################################################################
#                                                                      #
# /writefreely                                                         #
#                                                                      #
########################################################################

In the example above, we configure the service to be hosted at writefreely.example.com.

You can add the following variables to add an administrator user during the first setup process:

# You can use any username except "admin" (see below)
writefreely_env_admin_user: ''
writefreely_env_admin_password: ''

Alternatively you can add admins after installation with:

just run-tags writefreely-add-admin --extra-vars=username=<username> --extra-vars=password=<password>

Note that the username admin is unavailable, as writefreely.example.com/admin is already taken by the admin dashboard.

Additional user accounts can be added at any time once WriteFreely is running with:

just run-tags writefreely-add-user --extra-vars=username=<username> --extra-vars=password=<password>

Their respective blogs can then be accessed on writefreely.example.com/<username>.

Settings

To customize your settings on first setup, you can adjust the writefreely_env_* default variables. After installation, changes in environment variables will be ignored. But you can still change the settings at writefreely.example.com/admin/settings or by directly changing /mash/writefreely/data/config.ini.

Maintenance

In case you need to run maintenance tasks as documented in Admin commands, you can run the following commands on the server:

/usr/bin/docker exec mash-writefreely /writefreely/writefreely -c /data/config.ini [command]

For example, to delete an existing user, run:

/usr/bin/docker exec mash-writefreely /writefreely/writefreely -c /data/config.ini user delete [username]