@cryptotaxi247 / kubo / commits / 426cb8425

docs(readme): official vs unofficial packages

Marcin Rataj committed Aug 31, 2022 at 00:14 UTC 426cb8425589b3ef301ac844db8f84963c54fa37
1 file changed +74 -74
README.md
+74 -74
@@ -15,8 +15,8 @@ Kubo (go-ipfs) the earliest and most widely used implementation of IPFS.
15 It includes:
16 - an IPFS daemon server
17 - extensive [command line tooling](https://docs.ipfs.tech/reference/kubo/cli/)
18 -- an [HTTP Gateway](https://github.com/ipfs/specs/tree/main/http-gateways#readme) (`/ipfs/`, `/ipns/`) for serving content to HTTP browsers
19 -- an HTTP RPC API (`/api/v0`) for controlling the daemon node
18 +- an [HTTP Gateway](https://docs.ipfs.tech/reference/http/gateway/) (`/ipfs/`, `/ipns/`) for serving content to HTTP browsers
19 +- an [HTTP RPC API](https://docs.ipfs.tech/reference/kubo/rpc/) (`/api/v0`) for controlling the daemon node
20
21 Note: [other implementations exist](https://docs.ipfs.tech/basics/ipfs-implementations/).
22
@@ -51,31 +51,30 @@ Before opening an issue, consider using one of the following locations to ensure
51 - [Install](#install)
52 - [System Requirements](#system-requirements)
53 - [Docker](#docker)
54 - - [Native Linux package managers](#native-linux-package-managers)
55 - - [ArchLinux](#archlinux)
54 + - [Official prebuilt binaries](#official-prebuilt-binaries)
55 + - [Updating](#updating)
56 + - [Using ipfs-update](#using-ipfs-update)
57 + - [Downloading builds using IPFS](#downloading-builds-using-ipfs)
58 + - [Unofficial Linux packages](#unofficial-linux-packages)
59 + - [ArchLinux](#arch-linux)
60 - [Nix](#nix)
61 - [Solus](#solus)
62 - [openSUSE](#opensuse)
59 - - [Other package managers](#other-package-managers)
63 - [Guix](#guix)
64 - [Snap](#snap)
62 - - [macOS package managers](#macos-package-managers)
65 + - [Unofficial MacOS packages](#unofficial-macos-packages)
66 - [MacPorts](#macports)
67 - [Nix](#nix-1)
65 - - [Homebrew](#homebrew)
66 - - [Windows package managers](#windows-package-managers)
68 + - [Homebrew](#homebrew)
69 + - [Unofficial Windows packages](#unofficial-windows-packages)
70 - [Chocolatey](#chocolatey)
71 - [Scoop](#scoop)
69 - - [Install prebuilt binaries](#install-prebuilt-binaries)
72 - [Build from Source](#build-from-source)
73 - [Install Go](#install-go)
74 - [Download and Compile IPFS](#download-and-compile-ipfs)
75 - [Cross Compiling](#cross-compiling)
76 - [OpenSSL](#openssl)
77 - [Troubleshooting](#troubleshooting)
76 - - [Updating](#updating)
77 - - [Using ipfs-update](#using-ipfs-update)
78 - - [Downloading builds using IPFS](#downloading-builds-using-ipfs)
78 - [Getting Started](#getting-started)
79 - [Usage](#usage)
80 - [Some things to try](#some-things-to-try)
@@ -110,16 +109,67 @@ If your system is resource-constrained, we recommend:
109
110 ### Docker
111
112 +Official images are published at https://hub.docker.com/r/ipfs/kubo/:
113 +
114 [![Docker Image Version (latest semver)](https://img.shields.io/docker/v/ipfs/kubo?color=blue&label=kubo%20docker%20image&logo=docker&sort=semver&style=flat-square&cacheSeconds=3600)](https://hub.docker.com/r/ipfs/kubo/)
115
116 More info on how to run Kubo (go-ipfs) inside Docker can be found [here](https://docs.ipfs.tech/how-to/run-ipfs-inside-docker/).
117
117 -### Native Linux package managers
118 +### Official prebuilt binaries
119 +
120 +The official binaries are published at https://dist.ipfs.tech#kubo:
121 +
122 +[![dist.ipfs.tech Downloads](https://img.shields.io/github/v/release/ipfs/kubo?label=dist.ipfs.tech&logo=ipfs&style=flat-square&cacheSeconds=3600)](https://dist.ipfs.tech#kubo)
123 +
124 +From there:
125 +- Click the blue "Download Kubo" on the right side of the page.
126 +- Open/extract the archive.
127 +- Move kubo (`ipfs`) to your path (`install.sh` can do it for you).
128 +
129 +If you are unable to access [dist.ipfs.tech](https://dist.ipfs.tech#kubo), you can also download kubo (go-ipfs) from:
130 +- this project's GitHub [releases](https://github.com/ipfs/kubo/releases/latest) page
131 +- `/ipns/dist.ipfs.tech` at [dweb.link](https://dweb.link/ipns/dist.ipfs.tech#kubo) gateway
132 +
133 +#### Updating
134 +
135 +##### Using ipfs-update
136 +
137 +IPFS has an updating tool that can be accessed through `ipfs update`. The tool is
138 +not installed alongside IPFS in order to keep that logic independent of the main
139 +codebase. To install `ipfs-update` tool, [download it here](https://dist.ipfs.tech/#ipfs-update).
140 +
141 +##### Downloading builds using IPFS
142 +
143 +List the available versions of Kubo (go-ipfs) implementation:
144 +
145 +```console
146 +$ ipfs cat /ipns/dist.ipfs.tech/kubo/versions
147 +```
148 +
149 +Then, to view available builds for a version from the previous command (`$VERSION`):
150 +
151 +```console
152 +$ ipfs ls /ipns/dist.ipfs.tech/kubo/$VERSION
153 +```
154 +
155 +To download a given build of a version:
156 +
157 +```console
158 +$ ipfs get /ipns/dist.ipfs.tech/kubo/$VERSION/kubo_$VERSION_darwin-386.tar.gz # darwin 32-bit build
159 +$ ipfs get /ipns/dist.ipfs.tech/kubo/$VERSION/kubo_$VERSION_darwin-amd64.tar.gz # darwin 64-bit build
160 +$ ipfs get /ipns/dist.ipfs.tech/kubo/$VERSION/kubo_$VERSION_freebsd-amd64.tar.gz # freebsd 64-bit build
161 +$ ipfs get /ipns/dist.ipfs.tech/kubo/$VERSION/kubo_$VERSION_linux-386.tar.gz # linux 32-bit build
162 +$ ipfs get /ipns/dist.ipfs.tech/kubo/$VERSION/kubo_$VERSION_linux-amd64.tar.gz # linux 64-bit build
163 +$ ipfs get /ipns/dist.ipfs.tech/kubo/$VERSION/kubo_$VERSION_linux-arm.tar.gz # linux arm build
164 +$ ipfs get /ipns/dist.ipfs.tech/kubo/$VERSION/kubo_$VERSION_windows-amd64.zip # windows 64-bit build
165 +```
166 +
167 +### Unofficial Linux packages
168
169 - [Arch Linux](#arch-linux)
170 - [Nix](#nix-linux)
171 - [Solus](#solus)
122 -- [openSUSE](#openSUSE)
172 +- [openSUSE](#opensuse)
173
174 #### Arch Linux
175
@@ -156,11 +206,6 @@ You can also install it through the Solus software center.
206
207 [Community Package for go-ipfs](https://software.opensuse.org/package/go-ipfs)
208
159 -### Other package managers
160 -
161 -- [Guix](#guix)
162 -- [Snap](#snap)
163 -
209 #### Guix
210
211 GNU's functional package manager, [Guix](https://www.gnu.org/software/guix/), also provides a go-ipfs package:
@@ -171,6 +216,11 @@ $ guix package -i go-ipfs
216
217 #### Snap
218
219 +> ⚠️ **SNAP USE IS DISCOURAGED**
220 +>
221 +> If you want something more sophisticated to escape the Snap confinement, we recommend using a different method to install Kubo so that it is not subject to snap confinement.
222 +
223 +
224 With snap, in any of the [supported Linux distributions](https://snapcraft.io/docs/core/install):
225
226 ```
@@ -183,14 +233,6 @@ The snap sets `IPFS_PATH` to `SNAP_USER_COMMON`, which is usually `~/snap/ipfs/c
233 $ sudo mount --bind ~/.ipfs ~/snap/ipfs/common
234 ```
235
186 -If you want something more sophisticated to escape the snap confinement, we recommend using a different method to install kubo so that it is not subject to snap confinement.
187 -
188 -#### macOS package managers
189 -
190 -- [MacPorts](#macports)
191 -- [Nix](#nix-macos)
192 -- [Homebrew](#Homebrew)
193 -
236 #### MacPorts
237
238 The package [ipfs](https://ports.macports.org/port/ipfs) currently points to kubo (go-ipfs) and is being maintained.
@@ -217,7 +259,7 @@ A Homebrew formula [ipfs](https://formulae.brew.sh/formula/ipfs) is maintained t
259 $ brew install --formula ipfs
260 ```
261
220 -### Windows package managers
262 +### Unofficial Windows packages
263
264 - [Chocolatey](#chocolatey)
265 - [Scoop](#scoop)
@@ -239,18 +281,12 @@ PS> scoop bucket add extras
281 PS> scoop install go-ipfs
282 ```
283
242 -### Install prebuilt binaries
243 -
244 -[![dist.ipfs.tech Downloads](https://img.shields.io/github/v/release/ipfs/kubo?label=dist.ipfs.tech&logo=ipfs&style=flat-square&cacheSeconds=3600)](https://dweb.link/ipns/dist.ipfs.tech#kubo)
284 +### Unofficial macOS packages
285
246 -From there:
247 -- Click the blue "Download kubo" on the right side of the page.
248 -- Open/extract the archive.
249 -- Move kubo (`ipfs`) to your path (`install.sh` can do it for you).
286 +- [MacPorts](#macports)
287 +- [Nix](#nix-macos)
288 +- [Homebrew](#homebrew)
289
251 -If you are unable to access [dist.ipfs.tech](https://dist.ipfs.tech#kubo), you can also download kubo (go-ipfs) from:
252 -- this project's GitHub [releases](https://github.com/ipfs/kubo/releases/latest) page
253 -- `/ipns/dist.ipfs.tech` at [dweb.link](https://dweb.link/ipns/dist.ipfs.tech#kubo) gateway
290
291 ### Build from Source
292
@@ -320,42 +356,6 @@ dependencies as well.
356 - Shell command completions can be generated with one of the `ipfs commands completion` subcommands. Read [docs/command-completion.md](docs/command-completion.md) to learn more.
357 - See the [misc folder](https://github.com/ipfs/kubo/tree/master/misc) for how to connect IPFS to systemd or whatever init system your distro uses.
358
323 -### Updating
324 -
325 -#### Using ipfs-update
326 -
327 -IPFS has an updating tool that can be accessed through `ipfs update`. The tool is
328 -not installed alongside IPFS in order to keep that logic independent of the main
329 -codebase. To install `ipfs update`, [download it here](https://dist.ipfs.tech/#ipfs-update).
330 -
331 -#### Downloading builds using IPFS
332 -
333 -<!-- TODO: rename this section after we figure out if dist.ipfs.tech sgould produce both /go-ipfs/ and /kubo/ -->
334 -
335 -List the available versions of kubo (go-ipfs) implementation:
336 -
337 -```
338 -$ ipfs cat /ipns/dist.ipfs.tech/go-ipfs/versions
339 -```
340 -
341 -Then, to view available builds for a version from the previous command ($VERSION):
342 -
343 -```
344 -$ ipfs ls /ipns/dist.ipfs.tech/go-ipfs/$VERSION
345 -```
346 -
347 -To download a given build of a version:
348 -
349 -```
350 -$ ipfs get /ipns/dist.ipfs.tech/go-ipfs/$VERSION/go-ipfs_$VERSION_darwin-386.tar.gz # darwin 32-bit build
351 -$ ipfs get /ipns/dist.ipfs.tech/go-ipfs/$VERSION/go-ipfs_$VERSION_darwin-amd64.tar.gz # darwin 64-bit build
352 -$ ipfs get /ipns/dist.ipfs.tech/go-ipfs/$VERSION/go-ipfs_$VERSION_freebsd-amd64.tar.gz # freebsd 64-bit build
353 -$ ipfs get /ipns/dist.ipfs.tech/go-ipfs/$VERSION/go-ipfs_$VERSION_linux-386.tar.gz # linux 32-bit build
354 -$ ipfs get /ipns/dist.ipfs.tech/go-ipfs/$VERSION/go-ipfs_$VERSION_linux-amd64.tar.gz # linux 64-bit build
355 -$ ipfs get /ipns/dist.ipfs.tech/go-ipfs/$VERSION/go-ipfs_$VERSION_linux-arm.tar.gz # linux arm build
356 -$ ipfs get /ipns/dist.ipfs.tech/go-ipfs/$VERSION/go-ipfs_$VERSION_windows-amd64.zip # windows 64-bit build
357 -```
358 -
359 ## Getting Started
360
361 ### Usage