LINUX.ORG.RU

rdesktop дурацкий курсор

 


1

1

Добрый день,

Не знаю как показать проблему. scrot, делая скриншот, не показывает, как оно выглядит. Но суть в том, что если я делаю:

rdesktop -f -u <username> <IP>

То курсор мыши в окошке rdesktop вокруг себя имеет вырвиглазный черный квадрат. У меня нету под рукой телефона, чтобы показать, но я постараюсь, через пару часов это сделать.

Но может быть из самого описания понятно в чем проблема и как ее решить? Чтение man rdesktop не помогло.

★★

Последнее исправление: dissident (всего исправлений: 1)
Ответ на: комментарий от Yorween

Как? Выглядит как-то так:

C===
=C==
==C=
  • 'C' - курсор
  • '=' - запчасти черного квадрата Малевича

И весь этот квадрат с курсором внутри двигается мышкой. Действительно похоже на тень, только какую-то укуренную, квадратную, тогда как курсор не квадратен.

Ну нету под рукой фоотоаппарата, вечером будет, покажу.

dissident ★★
() автор топика
Ответ на: комментарий от Yorween

Это на машине куда рдесктоплюсь? Секунда.

А вообще вот так как-то выглядит: http://isticktoit.net/wp-content/uploads/2015/01/CitrixBlackboxMouse.jpg Только квадрат меньше, а курсор больше. Ну и на машине не винда а Ubuntu с awesome wm. А так тоже самое.

dissident ★★
() автор топика
Ответ на: комментарий от Yorween

Не помогло. Сделал так на рабочей машине. Ее перегрузить надо? Не могу, придется пароль от диска писать руками, могу только завтра. Или xrdp перегрузить? А как композитинг отключить? У меня на работе Ubuntu, Awesome WM, в ~/.Xsession написано:

#!/bin/bash

awesome

Там же стоит xrdp путем:

$ sudo apt-get install xrdp
$ sudo ufw allow 3389/tcp
$ systemctl enable xrdp.service
$ systemctl start xrdp.service
$ systemctl enable xrdp-sesman.service # probably not needed on Ubuntu?
$ systemctl start xrdp-sesman.service # probably not needed on Ubuntu?

Дома делаю rdesktop -f -u <username> <work_ip>.

dissident ★★
() автор топика
Ответ на: комментарий от Yorween

И там и там не помогает Xcursor.core: 1

  • Как отключить композитинг?
  • Как откючить прозрачность?

А может это awesome wm так все портит?

dissident ★★
() автор топика
Ответ на: комментарий от dissident

Рестартани иксы. У тебя осом на госте, а на хосте что? Композитный менеджер включен какой-нибудь? Вроде compton'a. Если да, кильни его на время.

Yorween
()
Ответ на: комментарий от Yorween

BTW вот-то https://askubuntu.com/questions/820950/disable-compositing-completely-ubuntu-...

помогает частично. Т.е. если я запущу из lxtermninal просто gvim то вырвиглазный квадрат внутри gvim'а есть, но если я сделаю вот так:

XLIB_SKIP_ARGB_VISUALS=1 gvim

то как только я наведу курсор на окно gvim вырвиглазный квадрат уступает место нормальному курсору. Но это только половина решения. Из того же линка:

Apparently unity-2D is discontinued in ubuntu 16.04. Thus lxde is the next slim option to have a session without compositing enabled.

Но у меня же awesome wm и он мне дорог как память. Значит ли это, что мне надо пинать товарищей от awesome, чтобы они сделали как в lxde?

Конфигурация такая:

На работе: Ubuntu 18.04 xrdp поставленный через apt-get awesome wm стартующий из gdm или что там в Ubuntu, я просто поставил пакет и в стандартном login screen выбираю awesome. Кроме стандартных apt-get install xrdp, systemctl enable|start xrdp.service я с дополнительно сделал sudo ufw allow 3389/tcp и вписал в ~/.Xsession awesome. Так все заработало.

Дома: Arch awesome wm запускаемый startx'ом из .bash_profile (и в .xinitrc написано, что надо awesome

На работе вечно включен комп с вечно работающим xrdp. Я просто делаю:

rdesktop -f -u work_username work_ip

Но похоже виноват compositing и что, он таки, в Ubuntu 18.04 не выключаем? Что же делать? Как же быть? Как же не пить?

dissident ★★
() автор топика
Ответ на: комментарий от dissident

Я в осоме не особо, но там вроде нет встроенного композитора. Получается у тебя ни там, ни там его нет. Тогда ход конем. Поставь compton, добавь его в автозагрузку с дефолтным конфигом и на всякий перелогинься.

Yorween
()
Ответ на: комментарий от dissident

Вроде помогает. Перегружать X'ы боюсь, там все эти gdm'ы, я в них не разбераюсь. На работе перегружу. Но секретная переменная вроде помогает.

dissident ★★
() автор топика
Ответ на: комментарий от dissident

Ладно. Фотка видимо уже не нужна, так как вот это http://isticktoit.net/wp-content/uploads/2015/01/CitrixBlackboxMouse.jpg хорошо показывает, что происходит за исключением того, что:

  • курсор больше
  • курсор иногда меняется со стрелки на палку если он «над терминалом»
  • так или иначе он внутри черного квадрата, что очень неудобно

Я попру завтра лаптоп на работу и попробую:

  • Xcursor.core: 1 -> ~/.Xresources -> xrdb -merge ~/.Xresources -> restart
  • compton here and there -> restart
  • export XLIB_SKIP_ARGB_VISUALS=1 to ~/.bashrc -> restart

И отвечу здесь, что помогает.

Кстати, я почитал: https://unix.stackexchange.com/questions/359257/what-is-a-compositor-in-gener... и не понимаю одной вещи. Если композитора нет, то «he application itself had to be send a message informing that (part of) the window had been exposed. When this happened, the application was expected to do the redrawing. If the application failed to do so, the area would typically retain its old, now garbled contents.» значит что некоторые программы могут некорректно отображаться? Вроде в осоме не заметил. Или это плюшка архитектурно-кошернее/быстрее?

dissident ★★
() автор топика
Последнее исправление: dissident (всего исправлений: 2)
Ответ на: комментарий от dissident

dissident (27.12.2018 17:43:58)

вырвиглазный черный квадрат.

Попробуй также на удалёнке xhhpc накатить. Даже если с ~/.Xresources ничего не замутится, автовыключение курсора всегда удалённо сможешь запустить:

$ xhhpc -i 3 -v

Deleted
()
Последнее исправление: Deleted (всего исправлений: 1)
Ответ на: комментарий от Deleted

unclutter пробовал, но он что-то ничего не сделал. Но все равно спасибо, попробую и это.

Но я не понимаю вообще.

  • Дома compositing в awesome нету
  • На работе compositing в awesome нету
  • Почему тогда XLIB_SKIP_ARGB_VISUALS=1 для, как минимум, gvim и QtCreator помогает?

Она же вроде выключает что-то про композитинг:

When the Composite extension is enabled via xorg.conf or the command line, a new visual is created

(c) https://www.x.org/archive/X11R6.8.0/doc/RELNOTES5.html

И еще, почему я не замечал проблем в awesome, раз там нет композитинга?

И раз мешает композитинг, то почему совет: поставь compton, т.е. включи композитинг?

И как это в Ubuntu композитинг не выключаем вроде как https://askubuntu.com/questions/820950/disable-compositing-completely-ubuntu-... а в awesome его нету? Какая разница Ubuntu/не Ubuntu если в WM нету композинга? Или он в Ubuntu какой-то тулзой еще в gdm включается?

Я признаю, я полный лох. У кого-нибудь есть время объяснить, хоть в двух словах, хоть в виде сферического коня в вакууме?

dissident ★★
() автор топика
Последнее исправление: dissident (всего исправлений: 1)
Ответ на: комментарий от dissident

У кого-нибудь есть время объяснить, хоть в двух словах

В двух словах: метод научного тыка никто не отменял.

Здесь проскальзывает (но не явно) дельный совет проверить scrot на рабочей машине (т.е. в чистом виде). И если всё гуд, тогда дело не в «бобине». Тогда смотри советы по freerdp, remmina и еже.

Deleted
()
Ответ на: комментарий от Deleted

В scrot никакого черного квадрата нету. 2bdfy & zvezdochior - сейчас попробую freedp, remmina.

Но вопрос про compton не дает мне покоя, он мне таки нужен зачем-нибудь кроме как проба фикса черного квадрата? Ну т.е. зачем он вообще?

dissident ★★
() автор топика
Ответ на: комментарий от dissident

В scrot никакого черного квадрата нету.

Нету на домашке или на удалёнке? Я, собственно, говорил об удалёнке.

Deleted
()
Ответ на: комментарий от Deleted

scrot сделал на удаленке. В скрине квадрата нету. scrot также делал на домашке с удаленнным компом открытым в окне рядом, чтобы показать квадрат, его тоже не было. С gnome-screenshot такое же поведение.

dissident ★★
() автор топика
Последнее исправление: dissident (всего исправлений: 1)
Ответ на: комментарий от Deleted

В двух словах: метод научного тыка никто не отменял.

Еще бы полжизни купить в кредит на этот научный тык. А лучше изобрести метод передачи информации со скоростью света из мозга в мозг (ну или из ж... в ж...) путем изменения спина одного из спаренных электронов.

dissident ★★
() автор топика
Ответ на: комментарий от Deleted

В течение получаса попробую альтернативы рдесктопу и доложу партии. Спасибо заранее если поможет. ;)

dissident ★★
() автор топика
Ответ на: комментарий от dissident

его тоже не было

Значит дело не в «бобине».

rdesktop пользует libx11 и libxrandr. Первая вроде как заточена под «одинаковый» вывод на «любой» терминал. А вот по поводу второй могут быть «мутки».

Deleted
()
Ответ на: комментарий от Deleted

Как пользоваться freerdp?

$ xfreerdp /f /u:user /v:work_ip
[19:52:15:620] [32306:32307] [INFO][com.freerdp.client.common.cmdline] - loading channelEx cliprdr
[19:52:15:622] [32306:32307] [INFO][com.freerdp.client.x11] - Property 435 does not exist
[19:52:16:920] [32306:32307] [INFO][com.freerdp.gdi] - Local framebuffer format  PIXEL_FORMAT_BGRX32
[19:52:16:920] [32306:32307] [INFO][com.freerdp.gdi] - Remote framebuffer format PIXEL_FORMAT_RGB16
[19:52:16:999] [32306:32307] [INFO][com.winpr.clipboard] - initialized POSIX local file subsystem
[19:52:16:007] [32306:32307] [ERROR][com.freerdp.core.update] - [0x03] Cache Glyph - SERVER BUG: The support for this feature was not announced! Use /relax-order-checks to ignore
[19:52:16:007] [32306:32307] [ERROR][com.freerdp.core.update] - order flags 03 failed
[19:52:16:007] [32306:32307] [ERROR][com.freerdp.core.fastpath] - Fastpath update Orders [0] failed, status 0
[19:52:16:007] [32306:32307] [ERROR][com.freerdp.core.fastpath] - fastpath_recv_update() - -1
[19:52:16:007] [32306:32307] [ERROR][com.freerdp.core.fastpath] - fastpath_recv_update_data() fail
[19:52:16:007] [32306:32307] [ERROR][com.freerdp.core.transport] - transport_check_fds: transport->ReceiveCallback() - -3
[19:52:16:007] [32306:32307] [ERROR][com.freerdp.core] - freerdp_check_fds() failed - 0
[19:52:16:007] [32306:32307] [INFO][com.freerdp.client.common] - Network disconnect!
[19:52:16:007] [32306:32307] [ERROR][com.freerdp.client.x11] - Failed to check FreeRDP file descriptor

С remmina таже беда, запускает это в цикле и отваливается сразу на том же [19:58:06:446] [32598:32672] [ERROR][com.freerdp.core] - freerdp_check_fds() failed - 0

dissident ★★
() автор топика
Последнее исправление: dissident (всего исправлений: 1)
Ответ на: комментарий от dissident

Ах вот зачем compton:

-C: Disable shadow effects on panels and docks
-G: Disable shadow effects for application windows and drag-and-drop objects

PS Sorry for spamming.

dissident ★★
() автор топика
Ответ на: комментарий от Deleted
[ss@arch ~]$ uname -a
Linux arch 4.19.11-arch1-1-ARCH #1 SMP PREEMPT Thu Dec 20 03:40:28 UTC 2018 x86_64 GNU/Linux
[ss@arch ~]$ xfreerdp --version
This is FreeRDP version 2.0.0-rc4 (n/a)

Могу поставить из AUR версию из git, но если верить https://github.com/FreeRDP/FreeRDP/issues/2689, то это не поможет. Я думаю, проблема в том, что я все делаю не как белый человек. А именно rdesktop при помощи того, что вписал на рабочей машине в ~/.Xsession awesome обходит Ubuntu'овский gdm screen и все работает с нестандартным WN (rdesktop кидает меня прямо в мою сессию awesome с моими же открытыми программами, а не создает новую). А может еще в чем-то раз баг заведен.

Сейчас проверю таки с https://aur.archlinux.org/packages/freerdp-git/

dissident ★★
() автор топика
Последнее исправление: dissident (всего исправлений: 1)
Ответ на: комментарий от dissident

Хмм взлетело. Но ТОЛЬКО если задать пароль в сommand line. Security whole! Anyway:

[ss@arch freerdp-git]$ xfreerdp --version
This is FreeRDP version 2.0.0-dev5 (15fd55ded)
xfreerdp /f /u:<user> /v:<ip>

Leads to:

[ss@arch freerdp-git]$ xfreerdp /f /u:sriaguzow /v:172.25.109.23
[22:16:17:440] [14853:14854] [INFO][com.freerdp.client.common.cmdline] - loading channelEx cliprdr
[22:16:17:442] [14853:14854] [INFO][com.freerdp.client.x11] - Property 435 does not exist
[22:16:18:951] [14853:14854] [INFO][com.freerdp.gdi] - Local framebuffer format  PIXEL_FORMAT_BGRX32
[22:16:18:951] [14853:14854] [INFO][com.freerdp.gdi] - Remote framebuffer format PIXEL_FORMAT_RGB16
[22:16:18:017] [14853:14854] [INFO][com.winpr.clipboard] - initialized POSIX local file subsystem
[22:16:18:022] [14853:14854] [ERROR][com.freerdp.core.update] - [0x03] Cache Glyph - SERVER BUG: The support for this feature was not announced! Use /relax-order-checks to ignore
[22:16:18:022] [14853:14854] [ERROR][com.freerdp.core.update] - order flags 03 failed
[22:16:18:022] [14853:14854] [ERROR][com.freerdp.core.fastpath] - Fastpath update Orders [0] failed, status 0
[22:16:18:022] [14853:14854] [ERROR][com.freerdp.core.fastpath] - fastpath_recv_update() - -1
[22:16:18:022] [14853:14854] [ERROR][com.freerdp.core.fastpath] - fastpath_recv_update_data() fail
[22:16:18:022] [14853:14854] [ERROR][com.freerdp.core.transport] - transport_check_fds: transport->ReceiveCallback() - -3
[22:16:18:022] [14853:14854] [ERROR][com.freerdp.core] - freerdp_check_fds() failed - 0
[22:16:18:022] [14853:14854] [INFO][com.freerdp.client.common] - Network disconnect!
[22:16:18:022] [14853:14854] [ERROR][com.freerdp.client.x11] - Failed to check FreeRDP file descriptor

А если так:

xfreerdp /f /u:user /p:pwd /v:<ip>

то все работает и квадрата нет. В общем это решение помогает, спасибо! Попробую еще альтернативы завтра.

dissident ★★
() автор топика
Ответ на: комментарий от Deleted

Я делал так:

xfreerdp /f /u:user /p:pwd /v:<ip>

С не git версией и это открывало черный экран с бесполеной синей панелькой сверзху. git версия кидает в awesome, что я и хочу.

Ты не сталкивался видимо, потому что, как белый человек используешь что-то современное. Я же не могу этими gnome3 пользоваться. Ну не могу перестроиться. Остается xfce4, lxde или вот awesome (этот хоть позволяет выбирать хочешь float таг, будет как в виндоус, хочешь tiled будет как в i3, а в i3 tiled и все).

Так или иначе xfreerdp работает из git'а и есть набогр воркароундов для rdesktop, так что спасибо!

dissident ★★
() автор топика
Ответ на: комментарий от dissident

Подсумируя: я понес лаптоп на работу, проверил все вариванты и не compton, не магические переменные не работали. xfreerdp взлетел и убрал черный квадрат. В чем дело, в rdesktop или еще - не знаю.

dissident ★★
() автор топика
Ответ на: комментарий от Yorween

I think there is already a setting for this in xrdp.ini. RDP calls the alpha cursors «new cursors»

Вот оно как! Новые курсоры! Лучше чем старые! Налетай, не скупись, покупай живопись! Чем лучше? Чем старые! Спасибо, попробую.

dissident ★★
() автор топика
Последнее исправление: dissident (всего исправлений: 2)
Ответ на: комментарий от Yorween

Я полез по всем линкам подряд, но не очень понял, что конкретно нужно вписать на work machine в xrdp.ini, чтобы выключить «новые курсоры»? Цитаты из линка:

I think there is already a setting for this in xrdp.ini.

Не вижу в man xrdp.ini

The flag to turn off new cursors should only be used for clients with this bug. rdesktop is claiming it can do new cursors but it can not.

Какой флаг? Какой? (рвет на себе волосы и грызет локти)

dissident ★★
() автор топика
Ответ на: комментарий от Yorween

Вот здесь https://github.com/FreeRDP/FreeRDP/issues/3863 говорят, что все поправлено. И действительно если я беру freerdp из git и делаю:

xfreerdp /f /u:<user> /p:<pwd> /v:<ip>

то мои волосы становятся шелковистыми (черного квадрата нету). Там же предлагается делать так (видимо для старших версий freerdp:

xfreerdp /f /u:<user> /p:<pwd> /v:<ip> /gdi:sw

но как это повлияет на визуальную «скорость» я не знаю. В любом случае мне это не надо.

Но... В твоем же линке говорится, что вопрос можно решить и для глупого rdesktop выключая «новые курсоры» в xrdp.ini. Но как же их выключить?

dissident ★★
() автор топика

Было что-то похожее. Не помню, как решил, но другие баги rdesktop часто ликвидируются компиляцией из последних исходников.

Deleted
()
Ответ на: комментарий от Deleted

Я вот тут спросил: https://github.com/neutrinolabs/xrdp/issues/879, мне ответили, действительно есть флаг в xrdp.ini:

new_cursors=false

А и да, от таки помогает, в случае rdesktop.

PS А компиляция из git помогает для freedp неважно с новыми или старыми курсорами (вчера были новые но по пять, а сегодня старые но по три)

dissident ★★
() автор топика
Последнее исправление: dissident (всего исправлений: 2)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.