flameshot-org / flameshot

Powerful yet simple to use screenshot software :desktop_computer: :camera_flash:
https://flameshot.org
GNU General Public License v3.0
25.01k stars 1.6k forks source link

Flameshot fails to copy to clipboard or save to disk on Ubuntu 20.04.3 #2449

Open speedym opened 2 years ago

speedym commented 2 years ago

Flameshot Version

Flameshot v11.0.0

Installation Type

Linux, MacOS, or Windows Package manager (apt, pacman, eopkg, choco, brew, ...)

Operating System type and version

Ubuntu 20.04.3 LTS (Focal Fossa)

Description

Both saving to disk and saving to clipboard do not work.

Steps to reproduce

  1. run flameshot

  2. capture part of the screen

  3. try saving to disk as png

  4. notice that the file name is mangled .xdp_test.LZKTH1

  5. run flameshot

  6. capture part of the screen

  7. try copying to clipboard

  8. notice that pasting produce the previous clipboard value, like Flameshot failed to overwrite the clipboard

Screenshots or screen recordings

No response

System Information

System: Host: TANKBOY Kernel: 5.4.0-99-generic x86_64 bits: 64 Desktop: Gnome 3.36.9 Distro: Ubuntu 20.04.3 LTS (Focal Fossa) Graphics: Device-1: NVIDIA GM204M [GeForce GTX 970M] driver: nvidia v: 390.144 Display: x11 server: X.Org 1.20.13 driver: nvidia unloaded: fbdev,modesetting,nouveau,vesa resolution: 3840x2160~60Hz, 1920x1080~60Hz OpenGL: renderer: GeForce GTX 970M/PCIe/SSE2 v: 4.6.0 NVIDIA 390.144

mmahmoudian commented 2 years ago

@speedym Thanks for the bug report, I would be thankful if you:

  1. Correct and clarify your installation method. It is impossible to install v11.0.0 on Ubuntu 20.04 using apt
  2. the command you use
  3. your configuration file content which can be found in ~/.config/flameshot/flameshot.ini. Basically you can do the foolowing to copy it to your clipboard automatically and paste it here:
xclip -selection clipboard ~/.config/flameshot/flameshot.ini
abhisheklalnediya commented 2 years ago
abhisheklal@abhisheklal-Lenovo-Yoga-S740-14IIL:~/works/intigral-webtv$ flameshot screen -n 0 --clipboard
Qt: Session management error: Could not open network socket
propsReply "An AppArmor policy prevents this sender from sending this message to this recipient; type=\"method_call\", sender=\":1.617\" (uid=1000 pid=219884 comm=\"/snap/flameshot/180/usr/local/bin/flameshot screen\" label=\"snap.flameshot.flameshot (enforce)\") interface=\"org.freedesktop.DBus.Properties\" member=\"GetAll\" error name=\"(unset)\" requested_reply=\"0\" destination=\"org.freedesktop.NetworkManager\" (uid=0 pid=962 comm=\"/usr/sbin/NetworkManager --no-daemon \" label=\"unconfined\")"
nmReply "An AppArmor policy prevents this sender from sending this message to this recipient; type=\"method_call\", sender=\":1.617\" (uid=1000 pid=219884 comm=\"/snap/flameshot/180/usr/local/bin/flameshot screen\" label=\"snap.flameshot.flameshot (enforce)\") interface=\"org.freedesktop.NetworkManager\" member=\"GetDevices\" error name=\"(unset)\" requested_reply=\"0\" destination=\"org.freedesktop.NetworkManager\" (uid=0 pid=962 comm=\"/usr/sbin/NetworkManager --no-daemon \" label=\"unconfined\")"
"Object path cannot be empty"
abhisheklal@abhisheklal-Lenovo-Yoga-S740-14IIL:~/works/intigral-webtv$ flameshot screen -n 0 -p ~/Pictures/2.0.0/
Qt: Session management error: Could not open network socket
propsReply "An AppArmor policy prevents this sender from sending this message to this recipient; type=\"method_call\", sender=\":1.618\" (uid=1000 pid=219998 comm=\"/snap/flameshot/180/usr/local/bin/flameshot screen\" label=\"snap.flameshot.flameshot (enforce)\") interface=\"org.freedesktop.DBus.Properties\" member=\"GetAll\" error name=\"(unset)\" requested_reply=\"0\" destination=\"org.freedesktop.NetworkManager\" (uid=0 pid=962 comm=\"/usr/sbin/NetworkManager --no-daemon \" label=\"unconfined\")"
nmReply "An AppArmor policy prevents this sender from sending this message to this recipient; type=\"method_call\", sender=\":1.618\" (uid=1000 pid=219998 comm=\"/snap/flameshot/180/usr/local/bin/flameshot screen\" label=\"snap.flameshot.flameshot (enforce)\") interface=\"org.freedesktop.NetworkManager\" member=\"GetDevices\" error name=\"(unset)\" requested_reply=\"0\" destination=\"org.freedesktop.NetworkManager\" (uid=0 pid=962 comm=\"/usr/sbin/NetworkManager --no-daemon \" label=\"unconfined\")"
"Object path cannot be empty"
flameshot: error: Error trying to save as /home/abhisheklal/Pictures/2.0.0/2022-02-25_11-58.0

This is the error I am getting when try to capture to a file using CLI

abhisheklalnediya commented 2 years ago
abhisheklal@abhisheklal-Lenovo-Yoga-S740-14IIL:~/works/intigral-webtv$ xclip -selection clipboard ~/.config/flameshot/flameshot.ini
xclip: /home/abhisheklal/.config/flameshot/flameshot.ini: No such file or directory
abhisheklal@abhisheklal-Lenovo-Yoga-S740-14IIL:~/works/intigral-webtv$ 

speedym commented 2 years ago

Similar errors here as @abhisheklalnediya:

$ flameshot screen -n 0 --clipboard Qt: Session management error: Could not open network socket propsReply "An AppArmor policy prevents this sender from sending this message to this recipient; type=\"method_call\", sender=\":1.1291\" (uid=1000 pid=64426 comm=\"/snap/flameshot/180/usr/local/bin/flameshot screen\" label=\"snap.flameshot.flameshot (enforce)\") interface=\"org.freedesktop.DBus.Properties\" member=\"GetAll\" error name=\"(unset)\" requested_reply=\"0\" destination=\"org.freedesktop.NetworkManager\" (uid=0 pid=947 comm=\"/usr/sbin/NetworkManager --no-daemon \" label=\"unconfined\")" nmReply "An AppArmor policy prevents this sender from sending this message to this recipient; type=\"method_call\", sender=\":1.1291\" (uid=1000 pid=64426 comm=\"/snap/flameshot/180/usr/local/bin/flameshot screen\" label=\"snap.flameshot.flameshot (enforce)\") interface=\"org.freedesktop.NetworkManager\" member=\"GetDevices\" error name=\"(unset)\" requested_reply=\"0\" destination=\"org.freedesktop.NetworkManager\" (uid=0 pid=947 comm=\"/usr/sbin/NetworkManager --no-daemon \" label=\"unconfined\")" "Object path cannot be empty"

Config file (xclip -selection clipboard ~/.config/flameshot/flameshot.ini):

[General] disabledTrayIcon=false showStartupLaunchMessage=true

[Shortcuts] TYPE_ARROW=A TYPE_CIRCLE=C TYPE_CIRCLECOUNT= TYPE_COMMIT_CURRENT_TOOL=Ctrl+Return TYPE_COPY=Ctrl+C TYPE_DELETE_CURRENT_TOOL=Del TYPE_DRAWER=D TYPE_EXIT=Ctrl+Q TYPE_MARKER=M TYPE_MOVESELECTION=Ctrl+M TYPE_MOVE_DOWN=Down TYPE_MOVE_LEFT=Left TYPE_MOVE_RIGHT=Right TYPE_MOVE_UP=Up TYPE_OPEN_APP=Ctrl+O TYPE_PENCIL=P TYPE_PIN= TYPE_PIXELATE=B TYPE_RECTANGLE=R TYPE_REDO=Ctrl+Shift+Z TYPE_RESIZE_DOWN=Shift+Down TYPE_RESIZE_LEFT=Shift+Left TYPE_RESIZE_RIGHT=Shift+Right TYPE_RESIZE_UP=Shift+Up TYPE_SAVE=Ctrl+S TYPE_SELECTION=S TYPE_SELECTIONINDICATOR= TYPE_SELECT_ALL=Ctrl+A TYPE_TEXT=T TYPE_TOGGLE_PANEL=Space TYPE_UNDO=Ctrl+Z

speedym commented 2 years ago

@mmahmoudian: You are correct, my bad, I didn't install flameshot via apt, I think I installed it via snap. "Ubuntu software" app. is showing it when I search for flameshot.

speedym commented 2 years ago

I can confirm that installing flameshot from .deb file instead from using snap fixes this issue. I think the issue has something to do with the snap apparmor policies set by the snap package (which are stored in: /var/lib/snapd/apparmor/profiles/).

mmahmoudian commented 2 years ago

we have had similar type of issue reported for Snap. This should be investigated.

VasoVV commented 2 years ago

Kubuntu 22.04 flameshot v12.1.0+git4.33f48f4a installed from snap

"Pin" and "Copy to clipboard" doesn't work if Flameshot is starting in single mode (no desktop application is running).

Explanation: I don't need Flameshot is always running (what for???) I use a key sequence ctrl+Print to call Flameshot GUI flameshot gui But in this way, it works only with Flameshot installed from deb (which is outdated), but not from a snap.

Is it possible to make a snap variant works the same as an apt installation?

mmahmoudian commented 2 years ago

@VasoVV are you on Wayland?

VasoVV commented 2 years ago

@VasoVV are you on Wayland?

Xorg.

p.s. I've updated my post after some research.

mmahmoudian commented 2 years ago

@VasoVV

I don't need Flameshot is always running (what for???)

For either of three reasons:

  1. keeping pinned screenshots open
  2. keeping screenshot in clipboard
  3. user wants this behavior (can be toggled easily in the config)

image

I'll mark all these as off-topic as none of these have anything to do with the original post of this thread.