#16477: Native ipfs / ipns support
--------------------------------------+--------------------------
Reporter: kallisti5 | Owner: axeld
Type: enhancement | Status: new
Priority: low | Milestone: Unscheduled
Component: Network & Internet/Stack | Version: R1/beta2
Keywords: | Blocked By:
Blocking: | Platform: All
--------------------------------------+--------------------------
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.
--
Ticket URL: <https://dev.haiku-os.org/ticket/16477>
Haiku <https://dev.haiku-os.org>
The Haiku operating system.