https://github.com/agregoreweb/agregore-ipfs-daemon
https://github.com/agregoreweb/agregore-ipfs-daemon
Last synced: 3 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/agregoreweb/agregore-ipfs-daemon
- Owner: AgregoreWeb
- License: other
- Created: 2022-03-02T19:47:55.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2022-05-24T21:37:59.000Z (about 4 years ago)
- Last Synced: 2025-07-16T14:56:08.926Z (11 months ago)
- Language: Go
- Size: 2.07 MB
- Stars: 6
- Watchers: 2
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE-APACHE2
Awesome Lists containing this project
README
# agregore-ipfs-daemon
**Work in progress**
The [go-ipfs](./go-ipfs/) directory is forked from [go-ipfs v0.12.2](https://github.com/ipfs/go-ipfs/tree/v0.12.2), but the important part are the changes in [gateway_handler.go](./go-ipfs/core/corehttp/gateway_handler.go) and [pubsub.go](./go-ipfs/core/corehttp/pubsub.go).
Other modules like `go-libp2p-kad-dht` and `go-namesys` have also been forked and included in this repo. They contain multiple changes to improve IPNS publish time. See [this PR](https://github.com/AgregoreWeb/agregore-ipfs-daemon/pull/7) for details.
## Building
While this gateway is designed for mobile usage, you can build it for desktop for debugging and development. Just run `go build`.
For mobile, an Android library file (.aar) is built, to be imported and used in an Android project. We have created a docker container that has all the required dependencies to make building easy. Just run:
```
docker run --rm -v "$PWD":/module makeworld/gomobile-android bind -target=android/arm -javapkg=moe.mauve.agregore.ipfs -o agregore-ipfs-daemon.aar ./gateway
```
*Note: the container image is 4.1 GB uncompressed*
## Development
Currently Go 1.17 is required, Go 1.18 will not work due to [this issue](https://github.com/ipfs/go-ipfs/issues/8819) which affects the go-ipfs version included in this repo.
Instead of running `go mod tidy` run:
```
go mod tidy && go get -d golang.org/x/mobile/cmd/gomobile@447654d348e36cdac65810aa73b4fc8e7b3ceef1
```
`go mod tidy` will remove the dependency on `golang.org/x/mobile` which is required for the Android build. Running the command above will tidy things, but keep the dependency intact.
## License
This repo is dual-licensed under the MIT and APACHE2 licenses. Please see [LICENSE-MIT](LICENSE-MIT) and [LICENSE-APACHE2](LICENSE-APACHE2) for details.