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

[Bug]: Apps outlive installations #5775

Open
4 tasks done
eeejay opened this issue Apr 15, 2024 · 0 comments
Open
4 tasks done

[Bug]: Apps outlive installations #5775

eeejay opened this issue Apr 15, 2024 · 0 comments

Comments

@eeejay
Copy link
Contributor

eeejay commented Apr 15, 2024

Checklist

  • I agree to follow the Code of Conduct that this project adheres to.
  • I have searched the issue tracker for a bug that matches the one I want to file, without success.
  • If this is an issue with a particular app, I have tried filing it in the appropriate issue tracker for the app (e.g. under https://github.com/flathub/) and determined that it is an issue with Flatpak itself.
  • This issue is not a report of a security vulnerability (see here if you need to report a security issue).

Flatpak version

1.15.6

What Linux distribution are you using?

Fedora Linux

Linux distribution version

39

What architecture are you using?

x86_64

How to reproduce

  1. Spawn a D-Bus service exported by a flatpak
  2. Uninstall the flatpak

Expected Behavior

Service should be shut down.

Actual Behavior

Service is still running

Additional Information

This happens with apps too, but is more acute with services since the user does not have visibility into the fact that a stale service is still running. This introduces also safety concerns since the user believes that they removed a malicious flatpak only to still have it running in the background.

There is also the problem that a user might upgrade a flatpak with an exported service, but the older one is still running until the user exits the session.

I propose that services either be forcibly killed, or that they expose a special interface with a Shutdown() method in order to do any cleanup. This method should make the service quit in-line so the method will ultimately "fail".

The first solution is good for legacy apps, the second solution could be opted in to if needed.

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

No branches or pull requests

1 participant