refactor: kubo in snap docs
Marcin Rataj committed
Jul 6, 2022 at 22:21 UTC
91e6451419d5b66d0d8dd3bdf6b1e3e7482a489f
2 files changed
+18
-18
docs/snap.md
+15
-15
@@ -1,15 +1,15 @@
1
-# Publishing go-ipfs as a snap
1
+# Publishing Kubo as a snap
2
3
-> Snap is the default package manager for ubuntu since the release of 20.04. This doc captures what we know about building go-ipfs as a snap package and publishing it to the snapstore.
3
+> Snap is the default package manager for ubuntu since the release of 20.04. This doc captures what we know about building Kubo as a snap package and publishing it to the snapstore.
4
5
-The go-ipfs snap is defined in [snap/snapcraft.yaml](https://github.com/ipfs/go-ipfs/blob/master/snap/snapcraft.yaml). For more detail on our snapcraft.yaml see: https://github.com/ipfs-shipyard/ipfs-snap
5
+The Kubo snap is defined in [snap/snapcraft.yaml](https://github.com/ipfs/go-ipfs/blob/master/snap/snapcraft.yaml). For more detail on our snapcraft.yaml see: https://github.com/ipfs-shipyard/ipfs-snap
6
7
-- go-ipfs is published as `ipfs` to the snapcraft store, see: https://snapcraft.io/ipfs
7
+- Kubo is published as `ipfs` to the snapcraft store, see: https://snapcraft.io/ipfs
8
- ipfs-desktop is published as `ipfs-desktop`, from CI, here: https://github.com/ipfs-shipyard/ipfs-desktop/blob/master/.github/workflows/snapcraft.yml
9
10
-For go-ipfs we deliberately lean on the Canonical lauchpad.net build environment so as it simplifies creating builds for more architectures, which has been requested by user numerous times.
10
+For Kubo we deliberately lean on the Canonical lauchpad.net build environment so as it simplifies creating builds for more architectures, which has been requested by user numerous times.
11
12
-Linux user can install go-ipfs with:
12
+Linux user can install Kubo with:
13
14
```
15
$ snap install ipfs
@@ -21,7 +21,7 @@ Apps installed via Snapcraft are auto-updating by default. Snapcraft uses 'Relea
21
$ snap install --edge ipfs
22
```
23
24
-<img width="1072" alt="Dashboard for managaing go-ipfs snap release channels for go-ipfs" src="https://user-images.githubusercontent.com/58871/95761096-bcb34580-0ca3-11eb-8ce7-2496b2456335.png">
24
+<img width="1072" alt="Dashboard for managaing Kubo snap release channels for go-ipfs" src="https://user-images.githubusercontent.com/58871/95761096-bcb34580-0ca3-11eb-8ce7-2496b2456335.png">
25
26
## Known issues
27
@@ -51,7 +51,7 @@ $ brew install snapcraft
51
52
### Build and test
53
54
-**Build** out a snap package for go-ipfs by running the following from this project
54
+**Build** out a snap package for Kubo by running the following from this project
55
56
```console
57
$ snapcraft
@@ -81,7 +81,7 @@ go-ipfs version: 0.7.0-dev
81
82
### Building in Docker
83
84
-[ipfs-shipyard/ipfs-snap](https://github.com/ipfs-shipyard/ipfs-snap) includes a Dockerfile that creates an image that can build go-ipfs from source and package it as a snap. It starts with `snapcore/snapcraft:stable` and adds in `go` and just enough tools to allow snapcraft to build go-ipfs. It is published to dockerhub as `ipfs/ipfs-snap-builder`.
84
+[ipfs-shipyard/ipfs-snap](https://github.com/ipfs-shipyard/ipfs-snap) includes a Dockerfile that creates an image that can build Kubo from source and package it as a snap. It starts with `snapcore/snapcraft:stable` and adds in `go` and just enough tools to allow snapcraft to build go-ipfs. It is published to dockerhub as `ipfs/ipfs-snap-builder`.
85
86
```console
87
$ docker run -v $(pwd):/my-snap ipfs/ipfs-snap-builder:latest sh -c "apt update && cd /my-snap && snapcraft --debug"
@@ -99,16 +99,16 @@ The following snap release channels are published automatically:
99
100
### Edge via snapcraft.io
101
102
-The snapcraft store watches the default branch of the go-ipfs repo, and updates the snap for the `edge` channel. This service is configured automatically by snapcraft. It's neat, but it doesn't allow us to watch any branch other than the default.
102
+The snapcraft store watches the default branch of the Kubo repo, and updates the snap for the `edge` channel. This service is configured automatically by snapcraft. It's neat, but it doesn't allow us to watch any branch other than the default.
103
104
<img width="1072" alt="Screenshot 2020-10-12 at 15 56 07" src="https://user-images.githubusercontent.com/58871/95761075-b755fb00-0ca3-11eb-99d4-95e5f42cb48a.png">
105
106
107
### Stable via launchpad.net
108
109
-The `stable` channel is published automatically via launchpad.net. There is a mirror of the go-ipfs repo at https://launchpad.net/go-ipfs that is sync'd with the github repo every few hours (at canonical's leisure).
109
+The `stable` channel is published automatically via launchpad.net. There is a mirror of the Kubo repo at https://launchpad.net/go-ipfs that is sync'd with the github repo every few hours (at canonical's leisure).
110
111
-A snap build configuration called `ipfs-stable` is set up to watch the `release` branch on go-ipfs and publish it to the `stable` snap channel.
111
+A snap build configuration called `ipfs-stable` is set up to watch the `release` branch on Kubo and publish it to the `stable` snap channel.
112
113
The key configuration points are:
114
@@ -126,7 +126,7 @@ Automatically build when branch changes: true
126
Source snap channels for automatic builds:
127
# tell snapcraft what version of snapcraft to use when building.
128
# NOTE: At time of writing we use the default `core18` platform for the
129
- # go-ipfs snap. If you specify others here, a build error occurs, which
129
+ # Kubo snap. If you specify others here, a build error occurs, which
130
# I think is mainly due to a launchpad ux bug here.
131
core: ""
132
core18: stable
@@ -164,7 +164,7 @@ Processors:
164
165
If we wish to publish release candidates to the snap store, we can do that by creating a new snap build config
166
167
-1. Find the `release-vX.X` branch in the lauchpad.net mirror of the go-ipfs repo.
167
+1. Find the `release-vX.X` branch in the lauchpad.net mirror of the Kubo repo.
168
- e.g. https://code.launchpad.net/~ipfs/go-ipfs/+git/go-ipfs/+ref/release-v0.7.0
169
2. Click "Create snap package"
170
3. Fill out the form using the same values as listed above for the stable channel, but:
@@ -196,6 +196,6 @@ At the time of writing the launchpad maintainers are:
196
## References
197
198
- Walkthrough of publishing a snap package via snapcraft and launchpad: https://www.youtube.com/watch?v=X_U-pcvBFrU
199
-- For more details on the go-ipfs snapcraft.yaml see: https://github.com/ipfs-shipyard/ipfs-snap
199
+- For more details on the Kubo snapcraft.yaml see: https://github.com/ipfs-shipyard/ipfs-snap
200
- publishing to multiple channels via build.snapcraft.io: https://forum.snapcraft.io/t/maintaining-and-publishing-multiple-to-multiple-channels-via-build-snapcraft-io/12455
201
- How node.js manages snaps: https://github.com/ipfs/go-ipfs/issues/7679#issuecomment-695914986
snap/snapcraft.yaml
+3
-3
@@ -1,4 +1,4 @@
1
-# This snap will build go-ipfs from source.
1
+# This snap will build kubo from source.
2
name: ipfs
3
summary: global, versioned, peer-to-peer filesystem # 79 char long summary
4
description: |
@@ -28,9 +28,9 @@ parts:
28
source: '.'
29
source-tag: master
30
plugin: go
31
- # keep me up to date with the go version that go-ipfs expects to be built with.
31
+ # keep me up to date with the go version that kubo expects to be built with.
32
go-channel: 1.18/stable
33
- go-importpath: github.com/ipfs/go-ipfs
33
+ go-importpath: github.com/ipfs/kubo
34
build-packages:
35
- build-essential
36