Libcanberra not found

Update: It seems that compiling is needed for this? I see in the example of Thunderbird that there are some libraries added… However, we cannot run these compile time with flutter. My guess is they are not needed and that is why the app works fine without them.

I’m nearly finished to submit my flutter app to flathub.

I have a few errors when I run from the command line yet the app runs fine with these command line errors. Can anyone explain what they are and how to satisfy these reqs.?
I guess I need to put them in the yml file?

I’m using ubuntu mate 22.04 to build with latest flutter.

flatpak run org.paauk.TipitakaPaliReader
Gtk-Message: 22:17:24.261: Failed to load module "appmenu-gtk-module"
Gtk-Message: 22:17:24.261: Failed to load module "canberra-gtk-module"
Gtk-Message: 22:17:24.261: Failed to load module "appmenu-gtk-module"

I have these installed on the machine I compiled with. If I try to install, they are already installed and up to date. I’m sure that this is not connected with the flatpak system and maybe need to link the files to the yml (i don’t know how). or … just ignore the errors.

Reading state information... Done
appmenu-gtk2-module is already the newest version (0.7.6-2).
appmenu-gtk2-module set to manually installed.
appmenu-gtk3-module is already the newest version (0.7.6-2).
appmenu-gtk3-module set to manually installed.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
1 Like

Everything that’s not part of the runtime you have to build & ship with the application yourself. You can’t/shouldn’t use the libraries from your system.

You’ll have to decide whether to include the libraries or just ignore these messages. You should check where the dependencies are used: Are they directly coming from Flutter or a package you are using? Then you could find out what they’re used for.

If you want to include them, you must add them to your manifest as additional modules. libcanberra can be included through flathub’s shared-modules.

Unless it already exists in some other (flutter) project on Flathub, you’ll have to write the appmenu-gtk-module manifest yourself.

I don’t think that flutter uses them.
I find making flatpak’s incredibly difficult compared to any other method except snapcraft which is equally annoying and unsuccessful… I’m not sure why the help is so undocumented… Just make a few samples and let people follow the recipe. Instead there is documentation that is difficult to navigate, nor do I want to when I have successful appimages that just work from a simple medium article.

Someone gave me a sample from “Feeel” which is a flatpak… i copyied that same method and i was rejected by flathub.

I have been getting/seeing that warning in various apps, I don’t think it’s a problem. But knowing what the cause is would be great.

do you have a flutter sample? I’m not getting approved. I followed the app FEEEL and I was rejected because they didn’t see an appstream file… but the appstream file was inside the gz like it was done in feeel. I get zero feedback and they don’t try installing… they just run some automated tool and reject.

Your current PR seems fine at a glance, as you now have all needed files included, but I’m not usually doing the reviews.

I gave up… I’m looking to keep Appimages as my only linux release… It works. It is easy. It should only be like that. Furthermore, flatpak was an option for the current fuse3 woes. They will now statically link a small forked version of that. I’ll look into Flatpak again later when it is more friendly and more people request it.

It is just too much time and no progress. I should be able to just build it. I encourage the Flatpak team to make a flutter package to do so. That is the way.

I’ve used the last 15 min to figure out your problems. Most just worked, you only had appdata woes. GitHub - razzeee/org.americanmonk.TipitakaPaliReader

It’s mostly due to badly coping stuff without reading. Your appdata file is named wrong for e.g. I now copy it to the right name.

And frankly your app metadata/desktop files are in a very bad state.

I appreciate your time. Because of that, I gave it another try because you said it worked… I dropped in my newer xml appstream file in the tpr folder (I made with the tool) and rezipped and using your yml file… changed to local path. it did compile and install but then it failed to run. It just seems like a big pandora’s box for me… because it is a black box.

When I tried to change the directory structure it kept complaining the file was not there and it was surely there. It is just not fun for me anymore. I’m using windows because linux keeps breaking… even the Ubuntu Mate which is the most stable distro known to me, has an hour glass cursor over the desktop or when using caja. That made me remember why I left linux last year.

Flatpak does a lot overhead stuff, and perhaps it is not needed for flutter.

I ship with an Appimage or an Appimage that was extracted and zipped. It works (as long as libfuse2 and libsqlite3-dev are installed). libfuse2 is not needed if you use the zipped folder and soon it will be statically linked in a future appimagebuilder release. The app is used by 2400 people on android alone. Maybe 3-400 on Windows and another 500 on ios/macos
It gets good reviews but it is a very specialized app for Buddhist texts enthusiasts who want to read native pāḷi language texts.

Getting in a “flathub store” is not going to really help “downloads”. It is something spread by word of mouth.

The app works on linux under these conditions stated above. I have probably spent over 15 hours trying to get it to work (I’m embarrassed to imagine more. but probably).

Maybe next year I can see what the linux universal app wars are like and plan for that.

Yes, I or my donor own americanmonk.org
Originally I used paauk.com as a made up name (for the monastery) but that is not owned. I should change that for the rest of the apps and we are going to change the ID for apple soon anyway because we used the old predecessor app id as an upgrade.

Using underscores for filenames is standard for flutter and it complains if you don’t do it. It won’t even do certain commands if you don’t have the name conventions.

We are in the official Windows Android Apple stores and get high ratings.
Build 55 as submitted is pretty stable.

Perhaps you can make a flutter helper package in the future and place it on pub.dev. There is a universal package creator for various OS.

an example is this.

the msix package works … it works well. Much better than the microsoft msix tool.
Then I just upload to the store.
For building apps I just type
flutter build windows --release
flutter build appbundle --release
flutter build linux --release
for msix I build the release and then type dart run msix:create

Flutter is the king of multiOS dev now. It could help linux one day if linux embraces it.
The long awaited dream is alive of write once ship many. They were talking about this since the beginning.

The app is here… and all links are there

TBH, Flutter is horrible on linux - somebody who doesn’t understand linux build it. But that’s just an opinion. Also fails to look correctly on linux most of the time. Your app for example has no rounded corners on the bottom…

I’m not complaining about your file names having underscores, those are fine. But the name in the desktop file and appdata file shouldn’t. That for e.g. causes this in the header bar

Did you try to run it twice? Also did you upload that new zip somewhere?

okay… i built it and uploaded the file and pushed to the reopened-PR … it did seem to work… I had given up… but now it is rekindled… we will see what happens next. Your help was appreciated.

Not having styles match is not a big priority for me, especially since it was originally a mobile based dev platform. In the olden days snap and flatpak didn’t do this either. It might improve later. However, flutter is very beautiful.

I uploaded a new version of the build which has a bug fix on it.
The app’ startup has about 3x database speed compared to windows.

1 Like

For building a source version, it is possible… I have a build script for an 18.04 Digital Ocean droplet I create for appimages.

Well… I was finally accepted to flathub, but those errors did not work with one user who is on Linux Mint. I think the other tester told me it failed and he was on PopOS.
I would imagine these libraries were not included on non full ubuntu distros. After all the frustration and finally ending on flathub, I was all set to make a video… " as promised" However, I cannot accept this as “finished” or “acceptable” … The user who tested told me he used more than 1.5gb of downloading data (on mobile) just to install, whereas the appimage is less than 120mb. the appImage works on linux Mint. FlatPak does not work.

If someone helps, I’ll see what I can do… if not , I’ll give up on this again.
Error is below:

flatpak run org.americanmonk.TipitakaPaliReader
ERROR: ld.so: object 'libgtk3-nocsd.so.0' from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored.
Gtk-Message: 16:06:22.999: Failed to load module "xapp-gtk3-module"
malloc(): unsorted double linked list corrupted
````Preformatted text`

The download is less than 119 mb for me on my main system to install, your tester likely never hand a flatpak installed before, that’s why it needed to pull in the base images.

I’ve also just installed mint 21 in a vm and your app starts without any problems. It proceeds to download the word list as expected and then shows the homescreen.

Closing and starting it again also works without problems - it only shows a what's new diaglogue that’s a bit confusing. I would just remove that from the flatpak version.

I also didn’t run any mint updates after install, to simulate an “old” system. And the flatpak worked fine. I then updated mint to the latest and rebooted. After that the flatpak still worked without a problem.

Tested pop_os 22 in a vm and the flatpak also works without a hitch there

Well, it looks like i owe a video then!

He is on an older version of mint and I live at the same monastery as him.
Where are the flatpak files stored? We could see a .local/flatpak but could not find anything inside. I can try deleting the files after he does the flatpak uninstall.
I think he tested a flatpak binary I posted to him.
maybe that was the reason.
I’ll try to find out more about his system tomorrow.

1 Like

Not sure if you mean this, but if you want to cleanup the base images you can run flatpak uninstall --unused after you’ve uninstalled your app.

But I would be surprised, if that would help with the problem. But it could be the older mint version, hard to tell.

You probably tried to start it more then once? As you might remember I also had a crash on the very very first start when I got this to work, but never again after that. (not even on the newly installed distros in vm)

1 Like