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

Decouple build process for vanilla and enhanced variants #73

Open
jamezrin opened this issue Dec 25, 2021 · 1 comment
Open

Decouple build process for vanilla and enhanced variants #73

jamezrin opened this issue Dec 25, 2021 · 1 comment
Assignees
Labels
enhancement New feature or request

Comments

@jamezrin
Copy link
Member

jamezrin commented Dec 25, 2021

This issue arises from the recent problems caused by electron-builder updates and the fact that we are releasing 2 different apps in a single github release. When the app is built, an update file named latest.yml (for windows; for other platforms the name is added as a suffix). This causes 2 latest-linux.yml files to be generated, causing an error on the second edition build as the file already exists in the release.

Realistically, we are not really worrying about auto-update for Linux AppImage, so for now the solution is disabling the creation of this update file for the Linux platform (and Mac, since it doesn't even work there).

Right now the generation of artifacts depends on manual workflow execution via workflow_dispatch or, most commonly, a push event in the main branch. This build process depends on the configuration file notion-repackaged.sh and is used for both the vanilla and enhanced variants simultaneously. If you build, you build vanilla and enhanced, no matter what changes are or if only the enhanced variant should change.

The idea is to separate these so that they are different workflows, and you can release a new revision of the enhanced edition without releasing an unchanged vanilla edition. There should be 2 different github releases, one for the vanilla edition and the other for the enhanced edition.

Auto update, especially for Windows, seems to work out of the box. This should still work. The problem is that multiple releases is not going to work well for the auto updater. It is not capable of differentiating between github releases.
One solution for this is not relying on the github releases adapter and instead use the generic one. This would have to be implemented by an external application.

Note that electron-builder doesn't really support the scenario of multiple apps released in a single repo. Otherwise, we probably wouldn't have this issue. The feature of channels doesn't help with this problem either, it's really thought after the "stable", "beta" and "alpha" release paradigm and nothing else.

Relevant links:

@jamezrin jamezrin added the enhancement New feature or request label Dec 25, 2021
@jamezrin jamezrin self-assigned this Dec 25, 2021
@jamezrin
Copy link
Member Author

Disabled auto-update feed file for platforms other than Windows in fde8a5f

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant