Well, that's one thing with Flatpak. There is a permission system, as the applications are fully or partially sandboxed. You can install "Flatseal", that can change permission for each installed Flatpak application. But it can be confusing or hard to understand what you have to change in order to make it work. Or maybe the application itself is not packaged correctly as a Flatpak, I don't know.
Linux
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
Yeah it can be confusing; Flatseal makes it easier as it's a GUI way of doing what is otherwise command line with flatpak itself but it still assumes some knowledge about what you're doing and can be a bit of trial and error. The more you expose to the sandbox, the more "native" performance you can achieve but it's at the expense of security.
In Flatseal you can set global options for all apps, or individual apps. For graphics, in the Device section, toggling the option to make the GPU available to the sandboxes may be needed - "GPU Acceleration" in the Device section. That one option can be pretty effective as GPU hardware acceleration is often important, if not essential, for programs like Handbrake (which are video transcoding).
This is equivalent to "device=dri" when launching the flatpak via the commandline.
I don't like flatpack for the exact reason of this thread. The serious distros already do quite a good job in orchestrating their libs and other packages so that all works together.
Flatpack in theory is supposed, when well configured, to have little niche environments for some packages to work sandboxed and with their little special dependency chain.
In practice the knowledge and fiddling necessary to have this work correctly is akin to do it directly and safely in the main environment. People are encouraged to use flatpack but it is not a "just works" installer, unlike the default package manager of any serious distro.
Make sure that the apps have access to your discrete graphics card. Flatseal allows you to manage flatpak permissions
The permission OP should look for is DRI.
That's why I don't use flatpaks, either they're not accelerated, or they can't use external libs already installed, or they can't print etc etc. Sure, that's all fixable if the devs were doing a good job on flatpaking, but they don't, as it's quite complex. So we end up with apps that have a reduced featured set. I personally prefer appimages, even if they're a pain to update manually (from official sources always). I have about 10-15 such apps that I update them once a month manually. Everything else is from the official repo.
Same here. System apps and appimages are what I install.
More details on your GPU and how you installed your drivers would be helpful to understand your issue. You should not need to explicitly enable GPU permissions in every flatpak as some of these comments are suggesting. That is to give apps direct GPU access, which is not necessary for hardware acceleration. A lot of the info in this thread is not accurate.

just kidding :3
- CPU: Intel i7-5500U (4) @ 3.000GHz
- GPU: NVIDIA GeForce 940M
- GPU: Intel HD Graphics 5500
- Nvidia driver 535.274.02-0ubuntu0.24.04.2
external monitor or internal?
both
I had a laptop where the HDMI/dvi slots ran off the CPU instead of the GPU. Maybe worth to investigate?
My best guess is that it's not a Flatpak permissions issue as others are claiming; the software is just trying to use your iGPU (which is usually crappy) instead of your dGPU.
Try taking whatever command you use to start the program and tacking DRI_PRIME=1 on the front. This has often worked for me on applications regardless of whether they're native or Flatpak.