[Feature] Ship a Flatpak repository #1978

Closed
opened 2026-02-28 20:00:22 -06:00 by GiteaMirror · 10 comments
Owner

Originally created by @leo60228 on GitHub (Mar 21, 2025).

Originally assigned to: @MikesGlitch on GitHub.

Verified feature request does not already exist?

  • I have searched and found no existing issue

💻

  • Would you like to implement this feature?

Pitch: what problem are you trying to solve?

The shipped Flatpak files in GitHub releases are useful, but a major benefit to Flatpak is providing automatic updates.

Describe your ideal solution to this problem

Ideally, a Flatpak repository with new updates would be available. This is just a static folder structure with the application and metadata served over HTTPS. Flatpak provides documentation on this here, though I'm not sure how this integrates with electron-builder: https://docs.flatpak.org/en/latest/hosting-a-repository.html

Teaching and learning

The Flatpak download on the website should be a .flatpakref instead of a .flatpak. This provides the same user experience, but will allow automatic updates.

Originally created by @leo60228 on GitHub (Mar 21, 2025). Originally assigned to: @MikesGlitch on GitHub. ### Verified feature request does not already exist? - [x] I have searched and found no existing issue ### 💻 - [x] Would you like to implement this feature? ### Pitch: what problem are you trying to solve? The shipped Flatpak files in GitHub releases are useful, but a major benefit to Flatpak is providing automatic updates. ### Describe your ideal solution to this problem Ideally, a Flatpak repository with new updates would be available. This is just a static folder structure with the application and metadata served over HTTPS. Flatpak provides documentation on this here, though I'm not sure how this integrates with electron-builder: https://docs.flatpak.org/en/latest/hosting-a-repository.html ### Teaching and learning The Flatpak download on the website should be a .flatpakref instead of a .flatpak. This provides the same user experience, but will allow automatic updates.
GiteaMirror added the approvedfeature labels 2026-02-28 20:00:22 -06:00
Author
Owner

@github-actions[bot] commented on GitHub (Mar 21, 2025):

Thanks for sharing your idea!

This repository uses lodash style issue management for enhancements. That means enhancement issues are automatically closed. This doesn’t mean we don’t accept feature requests, though! We will consider implementing ones that receive many upvotes, and we welcome contributions for any feature requests marked as needing votes (just post a comment first so we can help you make a successful contribution).

The enhancement backlog can be found here: https://github.com/actualbudget/actual/issues?q=label%3A%22needs+votes%22+sort%3Areactions-%2B1-desc+

Don’t forget to upvote the top comment with 👍!

@github-actions[bot] commented on GitHub (Mar 21, 2025): :sparkles: Thanks for sharing your idea! :sparkles: This repository uses lodash style issue management for enhancements. That means enhancement issues are automatically closed. This doesn’t mean we don’t accept feature requests, though! We will consider implementing ones that receive many upvotes, and we welcome contributions for any feature requests marked as needing votes (just post a comment first so we can help you make a successful contribution). The enhancement backlog can be found here: https://github.com/actualbudget/actual/issues?q=label%3A%22needs+votes%22+sort%3Areactions-%2B1-desc+ Don’t forget to upvote the top comment with 👍! <!-- feature-auto-close-comment -->
Author
Owner

@leo60228 commented on GitHub (Mar 21, 2025):

Hmm, this may be more difficult to implement than I'd hoped, since it seems like it will require manual invocation of flatpak-builder instead of having electron-builder do it automatically: https://docs.flatpak.org/en/latest/electron.html

@leo60228 commented on GitHub (Mar 21, 2025): Hmm, this may be more difficult to implement than I'd hoped, since it seems like it will require manual invocation of flatpak-builder instead of having electron-builder do it automatically: https://docs.flatpak.org/en/latest/electron.html
Author
Owner

@leo60228 commented on GitHub (Mar 21, 2025):

Actually, while this isn't allowed for Flathub, I think it should still be possible to build a repository from the built .flatpak using flatpak build-import-bundle and flatpak build-update-repo:

[root@penumbra:~/flatpak-test]$ ostree init --repo=repo

[root@penumbra:~/flatpak-test]$ flatpak build-import-bundle repo Actual-linux.flatpak
Importing app/com.actualbudget.actual/x86_64/master (139d61411b04f3a32718722c353642601704eb9c697a93d319fdf306b6c64230)

[root@penumbra:~/flatpak-test]$ flatpak build-update-repo repo
Updating appstream branch
No appstream data for app/com.actualbudget.actual/x86_64/master: No such file or directory: /files/share/app-info
Updating summary

[root@penumbra:~/flatpak-test]$ flatpak remote-ls file://$PWD/repo
Name         Application ID                Version       Branch
actual       com.actualbudget.actual                     master
@leo60228 commented on GitHub (Mar 21, 2025): Actually, while this isn't allowed for Flathub, I think it should still be possible to build a repository from the built .flatpak using `flatpak build-import-bundle` and `flatpak build-update-repo`: ```terminal [root@penumbra:~/flatpak-test]$ ostree init --repo=repo [root@penumbra:~/flatpak-test]$ flatpak build-import-bundle repo Actual-linux.flatpak Importing app/com.actualbudget.actual/x86_64/master (139d61411b04f3a32718722c353642601704eb9c697a93d319fdf306b6c64230) [root@penumbra:~/flatpak-test]$ flatpak build-update-repo repo Updating appstream branch No appstream data for app/com.actualbudget.actual/x86_64/master: No such file or directory: /files/share/app-info Updating summary [root@penumbra:~/flatpak-test]$ flatpak remote-ls file://$PWD/repo Name Application ID Version Branch actual com.actualbudget.actual master ```
Author
Owner

@leo60228 commented on GitHub (Mar 21, 2025):

I would be interested in implementing this, though I'm not sure what the desired way to integrate this into the release process would be.

@leo60228 commented on GitHub (Mar 21, 2025): I would be interested in implementing this, though I'm not sure what the desired way to integrate this into the release process would be.
Author
Owner

@leo60228 commented on GitHub (Mar 21, 2025):

Actually, I'm not sure that a better solution wouldn't be to just contribute a package to Flathub.... electron-builder seems to have poor support for Flatpak in general.

@leo60228 commented on GitHub (Mar 21, 2025): Actually, I'm not sure that a better solution wouldn't be to just contribute a package to Flathub.... electron-builder seems to have poor support for Flatpak in general.
Author
Owner

@dkniffin commented on GitHub (Jul 30, 2025):

I am also interested in this. I think the cleanest way would probably be to use a flathub repo. From my understanding, a flathub repo also supports automatic updates. So I'm not sure what making our own flatpak repo would gain us.

If I understand correctly, this is the process for getting AB on flathub:

  1. Submit the package to flathub, as documented here: https://docs.flathub.org/docs/for-app-authors/submission
  2. Once that gets reviewed and approved, a repo will be created for AB under the flathub organization (https://github.com/flathub/com.actualbudget.actual), with AB maintainers added as maintainers on that repo.
  3. At that point, the initial version is published.
  4. When new versions of AB are created, a PR needs to be made and merged on flathub/com.actualbudget.actual (as mentioned here). To automate that, I see two options:
    • We could use the external data checker and it will check for updates hourly and create PRs automatically
    • We could add something to the AB build process that would create that PR for us

Does this sound right? I'm not sure which of those last two options the maintainers would prefer.

@dkniffin commented on GitHub (Jul 30, 2025): I am also interested in this. I think the cleanest way would probably be to use a flathub repo. From my understanding, a flathub repo also supports automatic updates. So I'm not sure what making our own flatpak repo would gain us. If I understand correctly, this is the process for getting AB on flathub: 1. Submit the package to flathub, as documented here: https://docs.flathub.org/docs/for-app-authors/submission 2. Once that gets reviewed and approved, a repo will be created for AB under the flathub organization (https://github.com/flathub/com.actualbudget.actual), with AB maintainers added as maintainers on that repo. 3. At that point, the initial version is published. 4. When new versions of AB are created, a PR needs to be made and merged on `flathub/com.actualbudget.actual` (as mentioned [here](https://docs.flathub.org/docs/for-app-authors/updates#creating-updates)). To automate that, I see two options: - We could use the [external data checker](https://docs.flathub.org/docs/for-app-authors/external-data-checker) and it will check for updates hourly and create PRs automatically - We could add something to the AB build process that would create that PR for us Does this sound right? I'm not sure which of those last two options the maintainers would prefer.
Author
Owner

@MikesGlitch commented on GitHub (Dec 5, 2025):

This is on its way: https://flathub.org/en/apps/com.actualbudget.actual

Marking as done. An official announcement will come soon.

@MikesGlitch commented on GitHub (Dec 5, 2025): This is on its way: https://flathub.org/en/apps/com.actualbudget.actual Marking as done. An official announcement will come soon.
Author
Owner

@kpatzwald commented on GitHub (Dec 5, 2025):

Thanks! But is an older version, isn't it? Flathub provides 25.10.0. I have installed 25.11.0. The newest version is 25.12.0

@kpatzwald commented on GitHub (Dec 5, 2025): Thanks! But is an older version, isn't it? Flathub provides 25.10.0. I have installed 25.11.0. The newest version is 25.12.0
Author
Owner

@kpatzwald commented on GitHub (Dec 5, 2025):

Sorry, I've just noticed that 25.10 is the latest version for the flatpak-version. It is not a flathub problem.

@kpatzwald commented on GitHub (Dec 5, 2025): Sorry, I've just noticed that 25.10 is the latest version for the flatpak-version. It is not a flathub problem.
Author
Owner

@MikesGlitch commented on GitHub (Dec 5, 2025):

We'll release officially next month, the version in flathub is currently version 25.12.0.

It's showing 25.10.0 in the change notes part of the store page because we never added release notes for 25.12.0 to flathub (an oversight).

If you fancy testing out the release, please do - and if you find any issues let us know.

@MikesGlitch commented on GitHub (Dec 5, 2025): We'll release officially next month, the version in flathub is currently version 25.12.0. It's showing 25.10.0 in the change notes part of the store page because we never added release notes for 25.12.0 to flathub (an oversight). If you fancy testing out the release, please do - and if you find any issues let us know.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/actual#1978