Open kekonn opened 11 months ago
replaced the flameshot gui
with sh -c -- "flameshot gui"
is working
Ubuntu 23.10
Wayland
GNOME 45.0
replaced the
flameshot gui
withsh -c -- "flameshot gui"
is working Ubuntu 23.10 Wayland GNOME 45.0
It worked here! Thanks a lot.
replaced the
flameshot gui
withsh -c -- "flameshot gui"
is working Ubuntu 23.10 Wayland GNOME 45.0
doesn`t work on fedora 39 though ...
Workaround
Replace
flameshot gui
withgnome-terminal -- bash -c 'flameshot gui' &
this one works on fedora 39
To the .bashrc/.zshrc add the following lines:
export PATH=~/.local/bin:$PATH
Reopen the terminal, or just type bash
or zsh
Make a script in the ~/.local/bin/fixflameshot
#!/bin/bash
env QT_QPA_PLATFORM=wayland flameshot gui
EOF
Then
chmod +x ~/.local/bin/fixflameshot
Add the keyboard shortcut in the gnome-settings
Name: Flameshot
Command: fixflameshot
Shortcut: <Shorcut>
Special thanks to this gentleman for the workaround.
I've been using the suggested workaround for a couple weeks now but damn is it slow to add the image to the clipboard. Anyone got a fix for that?
I've been using the suggested workaround for a couple weeks now but damn is it slow to add the image to the clipboard. Anyone got a fix for that?
For me, it copies to clipboard almost instantly. I'm using pano-clipboard (gnome-extension), if that helps.
pano-clipboard helps as I can wait for that notification to show before I start trying to paste the image rather than spamming ctrl+v/ctrl+z until it shows.
Something I noticed after testing with it is that if I do a few screenshot==>copy it will work fast for all but the first one.
So example Screenshot1: Takes about 10-30 seconds to appear on clipboard Screenshot2: Takes sub 1 second (Same for all screenshots taken in rough succession.) Screenshot3: (about 10 minutes after screenshot2) Takes 10+ seconds again
I found some older threads about flameshot waiting on notifications before setting the clipboard but I can run notify-send test
at any point and there is no noticeable delay on notifications
Fedora 39: (for newbies like me, I will explain the workaround in little details)
To the .bashrc/.zshrc add the following lines:
export PATH=~/.local/bin:$PATH
Reopen the terminal, or just type
bash
orzsh
Make a script in the
~/.local/bin/fixflameshot
#!/bin/bash env QT_QPA_PLATFORM=wayland flameshot gui EOF
Then
chmod +x ~/.local/bin/fixflameshot
Add the keyboard shortcut in the
gnome-settings
Name:
Flameshot
Command:fixflameshot
Shortcut:<Shorcut>
Special thanks to this gentleman for the workaround.
Doesn´t work for me, but I get a better error:
xdg-desktop-por "Failed to show access dialog: GDBus.Error:org.freedesktop.DBus.Error.AccessDenied: Only the focused app is allowed to show a system access dialog"
Looks like the system can´t show the access permission dialog for some reason.
@marcosjoao37 did you follow the steps carefully? I'm afraid I can't help if this fix doesn't work for you. I'm currently on the latest version of Fedora 39 (updated the system yesterday, late night), and it's working fine for me.
@abuturabofficial Yep, did all you said. :/ Unfortunately, didn't work. I'm using Fedora in a Macbook Air (early 2014). In my lenovo ideapad didn't work too.
Below is a screenshot of my settings.
@marcosjoao37 Unfortunately, the method you're using didn't work for me either. Please make the script as I mentioned here. Then make that script executable.
To be extra sure, if it's working, run the script in the terminal ./<script name>
or simply put the name in the terminal. And then make a keyboard shortcut
, by putting just the name of the script, not the command you're using. You should carefully follow the fix I shared here step by step.
Edit: After looking at your screenshot again, I can see you have almost done every step quite right, in the last step you're making a little mistake by putting the value sh -c -- "flameshot gui"
in the shortcut command
field, instead you should put the script name fixflameshot
(in your case). To be extra sure, run the fixflameshot
in the terminal and see if the flameshot screenshot gui appears.
Script workaround did it for me.
Version: Arch Linux, 6.6.3-zen1-1-zen Flameshot v12.1.0 (-) Compiled with Qt 5.15.10 GNOME Shell 45.2
Script workaround worked for me as well. But it's still a workaround and I'd love to hear what the Flameshot team is gonna do about this.
using wrapper like /usr/local/bin/flameshot-gui allows to use as shortcut:
#!/bin/bash /usr/bin/flameshot gui
But paste after screenshoting doesn't work.
@darkblaze69 thanks. This worked for NixOS too. I just did it a little different, with home-manager, so I wouldn't have a random file hanging around. I'll put my solution here in case anyone needs it.
{ pkgs, ... }:
let
flameshot-gui = pkgs.writeShellScriptBin "flameshot-gui" "${pkgs.flameshot}/bin/flameshot gui";
in
{
dconf.settings = {
# Disables the default screenshot interface
"org/gnome/shell/keybindings" = {
show-screenshot-ui = [ ];
};
# Sets the new keybindings
"org/gnome/settings-daemon/plugins/media-keys" = {
custom-keybindings = [ "/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/" ];
};
# Defines the new shortcut
"org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0" = {
binding = "Print";
command = "${flameshot-gui}/bin/flameshot-gui";
name = "Flameshot";
};
};
}
This way, the wrapper script will be generated in the nix store and won't be in the PATH, and the shortcut will point to it directly.
@marcosjoao37 Unfortunately, the method you're using didn't work for me either. Please make the script as I mentioned here. Then make that script executable.
To be extra sure, if it's working, run the script in the terminal
./<script name>
or simply put the name in the terminal. And then make a keyboardshortcut
, by putting just the name of the script, not the command you're using. You should carefully follow the fix I shared here step by step.Edit: After looking at your screenshot again, I can see you have almost done every step quite right, in the last step you're making a little mistake by putting the value
sh -c -- "flameshot gui"
in the shortcutcommand
field, instead you should put the script namefixflameshot
(in your case). To be extra sure, run thefixflameshot
in the terminal and see if the flameshot screenshot gui appears.
I'm soooo sorry about that! Did it carefully this time and worked! As you pointed it out, I wrote the wrong command in keyboard shortcut window. I got confuse about another workaround that I was testing out. Thank you. 😬
Here are some screenshots of how it turned out.
@abuturabofficial Yep, did all you said. :/ Unfortunately, didn't work. I'm using Fedora in a Macbook Air (early 2014). In my lenovo ideapad didn't work too.
Below is a screenshot of my settings.
For me, using Ubuntu 23.10 work with this command: sh -c "flameshot gui"
This worked for me using home manager (but the wrapper script can be used anywhere):
home.packages = [
# ...
(pkgs.writeShellScriptBin "flameshot" ''
export XDG_SESSION_TYPE= QT_QPA_PLATFORM=wayland
nohup ${pkgs.flameshot}/bin/flameshot >& /dev/null &
${pkgs.flameshot}/bin/flameshot "$@"
'')
# ...
]
The other solutions in this thread started the gui but nothing was ever copied to the clipboard
Nobody mention that in Fedora 39 Python changed to 3.12. here is the journal output when I press the PRINT SCREEN button under F39 Gnome Wayland or I run "flameshot gui" from the terminal:
xdg-desktop-por[2758]: Failed to associate portal window with parent window ''
abrt-server[35698]: Not saving repeating crash in '/home/myuser/.config/sublime-text/Packages/Anaconda/anaconda_server/jsonserver.py'
python[35724]: detected unhandled Python exception in '/home/myuser/.config/sublime-text/Packages/Anaconda/anaconda_server/jsonserver.py'
abrt-server[35725]: Executable '/home/myuser/.config/sublime-text/Packages/Anaconda/anaconda_server/jsonserver.py' doesn't belong to any package and ProcessUnpackaged is set to
abrt-server[35725]: 'post-create' on '/var/spool/abrt/Python3-2024-01-25-14:14:32-35724' exited with 1
abrt-server[35725]: Deleting problem directory '/var/spool/abrt/Python3-2024-01-25-14:14:32-35724'
Hope that will help.
I starting used flatpak after meet this problem. easy bro)
While attempting to gather logs from the shortcut I found that the following makes it work as expected:
script --command "flameshot gui" /dev/null
Great that it works but that means we can't reproduce the issue with logging
Worked on Ubuntu 24.04 (Gnome 45.3 Wayland) with below command binding to custom shortcut -
/bin/sh -c "flameshot gui" > /dev/null &
you can create a custom launcher to use it from tray icon
vi ~/.local/share/applications/org.flameshot.Flameshot.desktop
Copy the below contents to the file
[Desktop Entry]
Name=Flameshot
GenericName=Screenshot tool
Comment=Powerful yet simple to use screenshot software.
Keywords=flameshot;screenshot;capture;shutter;
Exec=/bin/sh -c "flameshot" > /dev/null &
Icon=org.flameshot.Flameshot
Terminal=false
Type=Application
Categories=Graphics;
StartupNotify=false
[Desktop Action Configure]
Name=Configure
Exec=/bin/sh -c "flameshot config" > /dev/null &
[Desktop Action Capture]
Name=Take screenshot
Exec=/bin/sh -c "flameshot gui" > /dev/null &
[Desktop Action Launcher]
Name=Open launcher
Exec=/bin/sh -c "flameshot launcher" > /dev/null &
Run the below command
update-desktop-database ~/.local/share/applications
vim ~/.config/flameshot/flameshot.ini
add the below to the file
showDesktopNotification=false
While attempting to gather logs from the shortcut I found that the following makes it work as expected:
script --command "flameshot gui" /dev/null
Great that it works but that means we can't reproduce the issue with logging
This solution worked for me. The other workarounds launched an actual terminal screen that covered up what I was trying to take a screenshot of
script --command "flameshot gui" /dev/null
Big thanks to @raymondvchan! This solution solved the problem for me...
OS: Fedora Linux 39 (Workstation Edition) Gnome: 45.4 Kernel: Linux 6.7.5-200.fc39.x86_64
I have the same problem on Solus 4.5 with Gnome 45.4 (Wayland)
While attempting to gather logs from the shortcut I found that the following makes it work as expected:
script --command "flameshot gui" /dev/null
Great that it works but that means we can't reproduce the issue with logging
yahh, tks.
While attempting to gather logs from the shortcut I found that the following makes it work as expected:
script --command "flameshot gui" /dev/null
Great that it works but that means we can't reproduce the issue with logging
Thanks. The best solution🙏
What is the final verdict for Gnome desktops? I am in serious need of a good screenshot app.
@abdnafees
What is the final verdict for Gnome desktops? I am in serious need of the good screenshot app.
Gnome has yet again broken something, but other projects including Flameshot should not be held accountable for it!
That aside, folks here have already proposed the following workaround and other have confirmed it works:
script --command "flameshot gui" /dev/null
I tried to collect all the proposed solutions in one place to help Gnome users find the answer as fast as possible:
https://flameshot.org/docs/guide/wayland-help/#gnome-shortcut-does-not-trigger-flameshot
Personal suggestion: if you would like to have a "final verdict", stop using a DE that is subject to so much change and is that unstable.
@mmahmoudian My workaround from https://github.com/flameshot-org/flameshot/issues/3365#issuecomment-1756044844 still works perfectly fine:
I quick workaround is: copy your
/usr/share/applications/org.flameshot.Flameshot.desktop
file to~/.local/share/applications/flameshot.desktop
. xdg-desktop-portal is than able to properly find the application and asks for permissions and/or allows the screenshot. You can delete the new desktop file right after you granted permissions.
The workaround to open configuration, then take screenshot so the security pop-up is visible to allow screenshots come forward worked also for me.
Same issue
signal time=1714373438.909721 sender=org.freedesktop.DBus -> destination=:1.306 serial=2 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameAcquired string ":1.306" signal time=1714373438.909752 sender=org.freedesktop.DBus -> destination=:1.306 serial=4 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameLost string ":1.306" method call time=1714373446.694481 sender=:1.309 -> destination=org.freedesktop.DBus serial=12 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=AddMatch string "type='signal',sender='org.freedesktop.DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',arg0='org.a11y.Bus',arg1=''" method call time=1714373446.694513 sender=:1.309 -> destination=org.freedesktop.DBus serial=13 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameHasOwner string "org.a11y.Bus" method call time=1714373446.694662 sender=:1.309 -> destination=org.freedesktop.DBus serial=14 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=AddMatch string "type='signal',sender='org.freedesktop.DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',arg0='org.a11y.Bus'" method call time=1714373446.694672 sender=:1.309 -> destination=org.freedesktop.DBus serial=15 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=GetNameOwner string "org.a11y.Bus" method call time=1714373446.694797 sender=:1.309 -> destination=org.a11y.Bus serial=16 path=/org/a11y/bus; interface=org.freedesktop.DBus.Properties; member=Get string "org.a11y.Status" string "ScreenReaderEnabled" method call time=1714373446.695196 sender=:1.309 -> destination=org.a11y.Bus serial=17 path=/org/a11y/bus; interface=org.freedesktop.DBus.Properties; member=Get string "org.a11y.Status" string "IsEnabled" method call time=1714373473.903157 sender=:1.309 -> destination=org.freedesktop.Notifications serial=18 path=/org/freedesktop/Notifications; interface=org.freedesktop.DBus.Introspectable; member=Introspect method call time=1714373473.903939 sender=:1.309 -> destination=org.freedesktop.DBus serial=19 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=AddMatch string "type='signal',sender='org.freedesktop.DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',arg0='org.freedesktop.Notifications'" method call time=1714373473.904013 sender=:1.309 -> destination=org.freedesktop.DBus serial=20 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=GetNameOwner string "org.freedesktop.Notifications" method call time=1714373473.904368 sender=:1.309 -> destination=org.freedesktop.Notifications serial=21 path=/org/freedesktop/Notifications; interface=org.freedesktop.Notifications; member=Notify string "flameshot" uint32 0 string "flameshot" string "Flameshot Info" string "Capture saved to clipboard." array [ ] array [ ] int32 5000 method call time=1714373473.920813 sender=:1.309 -> destination=org.freedesktop.DBus serial=22 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=RemoveMatch string "type='signal',sender='org.freedesktop.DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',arg0='org.freedesktop.Notifications'" method return time=1714373473.931991 sender=:1.309 -> destination=:1.313 serial=23 reply_serial=21
Damn GNOME, you manage to mess up the only good and usable screenshot app.
Fedora 39: (para novatos como eu, vou explicar a solução alternativa em pequenos detalhes)
Para o .bashrc/.zshrc adicione as seguintes linhas:
export PATH=~/.local/bin:$PATH
Reabra o terminal ou apenas digite ou
bash``zsh
Faça um script no
~/.local/bin/fixflameshot
#!/bin/bash env QT_QPA_PLATFORM=wayland flameshot gui EOF
Então
chmod +x ~/.local/bin/fixflameshot
Adicione o atalho de teclado no
gnome-settings
Nome: Comando: Atalho:
Flameshot``fixflameshot``<Shorcut>
Agradecimentos especiais a este senhor pela solução alternativa.
Thank you very much, worked on Gnome 46. Ubuntu 24.04. I just changed the local
to usr
.
Workaround
Replace
flameshot gui
withgnome-terminal -- bash -c 'flameshot gui' &
This one worked for me, thank you very much. However I noticed it always opens the terminal which is kind of inconvenient. Will stick with this while a proper fix is found
[ Ubuntu 24.04 GNOME ]
Just do not forget to delay. I do use the GS dash so I have to enter overview => if no delay is set, you get a screenshot from a transitional state exiting overview.
So in Desktop action screenshot in launcher located in /usr/share/applications:
Exec=script --command "QT_QPA_PLATFORM=wayland flameshot gui --delay 500"
works perfectly for me.
(And please remember that the snap is not installable because dependencies are missing...)
[ Ubuntu 24.04 GNOME ]
Just do not forget to delay. I do use the GS dash so I have to enter overview => if no delay is set, you get a screenshot from a transitional state exiting overview.
So in Desktop action screenshot in launcher located in /usr/share/applications:
Exec=script --command "QT_QPA_PLATFORM=wayland flameshot gui --delay 500"
works perfectly for me.
(And please remember that the snap is not installable because dependencies are missing...)
My man. THANK YOU SO MUCH! I set this as the command on my keyboard shortcut and it is now working flawlessly! BTW, this is in Fedora 40 with GNOME 46.
While attempting to gather logs from the shortcut I found that the following makes it work as expected:
script --command "flameshot gui" /dev/null
Great that it works but that means we can't reproduce the issue with logging
Works just fine this way. Thanks!
Follow this process below the link: https://medium.com/@marcelofaciopalin/how-to-install-flameshot-on-ubuntu-22-04-and-enable-its-annotation-features-1e3ae6a45d50
I faced the same issue and is working fine.
Workaround Replace
flameshot gui
withgnome-terminal -- bash -c 'flameshot gui' &
This one worked for me, thank you very much. However I noticed it always opens the terminal which is kind of inconvenient. Will stick with this while a proper fix is found
This is worked for me on Fedora Linux 40. Thanks mate :)
Flameshot v12.1.0 Ubuntu 24.04
This works for me:
Take the screenshot as you normally do and as many times you'd like, the flameshot is now working as normal.
If you restart your computer, then you have to redo the above steps.
Good luck!
Flameshot v12.1.0 Ubuntu 24.04
This works for me:
- open the flameshot
- click the flameshot icon on top right bar of ubuntu. do NOT click "Take Screenshot" yet, but click "Configuration" instead
- with the flameshot configuration window opened, click the flameshot icon again on top right bar, this time click the "Take Screenshot", voila!
Take the screenshot as you normally do and as many times you'd like, the flameshot is now working as normal.
If you restart your computer, then you have to redo the above steps.
Good luck!
This also worked for me. Thank you!
Flameshot v12.1.0 Ubuntu 24.04
This works for me:
- open the flameshot
- click the flameshot icon on top right bar of ubuntu. do NOT click "Take Screenshot" yet, but click "Configuration" instead
- with the flameshot configuration window opened, click the flameshot icon again on top right bar, this time click the "Take Screenshot", voila!
Take the screenshot as you normally do and as many times you'd like, the flameshot is now working as normal.
If you restart your computer, then you have to redo the above steps.
Good luck!
Hi, look like flameshot can't ask for needed permissions, this tips make it works.
you can simply set the custom shortkey to sh -c "flameshot gui"
Follow this process below the link: https://medium.com/@marcelofaciopalin/how-to-install-flameshot-on-ubuntu-22-04-and-enable-its-annotation-features-1e3ae6a45d50
I faced the same issue and is working fine.
The Medium article is saying the fix is to switch from Wayland to xorg. That affects not just flameshot, but the entire desktop and is not a good suggestion unless people know what they're doing.
@abuturabofficial Yep, did all you said. :/ Unfortunately, didn't work. I'm using Fedora in a Macbook Air (early 2014). In my lenovo ideapad didn't work too. Below is a screenshot of my settings.
For me, using Ubuntu 23.10 work with this command: sh -c "flameshot gui"
Worked for me in Ubuntu 24.04
While attempting to gather logs from the shortcut I found that the following makes it work as expected:
script --command "flameshot gui" /dev/null
Great that it works but that means we can't reproduce the issue with logging
This worked for me in Ubuntu 24.04. I disabled the screenshot shortcut for "print screen" then assigned this command to "print screen" as a custom shortcut. Worked like a charm!
you can simply set the custom shortkey to
sh -c "flameshot gui"
thank you its working
For what it's worth, the script --command "flameshot gui" /dev/null
solution works for me, and plain flameshot gui
and sh -c "flameshot gui"
does not:
switching to xorg from wayland solved problem for me, fedora 40
Flameshot v12.1.0 Ubuntu 24.04
This works for me:
- open the flameshot
- click the flameshot icon on top right bar of ubuntu. do NOT click "Take Screenshot" yet, but click "Configuration" instead
- with the flameshot configuration window opened, click the flameshot icon again on top right bar, this time click the "Take Screenshot", voila!
Take the screenshot as you normally do and as many times you'd like, the flameshot is now working as normal.
If you restart your computer, then you have to redo the above steps.
Good luck!
Thank you, it worked for me
Flameshot Version
Flameshot v12.1.0 (-) Compiled with Qt 5.15.10
Installation Type
Linux, MacOS, or Windows Package manager (apt, pacman, eopkg, choco, brew, ...)
Operating System type and version
Arch with kernel 6.5.4-273-tkg-bore
Description
When using a shortcut (Print screen) to run Flameshot I get "Unable to capture screen".
When I run the command from the shortcut in a terminal, it works.
Now both used to work fine before, but stopped working after my daily updates sometime this week. The normal Gnome screenshot program still works.
If you can tell me where I should look for further logs, please do, so I can upload them.
Steps to reproduce
In Arch running Gnome:
/usr/bin/flameshot gui
Screenshots or screen recordings
System Information