filecoin-project / lotus

Reference implementation of the Filecoin protocol, written in Go
https://lotus.filecoin.io/
Other
2.81k stars 1.25k forks source link

deprecate Snapcraft and AppImage #10002

Open ianconsolata opened 1 year ago

ianconsolata commented 1 year ago

I shared a doc (https://www.notion.so/pl-strflt/Lotus-Release-Channels-d475107f696b4669b5a0468194efb5a1) about which release channels we support, and suggesting we deprecate AppImage and Snapcraft. I just took a look again, and they are both still broken, and there is no clear path to fixing them. In the case of Snapcraft, their automated review added a new check which started failing Lotus, and none of their recommendations for fixing the issue work. For AppImage, the software we use to build the AppImage broke recently due to a malformed ubuntu version string. I brought this up in Slack, and we agreed to remove them immediately. To fully close this ticket, the following must be completed:

ianconsolata commented 1 year ago

Documentation Updated: https://github.com/filecoin-project/lotus-docs/pull/471 https://github.com/filecoin-project/filecoin-docs/pull/1569

ianconsolata commented 1 year ago

Merged: https://github.com/filecoin-project/lotus/pull/10090

All that remains is to deploy the deprecation notice to Snapcraft.

rjan90 commented 1 year ago

Hey @ianconsolata! Just checking in here, and was wondering if we already have sent deprecation notice to Snapcraft? And if not, do you have any pointers to where we can do that? 😄

ianconsolata commented 1 year ago

Ah, shoot. Dropped the ball on this. I think since Cory left, I am actually the only one with access to our release channels. All that needs to be done is:

It's pretty simple, I think I will have time to do it this week. Thanks for the reminder ping!

ianconsolata commented 1 year ago

@rjan90 Have the deprecated version ready to go here: https://github.com/ianconsolata/lotus/tree/snapcraft-deprecation

What I did was branch of v1.18.0 (it doesn't really matter where I branch from, as long as it has the right snapcraft build steps) and I replaced all the build steps with commands to build the deprecation notice binary (./cmd/snapcraft-deprecation/), which prints the following message:

Lotus is not distributed through Snap anymore (https://github.com/filecoin-project/lotus/issues/10002) Please install Lotus using another method from https://lotus.filecoin.io/lotus/install/prerequisites/

I set it up to run in CircleCI (which has the correctly configured build and deploy environment) when merged to the snapcraft-deprecation branch. I can't currently submit a PR to do that though, because that branch doesn't exist on filecoin-project/lotus.

In order to finish deprecating, someone with permissions push my branch to the filecoin-project/lotus project with the same branch. That should build the deprecation binaries, and push them to all release channels.

rjan90 commented 1 year ago

Thank you so much @ianconsolata 🥇! I will try to open a PR with your changes, or get some additional help from the devs