[go: up one dir, main page]

Skip to content
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

Screen Tearing in Office 365 (Powerpoint, Excel, Onenote and Word) #72

Open
Pandananana opened this issue Jan 18, 2024 · 13 comments
Open
Labels
bug Something isn't working freerdp Issue related to freerdp legacy Using legacy winapps

Comments

@Pandananana
Copy link

I followed the installation guide and got everything set up. I also installed Spice Guest Tools.

I had issues with virsh not detecting RDPWindows, but this worked: Fmstrat/winapps#312 (comment)

After running the installer.sh script, I now see all the applications that I want, however when I open them, there is some very noticeable screen tearing, and this is for all the applications that I installed (Powerpoint, Excel, Onenote and Word [all Office365])

image

There is no issue with File Explorer using the bin/winapps check command. This is the terminal output from that command

bin/winapps check
[18:53:53:161] [7055:7056] [WARN][com.freerdp.crypto] - Certificate verification failure 'self-signed certificate (18)' at stack position 0
[18:53:53:161] [7055:7056] [WARN][com.freerdp.crypto] - CN = RDPWindows
[18:53:55:665] [7055:7056] [INFO][com.freerdp.gdi] - Local framebuffer format  PIXEL_FORMAT_BGRX32
[18:53:55:665] [7055:7056] [INFO][com.freerdp.gdi] - Remote framebuffer format PIXEL_FORMAT_BGRA32
[18:53:55:668] [7055:7074] [INFO][com.freerdp.channels.rdpdr.client] - Loading device service drive [home] (static)
[18:53:55:668] [7055:7056] [INFO][com.freerdp.channels.rdpsnd.client] - [static] Loaded fake backend for rdpsnd
[18:53:55:668] [7055:7056] [INFO][com.freerdp.channels.drdynvc.client] - Loading Dynamic Virtual Channel rdpgfx
[18:53:55:668] [7055:7056] [INFO][com.freerdp.channels.drdynvc.client] - Loading Dynamic Virtual Channel disp
[18:53:56:605] [7055:7056] [WARN][com.freerdp.client.x11] - xf_Pointer: Invalid appWindow
[18:53:56:605] [7055:7056] [WARN][com.freerdp.client.x11] - xf_Pointer_Set: handle=0
[18:53:56:750] [7055:7056] [WARN][com.freerdp.client.x11] - xf_Pointer: Invalid appWindow
[18:53:56:750] [7055:7056] [WARN][com.freerdp.client.x11] - xf_Pointer_Set: handle=0
[18:53:56:828] [7055:7056] [WARN][com.freerdp.client.x11] - xf_Pointer: Invalid appWindow
[18:53:56:828] [7055:7056] [WARN][com.freerdp.client.x11] - xf_Pointer_Set: handle=0
[18:53:56:893] [7055:7056] [WARN][com.freerdp.client.x11] - xf_Pointer: Invalid appWindow
[18:53:56:893] [7055:7056] [WARN][com.freerdp.client.x11] - xf_Pointer_Set: handle=0
[18:53:57:124] [7055:7074] [INFO][com.freerdp.channels.rdpdr.client] - registered device #1: home (type=8 id=1)
[18:53:57:522] [7055:7056] [WARN][com.freerdp.client.x11] - xf_Pointer: Invalid appWindow
[18:53:57:544] [7055:7056] [WARN][com.freerdp.client.x11] - xf_Pointer: Invalid appWindow
[18:53:57:544] [7055:7056] [WARN][com.freerdp.client.x11] - xf_Pointer_Set: handle=0
[18:53:58:793] [7055:7056] [WARN][com.freerdp.client.x11] - xf_Pointer: Invalid appWindow
[18:53:58:793] [7055:7056] [WARN][com.freerdp.client.x11] - xf_Pointer_Set: handle=0
[18:53:58:932] [7055:7056] [WARN][com.freerdp.client.x11] - xf_Pointer: Invalid appWindow
[18:53:58:932] [7055:7056] [WARN][com.freerdp.client.x11] - xf_Pointer_Set: handle=0
[18:53:58:959] [7055:7056] [WARN][com.freerdp.client.x11] - xf_Pointer: Invalid appWindow
[18:53:58:959] [7055:7056] [WARN][com.freerdp.client.x11] - xf_Pointer_Set: handle=0
[18:53:58:012] [7055:7056] [WARN][com.freerdp.client.x11] - xf_Pointer: Invalid appWindow
[18:53:58:012] [7055:7056] [WARN][com.freerdp.client.x11] - xf_Pointer_Set: handle=0
^C[18:55:02:881] [7055:7055] [ERROR][com.freerdp.utils] - Caught signal 'Interrupt' [2]
[18:55:02:881] [7055:7055] [ERROR][com.freerdp.utils] - 0: /lib64/libwinpr2.so.2(winpr_backtrace+0x52) [0x7f3460cdeb62]

[18:55:02:882] [7055:7055] [ERROR][com.freerdp.utils] - 1: /lib64/libwinpr2.so.2(winpr_log_backtrace_ex+0x34) [0x7f3460ce0a14]

[18:55:02:882] [7055:7055] [ERROR][com.freerdp.utils] - 2: /lib64/libfreerdp2.so.2(+0x31502) [0x7f3460e9f502]

[18:55:02:882] [7055:7055] [ERROR][com.freerdp.utils] - 3: /lib64/libc.so.6(+0x3e9a0) [0x7f3460ae59a0]

[18:55:02:882] [7055:7055] [ERROR][com.freerdp.utils] - 4: /lib64/libc.so.6(__poll+0x4d) [0x7f3460baebcd]

[18:55:02:882] [7055:7055] [ERROR][com.freerdp.utils] - 5: /lib64/libwinpr2.so.2(+0x41599) [0x7f3460ccc599]

[18:55:02:882] [7055:7055] [ERROR][com.freerdp.utils] - 6: /lib64/libwinpr2.so.2(WaitForSingleObjectEx+0x4d3) [0x7f3460ccce13]

[18:55:02:882] [7055:7055] [ERROR][com.freerdp.utils] - 7: xfreerdp(+0x86c8) [0x55db3903b6c8]

[18:55:02:882] [7055:7055] [ERROR][com.freerdp.utils] - 8: /lib64/libc.so.6(+0x2814a) [0x7f3460acf14a]

[18:55:02:882] [7055:7055] [ERROR][com.freerdp.utils] - 9: /lib64/libc.so.6(__libc_start_main+0x8b) [0x7f3460acf20b]

[18:55:02:882] [7055:7055] [ERROR][com.freerdp.utils] - 10: xfreerdp(_start+0x25) [0x55db3903b775]

I am running Fedora Linux 39 (Workstation Edition).

@AkechiShiro
Copy link
AkechiShiro commented Jan 21, 2024

Could you precise your desktop environment (I think it's Gnome), can you provide more information on which version of gnome, you're running ?

Please precise also if you're running on X11 or Wayland.

@AkechiShiro
Copy link

Also I'd recommend you'd take a look at : FreeRDP/FreeRDP#8619

@Pandananana
Copy link
Author

I am running Gnome 45.3, here is neofetch info.

OS: Fedora Linux 39 (Workstation Edition)
Host: 20XW005JMX ThinkPad X1 Carbon Ge 
Kernel: 6.6.9-200.fc39.x86_64 
Uptime: 4 days, 3 hours, 3 mins 
Packages: 2048 (rpm), 31 (flatpak) 
Shell: bash 5.2.21 
Resolution: 1920x1200 
DE: GNOME 45.3 
WM: Mutter 
WM Theme: Adwaita 
Theme: Adwaita [GTK2/3] 
Icons: Adwaita [GTK2/3] 
Terminal: gnome-terminal 
CPU: 11th Gen Intel i7-1165G7 (8) @ 4. 
GPU: Intel TigerLake-LP GT2 [Iris Xe G 
Memory: 4113MiB / 15710MiB 

I looked at the FreeRDP issue you linked, but couldn't find what their solution was, other than using Remmina, but is this possible with winapps?

I also noticed this issue Fmstrat/winapps#342, but I don't know how to install FreeRDP 3.0.0 on Fedora.

@AkechiShiro
Copy link

Could you provide the value of echo $XDG_SESSION_TYPE ?

@Pandananana
Copy link
Author

It returns wayland

Here is the value for rpm -qa | grep wayland

libwayland-client-1.22.0-2.fc39.x86_64
libwayland-server-1.22.0-2.fc39.x86_64
libwayland-cursor-1.22.0-2.fc39.x86_64
libwayland-egl-1.22.0-2.fc39.x86_64
xisxwayland-2-3.fc39.x86_64
qt5-qtwayland-5.15.11-1.fc39.x86_64
qt6-qtwayland-6.6.0-1.fc39.x86_64
gnome-session-wayland-session-45.0-3.fc39.x86_64
xorg-x11-server-Xwayland-23.2.4-1.fc39.x86_64

@oskardotglobal
Copy link
Member

I don't know how to install FreeRDP 3.0.0 on Fedora.

You can grab prebuilds from their nightly CI: https://ci.freerdp.com/job/freerdp-nightly-rpm-mock/
See https://github.com/FreeRDP/FreeRDP/wiki/Prebuilds

@Pandananana
Copy link
Author

When i try to install from their nightly i get this error:

Last metadata expiration check: 0:00:46 ago on 2024-01-23T18:11:57 CET.
Error: 
 Problem: conflicting requests
  - nothing provides librdtk0.so.0()(64bit) needed by freerdp-nightly-3.0-0+0~20231205033814.1483~1.gitdcefd4f86.x86_64 from freerdp-nightly
  - nothing provides librdtk0.so.0()(64bit) needed by freerdp-nightly-3.0-0+0~20231206033814.1484~1.gitdd56308bd.x86_64 from freerdp-nightly
(try to add '--skip-broken' to skip uninstallable packages)

I noticed this issue (FreeRDP/FreeRDP#9671) that includes a pull request that apparently fixes the issue, but I don't know what to do with this information. I am a little lost.

@joezhouchenye
Copy link

I don't know how to install FreeRDP 3.0.0 on Fedora.

You can grab prebuilds from their nightly CI: https://ci.freerdp.com/job/freerdp-nightly-rpm-mock/ See https://github.com/FreeRDP/FreeRDP/wiki/Prebuilds

@oskardotglobal
FreeRDP 3 shouldn't be recommended if you haven't changed the Winapps script. It uses different command arguments compared with FreeRDP2. For example, /app:<path> is replaced with /app:program:<path>. FreeRDP 3 cannot be directly used with the current script.

@Pandananana
Copy link
Author

I don't know how to install FreeRDP 3.0.0 on Fedora.

You can grab prebuilds from their nightly CI: https://ci.freerdp.com/job/freerdp-nightly-rpm-mock/ See https://github.com/FreeRDP/FreeRDP/wiki/Prebuilds

@oskardotglobal FreeRDP 3 shouldn't be recommended if you haven't changed the Winapps script. It uses different command arguments compared with FreeRDP2. For example, /app:<path> is replaced with /app:program:<path>. FreeRDP 3 cannot be directly used with the current script.

If I get FreeRDP 3 then I would use this repo (https://github.com/MIOGMIOG/winapps-working) where the script has been updated. But as of right now I still can't get the nightly build installed.

@y-samy
Copy link
y-samy commented Feb 1, 2024

When i try to install from their nightly i get this error:

Last metadata expiration check: 0:00:46 ago on 2024-01-23T18:11:57 CET.
Error: 
 Problem: conflicting requests
  - nothing provides librdtk0.so.0()(64bit) needed by freerdp-nightly-3.0-0+0~20231205033814.1483~1.gitdcefd4f86.x86_64 from freerdp-nightly
  - nothing provides librdtk0.so.0()(64bit) needed by freerdp-nightly-3.0-0+0~20231206033814.1484~1.gitdd56308bd.x86_64 from freerdp-nightly
(try to add '--skip-broken' to skip uninstallable packages)

I noticed this issue (FreeRDP/FreeRDP#9671) that includes a pull request that apparently fixes the issue, but I don't know what to do with this information. I am a little lost.

You can apply the changes in this commit (from the issue you mentioned) to the spec file in the freerdp-nightly-3.0-0+020231206033814.14841.gitdd56308bd.src.rpm file from the prebuilds, effectively applying the same fix. Here's a short tutorial:

  1. sudo dnf install rpm-build
  2. rpm -ivh ./freerdp-nightly-3.0-0+0~20231206033814.1484~1.gitdd56308bd.src.rpm
  3. cd ~/rpmbuild/SPECS/
  4. edit the spec file to match that in the commit linked above, should be straightforward
  5. build an rpm to install with dnf:
    rpmbuild -ba ~/rpmbuild/SPECS/freerdp-nightly.spec --target=x86_64
  6. it may tell you you're missing certain libraries for building, it will list out the devel package names for them, install them with dnf as you usually would
  7. re-run the command in 5. once all deps are satisfied
  8. sudo dnf install the correct rpm in ~/rpmbuild/RPMS/x86_64/ (should have the same name as the rpm you were trying to install previously)

I know it's somewhat low-quality, but I hope it helps! Don't forget to add the binaries to your path after it installs, or to explicitly call them by their path.

@SVTA-OP
Copy link
SVTA-OP commented Feb 10, 2024

Right now, maximizing windows without tearing is hit or miss, but a workaround I use is to open the app as a window (if it is maximized press Win+ ↓) and then maximize it again. Works on gnome 45 half the time.

@joezhouchenye
Copy link

I installed it on my new computer with Ubuntu 23.10, Gnome 45, and FreeRDP 2.10.0. Don't close it with the window maximized; the next time, everything will work fine. If you accidentally close it with the window maximized, press Win+ ↓.

@joezhouchenye
Copy link

BTW, don't use freerdp-nightly on Ubuntu 23.10. I have no idea why but I can only run it in Terminal with the Exec field content in the desktop file. The desktop file itself just won't work (it works in Ubuntu 22.04 with GNOME 42 though). Also, the tearing issue is worse with FreeRDP 3.

@oskardotglobal oskardotglobal added bug Something isn't working legacy Using legacy winapps freerdp Issue related to freerdp labels May 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working freerdp Issue related to freerdp legacy Using legacy winapps
Projects
None yet
Development

No branches or pull requests

6 participants