pop-os / popsicle

Multiple USB File Flasher
MIT License
659 stars 77 forks source link

Flatpak support #93

Closed ids1024 closed 4 years ago

ids1024 commented 4 years ago

As mentioned in https://github.com/pop-os/popsicle/issues/89, Fedora Media Writer is available as a Flatpak, and uses the org.freedesktop.UDisks2 dbus service to get permission through Polkit.

pkexec isn't available in a Flatpak sandbox, so as far as I can tell, doing the same thing is the best way to make Popsicle run in a Flatpak. If we don't want to use this method on Pop!_OS (since it would request a password for each device that's flashed, for instance), it can be supported as one mode. For instance, it could be added to the current design when not run as root (currently, popsicle-gtk seems to not work when not started as root, but doesn't display an error to indicate the issue.)

By default, it's also not possible to use /dev to find USB devices. Fedora Media Writer uses the org.freedesktop.DBus.ObjectManager interface on /org/freedesktop/UDisks2 to scan for devices, but using --device=all, the current UsbDiskProbe code works in a Flatpak.

ids1024 commented 4 years ago

It looks like if we want to make Popsicle available on Flathub, we'll need a tagged release, with a <version> tag in the appdata.

https://github.com/flathub/flathub/wiki/App-Requirements#stable-releases-reproducible-builds https://github.com/flathub/flathub/wiki/App-Requirements#appstream

mmstick commented 4 years ago

We now have a tagged release

ids1024 commented 4 years ago

https://flathub.org/apps/details/com.system76.Popsicle