-
Notifications
You must be signed in to change notification settings - Fork 30
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
Flatpak #39
Comments
That would be actually nice to have. I guess you need to add a .desktop file with the icon, and such. You can find the icons at different resolutions in the "graphics" directory in the repo. My only concern is support to the system theme. Delta Patcher supports light and dark modes, depending on the system settings. The flatpak should be configured properly so that Delta Patcher is able to use the right theme. Feel free to submit a pull request! |
Another thing I am not sure how will workout in Flatpak is the lack of portals. Delta Patcher does not make explicit use of portals, and so I am wondering how it can access files from the file system. I guess you need to specify the right filesystem permissions in the manifest (which are currently doing), but using "host" as filesystem permissions is maybe overkill. I guess "home" is a better option for Delta Patcher. |
I have now created #40 for the data files.
Looks like this is already supported by wxWidgets.
Gtk has GtkFileChooserNative, which uses the Portals. I don't know much abou wxWidgets, but maybe you can use this function in the Gtk Backend. |
The error you mention is due to the fact you are compiling wxwidgets in debug mode. Please use the cmake flags as specified in the readme for Linux. |
Of you are using the system's wxwidgets lib, then you will also get that error, as all binaroes of wxwidgets I am aware of in repositories are all compiled with assertions ON |
When using |
I have just pushed a pull request that fixes the warnings. They should not appear anymore. Anyway, I think building in Release mode is still preferred, as this avoids wxWidgets countinuously calling its asserts, "slowing down" things. |
It is usual to build a Flatpak with debug symbols, but you can change this if you really want it. The only missing thing is now to use the Portals. If you don't know how to use Portals in wxWidgets, you can use zenity, whcih is preinstalled in the Flatpak Runtime. Just run Here is the current version of the Manifest: id: io.github.marco_calautti.DeltaPatcher
runtime: org.freedesktop.Platform
runtime-version: '23.08'
sdk: org.freedesktop.Sdk
command: DeltaPatcher
finish-args:
- --socket=fallback-x11
- --socket=wayland
- --filesystem=host
- --device=dri
- --device=dri
modules:
- name: DeltaPatcher
buildsystem: cmake-ninja
config-opts:
- -DCMAKE_BUILD_TYPE=RelWithDebInfo
- -DwxBUILD_SHARED=OFF
sources:
- type: dir
path: /path/to/source Just set the path to the source directory of DeltaPatcher. |
I tried the manifest on my local machine, and portals are not required, assuming we give filesystem access (actually, Delta Patcher only requires home). I slightly modified the manifest to also allow the flatpak to have access to the current system gtk theme: id: io.github.marco_calautti.DeltaPatcher
runtime: org.freedesktop.Platform
runtime-version: '23.08'
sdk: org.freedesktop.Sdk
command: DeltaPatcher
finish-args:
- --socket=fallback-x11
- --socket=wayland
- --filesystem=home
- --filesystem=xdg-config/gtk-3.0:ro
- --device=dri
- --device=dri
modules:
- name: DeltaPatcher
buildsystem: cmake-ninja
config-opts:
- -DCMAKE_BUILD_TYPE=RelWithDebInfo
- -DwxBUILD_SHARED=OFF
sources:
- type: dir
path: /path/to/source |
I will now create a new tag for the new version, and I guess you can submit the flatpak manifest to flathub referencing the new tag. |
I don't said that it is not working with filesystem access. That's the reason my Manifest has Host access, but it would be better if Portals were used instead of this Permission.
I would rather give host access. With home access Users can't open any files on external drives. Full home access aleady allows breaking the Sandbox, as you can edit e.g. .bashrc or startup files, so host access is not more insecure.
Yes. Use this as you source: - type: git
url: https://github.com/marco-calautti/DeltaPatcher.git
tag: 'v3.1.3'
commit: 46011a90aade9c178020d9d5c96817b33c7b33c3
x-checker-data:
type: git |
I discovered a little misstake in my Manifest instead of: - --device=dri
- --device=dri use - --device=dri
- --share=ipc |
I fear portals would not be enough for Delta Patcher, as it also requires to write and rename additional files in a non interactive way when patching a file (e.g., creating a backup of the original file). |
Portals give only access to the selected file, so in this case Portals would not work for you. |
Is there anything blocking you from publish on Flathub? |
Mostly my daily job. I plan to release it in one of the upcoming weekends. |
OK. I was just wondering. |
It is now on flathub https://flathub.org/it/apps/io.github.marco_calautti.DeltaPatcher |
You should verify it. Just login with your GitHub on Flathub and you can verify it in the developer settings. |
I did login but it seems there are some checks that failed. I requested a review. |
Ok, now it is verified. |
I created a Flatpak for DeltaPatcher. This allows easier installing on evry Linux Distro. Here is the Manifest:
I shows a error but it works without any problems. It needs a few things before it can be fully released. tell me, if you are interested.
The text was updated successfully, but these errors were encountered: