Skip to content

Publish to Flathub#5569

Merged
GeorgesStavracas merged 6 commits intoobsproject:masterfrom
GeorgesStavracas:gbsneto/flathub-releases
Nov 24, 2021
Merged

Publish to Flathub#5569
GeorgesStavracas merged 6 commits intoobsproject:masterfrom
GeorgesStavracas:gbsneto/flathub-releases

Conversation

@GeorgesStavracas
Copy link
Copy Markdown
Member

@GeorgesStavracas GeorgesStavracas commented Nov 24, 2021

Description

Publish GitHub releases of OBS Studio directly into Flathub and Flathub Beta. All releases are published to Flathub Beta, and only stable releases are published to Flathub.

Motivation and Context

Currently the only Linux distribution officially supported by the OBS Studio community is Ubuntu, through the community PPA. We've been slowly growing support for Flatpaks, which covers support for a lot more distros beyond Ubuntu. Since #4994 the Flatpak builds achieved complete feature parity with regular builds.

This is the last big step in the Flatpak front: publish GitHub releases directly into Flathub.

Flathub already has a separate repository for OBS Studio, and I've been manually publishing releases there, but it doesn't have services integration.

How Has This Been Tested?

The nature of this change makes it hard to manually test it, but I've forged fake releases in my fork to exercise this new job:

Here's what you have to verify in these runs:

  1. RC release skips the "Publish to Flathub" step (but runs "Publish to Flathub Beta")
  2. Stable release runs both the "Publish to Flathub" and "Publish to Flathub Beta" steps

Types of changes

  • New feature (non-breaking change which adds functionality)

Checklist:

  • My code has been run through clang-format.
  • I have read the contributing document.
  • My code is not on the master branch.
  • The code has been tested.
  • All commit messages are properly formatted and commits squashed where appropriate.
  • I have included updates to all appropriate documentation.

This causes no problem whatsoever, it's just good to
keep some hygiene over ignored files.

Add generated Flatpak files and folders to .gitignore.
Add a start-of-file heading, and reindent some line. Only cosmetics,
no behavioral changes here.
Rename "flatpak_builder" to "generate_bundle", and set the display
name to "Generate Flatpak Bundle". This will make it less vague,
which will come in handy since next commits will add new jobs to
this workflow.
@GeorgesStavracas GeorgesStavracas added Linux Affects Linux New Feature New feature or plugin labels Nov 24, 2021
@GeorgesStavracas
Copy link
Copy Markdown
Member Author

For publishing to work, two new secrets must be added to the repository:

  • FLATHUB_TOKEN
  • FLATHUB_BETA_TOKEN

None of the changes included in v4 affect OBS Studio, but since
we're already touching this code, let's make sure it's updated.
Now that Flatpak has achieved full feature parity with non-Flatpak
builds, it is time to publish it directly into Flathub.

Add a new "publish" job to the Flatpak workflow that builds and
publishes to Flathub Beta, and to Flathub (if the release tag
doesn't contain '-rc').
It just cannot get more official than this!
Copy link
Copy Markdown
Contributor

@barthalion barthalion left a comment

Choose a reason for hiding this comment

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

With my Flathub's admin/maintainer hat on, LGTM.

@GeorgesStavracas
Copy link
Copy Markdown
Member Author

Thanks everyone for reviewing this PR. I'm particularly excited about this! Seems like Jim is okay with landing this, so I'll take the liberty to go ahead and merge.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Linux Affects Linux New Feature New feature or plugin

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants