akkoma-ipfs/README.md
2022-09-23 15:32:14 +02:00

33 lines
1.2 KiB
Markdown

# Akkoma module for IPFS as uploader
## Important, please read
**This module replaces the default `upload.ex` file to implement the IPFS uploader,
this because Elixir doesn't implement Monkey Patching and without the
modified `upload.ex` Akkoma won't return the right base url back.**
### Installation
* Enter in the module folder of akkoma (defined in the `config.exs`, by default Akkoma uses this: `/var/lib/akkoma/modules`)
* Clone this repo inside (only the .ex files will be loaded by Akkoma)
### Cheatsheet
* `post_gateway_url`: URL with port of POST Gateway (unauthenticated)
* `get_gateway_url`: URL of public GET Gateway
* `api_add_params`: List of params compatible with `/api/v0/add`: https://docs.ipfs.tech/reference/kubo/rpc/#api-v0-add, if not provided will be default to `['cid-version': 1]`
### Example
*config.exs*
```elixir
config :pleroma, :modules, runtime_dir: "instance/modules"
config :pleroma, Pleroma.Uploaders.IPFS,
post_gateway_url: "http://localhost:5001",
get_gateway_url: "https://{CID}.ipfs.mydomain.com",
api_add_params: ['cid-version': 1, hash: "blake3"]
config :pleroma, Pleroma.Upload,
uploader: Pleroma.Uploaders.IPFS
```