Opened 4 years ago
Last modified 4 years ago
#16477 new enhancement
Native ipfs / ipns support — at Initial Version
Reported by: | kallisti5 | Owned by: | axeld |
---|---|---|---|
Priority: | low | Milestone: | Unscheduled |
Component: | Network & Internet/Stack | Version: | R1/beta2 |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Platform: | All |
Description
Was thinking about this, and native ipfs / ipns support in haiku would be pretty neat. It could be implemented the same way gopher is implemented (but instead of directly communicating with IPFS, just returning a gateway URL)
Relevant code locations:
- src/kits/network/libnetapi/IPFSRequest.cpp
- src/apps/webpositive/BrowserWindow.cpp
We could parse ipfs URL's and translate them to a public IPFS gateway:
ipfs://Qm..../index.html V https://cloudflare-ipfs.com/ipfs/Qm.../index.html
The gateway should be configurable. You can use a public gateway, one on your network, or an IPFS gateway running locally...
ipfs://Qm..../index.html V http://127.0.0.1:8080/ipfs/Qm.../index.html
IPNS support would give basic name resolution support:
ipns://coolsite.com/index.html V http://127.0.0.1:8080/ipns/coolsite.com/index.html
This is kind of a "minimum" implementation allowing handling ipfs addresses.
More information: https://ipfs.io
Gopher mentions needing to be converted to an add-on.. I *think* this could be implemented out of tree as an install-able add-on, but I don't see fundamental add-on support in our network kit to do such a thing. If this is the concensus, then this ticket should be replaced with one to implement add-on network kit URI resolvers.