A simple, but not stupid, ipfs uploader for akkoma. Bundled as a module.
lib/pleroma | ||
test/pleroma/uploaders | ||
.gitignore | ||
LICENSE | ||
README.md |
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 Gatewayapi_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
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
Akkoma commit alignment group by branch
- master: fef4bae0067fcd6e102e3d625390e8ae909c6bb8
- develop: fef4bae0067fcd6e102e3d625390e8ae909c6bb8