# pubspace [![Build Status](https://drone.autonomic.zone/api/badges/ruangrupa/pubspace/status.svg?ref=refs/heads/main)](https://drone.autonomic.zone/ruangrupa/pubspace) A service to facilitate collective digital publishing practices. ## How does publishing happen? ### cloud.lumbung.space > **WARNING**: Only file sharing is implemented - When a file is tagged with the `publish` tag, a share link will be generated - This share link will be shown on the `publish.lumbung.space` prototype page ### social.lumbung.space - When a toot uses the hashtag `#pubspace` (a comment on a thread will also "unroll" the entire thread) - Only toots with `visibility: public` will be published. Local only posts and otherwise private posts are respected. - This toot link will be shown on the `publish.lumbung.space` prototype page ### tv.lumbung.space - When someone comments on a published video using the `#pubspace` hashtag - This toot link will be shown on the `publish.lumbung.space` prototype page ## Supported services - [cloud.lumbung.space](https://cloud.lumbung.space/) ([Nextcloud](https://nextcloud.com/)) - [tv.lumbung.space](https://tv.lumbung.space/) ([Peertube](https://joinpeertube.org/)) - [social.lumbung.space](https://social.lumbung.space/) ([Hometown](https://github.com/hometown-fork/hometown)) ## Nextcloud flow script See the [pubspace.sh](./pubspace.sh) script. This is manually copied over into `/var/www/html/pubspace/pubspace.sh` for now. There is a workflow scripts rule configured that when a file is tagged, the script is run. The script sends the filename to this service and then we use the [pyocclient](https://github.com/owncloud/pyocclient) to generate a share for that file. The Nextcloud crontab runs the script. ## Deployment > Work In Progress ``` $ printf $YOURMASTODONACCESSTOKEN | docker secret create publish_lumbung_space_access_token_v1 - $ printf $YOURNEXTCLOUDAPPPASSWORD | docker secret create publish_lumbung_space_app_password_v1 - $ cp .env.sample .env # and update the values to match the environment $ set -a && source .env && set +a $ docker stack deploy -c compose.yml publish_lumbung_space ```