Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add snap package configuration #7529

Merged
merged 4 commits into from
Jul 24, 2020
Merged

Conversation

olizilla
Copy link
Member

@olizilla olizilla commented Jul 9, 2020

Simplify keeping the snap package up to date by including the snapcraft.yaml in the repo.

We can then wire up the snapstore to autobuild the package for amd64, i386, arm* etc.

Many thanks to @ElOpio for the work of getting ipfs into the snap store in the first place, and to @bertrandfalguiere and @mkg20001 for pushing it forwards.

To try it out, install snapcraft and run it from the root of the project folder. That will build go-ipfs and create a .snap file for your current system architecuture. See: https://github.com/ipfs-shipyard/ipfs-snap for more information.

Fixes #7250
WIP #3595

License: MIT
Signed-off-by: Oli Evans [email protected]

Simplify keeping the snap package up to date by including the snapcraft.yaml in the repo.

We can then wire up the snapstore to autobuild the package for amd64,i386,arm* etc.

Many thanks to @ElOpio for the work of getting ipfs into the snap store in the first place, and to @bertrandfalguiere and @mkg20001 for pushing it forwards.

See: https://github.com/ipfs-shipyard/ipfs-snap for more info.

Fixes #7250
WIP #3595

License: MIT
Signed-off-by: Oli Evans <[email protected]>
@olizilla
Copy link
Member Author

olizilla commented Jul 9, 2020

Of note, master fails to build before this PR. I'll update the PR when master is clean again. the build badge says it fails, but builds locally for me!

Without the home interface the user is unable to add files to ipfs from their home dir.

Also explicitly sets the build architectures, to skip some esoteric ones and save some cpu cycles.

License: MIT
Signed-off-by: Oli Evans <[email protected]>
remvoing as specifying the subset of architectures you want to build on has side-effects, like the resulting snap is labeled as "multi" arch, and the snapstore UI lists it as building on i386 the whole time.

License: MIT
Signed-off-by: Oli Evans <[email protected]>
@olizilla
Copy link
Member Author

@ribasushi are you a person who might have opinions on this? Just looking for a sanity check.

Copy link
Contributor

@ribasushi ribasushi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@olizilla looks good to me, with the caveat I have not done snaps before

Left couple nits, both ignorable

snap/snapcraft.yaml Outdated Show resolved Hide resolved
Dockerfile Show resolved Hide resolved
@aschmahmann
Copy link
Contributor

@ribasushi @olizilla should I just merge this, or are there any fixes/changes we're waiting on?

License: MIT
Signed-off-by: Oli Evans <[email protected]>
@olizilla
Copy link
Member Author

@aschmahmann ready to roll. If you create a account on https://snapcraft.io I can add you to the admins for that package. I'm happy to take responsibility for keeping the snap release up to date, but would be good to have squad depth on that. The snapstore will autobuild the repo on changes to master and release it under the edge channel. When we want to publish a stable release, we just promote the previously built version from the edge channel to the stable channel in the UI.

Screenshot 2020-07-21 at 10 39 51

@aschmahmann aschmahmann merged commit 5b28704 into master Jul 24, 2020
@aschmahmann aschmahmann mentioned this pull request Sep 22, 2020
72 tasks
@hacdias hacdias deleted the feat/add-snap-package branch May 9, 2023 10:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Outdated go-ipfs on the Snap Store breaks IPFS Desktop onboarding experience
3 participants