akkoma-ipfs/README.md

1.3 KiB

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

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