-
Notifications
You must be signed in to change notification settings - Fork 63
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
Photino is using libwebkit2gtk-4.0-37 but building a flatpak that supports .NET 8 requires libwebkit2gtk-4.1 #134
Comments
I tried building I can't use old Gnome which includes I can't use new Gnome because it only includes I can't build I don't know what else I can try...
|
@Jinjinov can you adapt you FP configuration to not reference the dotnet SDK? If you publish your Photino app as a single file executable it will include the runtime for dotnet. Here's the guide I prepared for packaging in Linux and it has worked for me so far. |
What is the reason for using the deprecated Is it too hard to update to Are the any breaking changes? Can I help somehow? |
@Jinjinov There are some breaking changes between 4.0 and 4.1 and we have to compile with one or the other. We want to avoid making a separate NuGet package just for Linux if possible. Currently, 4.0 is more widely supported and, if we switch to 4.1, all of the existing apps using 4.0 will break (we actually did one release with 4.1 and it didn't go well, so we reverted). @philippjbauer is going to take a stab at figuring out path forward. In the interim, have you tried version 45? We think in our testing it worked with both .NET 8 and 4.0. |
running the hello world sample also fails on ubuntu 24.04 LTS. i think it is very important to support 4.1 soon. |
Same issue, can't get Photino to run in Flatpak, after following the Hello World sample. These should be the available libwebkit2gtk versions, per Gnome version:
So the most recent version still providing 4.0 is 42, but that results in the following error:
And the Gnome 42 runtime comes with:
Not sure if building Photino.Native from within the Flatpak would fix that, but maybe it's solving the wrong problem given the used Gnome versions. |
Could you elaborate, or point me to an issue or something where the problems are detailed? |
@philippjbauer if I build the executable myself and then push the binaries to a repo, then flatpak isn't building my app from source, which is what I want, for several reasons
@MikeYeager why would a separate NuGet for Linux be necessary? is webkit2gtk used on any other platform besides Linux? why is 4.0 more widely supported? GNOME started using 4.1 with GNOME 43 on September 21, 2022 - that is more than 2 years ago. no, GNOME 45 does not support 4.0 because GNOME 42 was the last version that supported 4.0 can you point me to the branch that you used to release with 4.1? what exactly didn't go well? |
We are aware of the issue, however it is a dilemma (as well described in a tauri issue). We have to build Photino for EITHER 4.0 or 4.1. We can't make it work for both. Until recently, 4.0 was much more prevalent, however, this is no longer the case. If we switch to 4.1, it will break everyone running 4.0. At some point, we will make the switch and create a breaking change. Until then, the work-around is to install 4.0 manually as described in that link OR to create your own package (deb, snap, etc.) for distribution and include the library (see publishing guide in samples). CentOs, Debian 11 and below and Ubuntu 20.04 and below do not have the webkitgtk 4.0. We will likely go to a new major version number when we do switch to 4.1. If the community has any suggestions, we'd like to hear from you. |
I have spent countless hours trying to build Could you please show me the branch where you enabled 4.1 so that I can build the NuGet myself? Or, if you deleted that branch, tell me how I can do it myself? Pretty please, this issue is frustrating beyond belief - and I am not blaming you, I perfectly understand your reasons and I appreciate your dedication to maintaining an open source library, I am grateful for it! |
@Jinjinov I made a fork for this, as I ran into the same issue: I'm tracking the exact changes in this PR: Notes:
The most impactful parts are in the makefile, the rest is just to make building the package easier. |
@flyingpie Thank you! I assume that I must also build my own |
@Jinjinov You're welcome, hope it helps! You don't have to recompile Photino.Blazor, just reference Photino.Native.4.0.0-pre1.nupkg from the consuming project and it will be used by Photino.Blazor. Here's an example: <ItemGroup>
<PackageReference Include="Photino.Blazor" Version="3.2.0" />
<PackageReference Include="Photino.Native" Version="4.0.0-pre1" />
</ItemGroup> |
@flyingpie should it be
|
@Jinjinov Yeah, sorry, fixed. Thanks for noting! |
For anyone else trying to install Docker inside Ubuntu inside VirtualBox inside Windows and failing miserably: You actually don't have to install Docker in Ubuntu, you can use Docker in Windows :) Instead of using
you will have to use
Thanks to @flyingpie I got it working! :) |
I wanted to build a flatpak, but currently Photino is using
libwebkit2gtk-4.0-37
In flatpak yaml, instead of
you have to use
Because:
https://docs.flatpak.org/en/latest/available-runtimes.html
The GNOME runtime is appropriate for any application that uses the GNOME platform. It is based on the Freedesktop runtime and adds the GNOME platform, including WebKitGTK
But Gnome
46
includeslibwebkit2gtk-4.1
I tried using Gnome
41
that includeslibwebkit2gtk-4.0
but Gnome41
can not use .NET 8:It can only support
org.freedesktop.Sdk.Extension.dotnet5
andorg.freedesktop.Sdk.Extension.dotnet6
This is my flatpak yaml:
The text was updated successfully, but these errors were encountered: