Compare commits

..

No commits in common. "d77cdb52434459c413415a9a03f96e17f5236ff8" and "bc8dc62ca1f77ce8a2a6167b4fce84d8817038c6" have entirely different histories.

2 changed files with 19 additions and 29 deletions

View File

@ -4,39 +4,31 @@
A service to facilitate collective digital publishing practices.
## How does publishing happen?
## Mapping out the pubspace
### cloud.lumbung.space
- **Services**:
> **WARNING**: Only file sharing is implemented
- [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))
- [lumbung.space](https://lumbung.space/) ([Hugo](https://gohugo.io/))
- 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
- **Types of shares**:
### social.lumbung.space
- **cloud.lumbung.space**: links to file paths
- **tv.lumbung.space**: links to videos
- **social.lumbung.space**: links to posts
- 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))
- **Publishing flows**:
- **cloud.lumbung.space**: Using [Nextcloud flows](https://nextcloud.com/blog/nextcloud-flow-makes-it-easy-to-automate-actions-and-workflows/), we can trigger an outgoing HTTP request towards `pubspace`
- **tv.lumbung.space**: Using [a federation client](https://mastodonpy.readthedocs.io/) we can watch for specific hashtags to trigger publishing
- **social.lumbung.space**: Using [a federation client](https://mastodonpy.readthedocs.io/), we can watch for specific hashtags to trigger publishing
## 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.
```bash
echo "TODO"
```
## Deployment

View File

@ -1,9 +1,7 @@
#!/bin/bash
FILE="$1"
#!/bin/sh
/usr/bin/curl \
-H "Content-Type: application/json" \
-X GET \
-d "{\"file\":\"${FILE}\"}" \
-d '{"username":"xyz","password":"xyz"}' \
https://publish.lumbung.space