Удаленный рабочий стол / просмотрщик удаленного дисплея для устройств Ubuntu Touch?

Мне было интересно, есть ли инструмент, который я мог бы запустить на Ubuntu Desktop и подключить к устройству Ubuntu Touch через приложение удаленного рабочего стола (или удаленного дисплея), чтобы щелчки мыши также передавались как нажатия на устройстве? (а также копирование / вставка текста)?

В принципе, если бы Ubuntu Touch использовал X11, то я мог бы использовать vinaigre или xvnc4viewer на Ubuntu Desktop в качестве клиентов VNC, а Vino в качестве VNC сервер на устройстве - однако Ubuntu Touch использует Mir, и я не могу найти какую-либо информацию об удаленном рабочем столе / дисплее через Mir.

Итак, есть что-нибудь подобное?

1
задан 2 May 2016 в 12:20

1 ответ

Ну, существует частичное решение - в смысле Вас, может просмотреть экран, но не управлять им от мыши. Я заметил его путем выполнения phablet-screenshot в режиме отладки, который сообщает, что это использует программу mirscreencast по телефону.

существует немного больше об этом в https://wiki.ubuntu.com/Touch/ScreenRecording, однако, самая удобная командная строка, на которой я нашел... YouTube:

экранная демонстрация В реальном времени с Телефона Ubuntu - mirscreencast на компьютерный рабочий стол в режиме реального времени. - YouTube

Стартовая передача (на устройстве):

mirscreencast -m /run/mir_socket --stdout --cap-interval 1 -s 270 480 | gzip -c | nc 192.168.0.5 1234  

передача Получения (на настольном ПК):

nc -l -p 1234 | gzip -dc | mplayer -demuxer rawvideo -rawvideo w=270:h=480:format=rgba -
<час>

кроме того, существует https://github.com/ycheng/mir-vnc-server - довольно экспериментально, я сумел заставить его компилировать по телефону 14.04 и работать, и могу соединиться через клиент VNC, но я не могу получить обновление в реальном времени экрана (только первый кадр показывают, и никакая мышь не обновляется); вот мои примечания - к сожалению, не полностью завершены, но дает общее представление:

# in 64-bit Ubuntu 14.04:
# (/path/to/docker is general storage dir)
git clone https://github.com/ycheng/mir-vnc-server.git /path/to/docker/mir-vnc-server_git
sudo docker pull z3ntu/ubuntu-touch-build-env
sudo service docker start
sudo docker run -vit /path/to/docker/:/var/ubuntu_touch z3ntu/ubuntu-touch-build-env /bin/bash

sudo apt-get install gcc-arm-linux-gnueabi binutils-arm-linux-gnueabi
sudo apt-get install g++-arm-linux-gnueabi
sudo apt-get install g++-arm-linux-gnueabihf
sudo apt-get install libvncserver-dev # else dummyvncserver.c:3:21: fatal error: rfb/rfb.h: No such file or directory
sudo ln -s /usr/include/x86_64-linux-gnu/zconf.h /usr/include/  # else /usr/include/zlib.h:34:19: fatal error: zconf.h: No such file or directory
sudo apt-get install libmirclient-dev # else fatal error: mir_toolkit/mir_client_library.h: No such file or directory
sudo apt-get install libgles2-mesa-dev # else fatal error: EGL/egl.h: No such file or directory



# because of ..../arm-linux-gnueabi/bin/ld: cannot find -lvncserver:
apt-get source libvncserver0

apt-get source zlib1g
cd zlib-1.2.8.dfsg/
./configure
CC=arm-linux-gnueabi-gcc make
# should get: ./libz.so.1.2.8: ELF 32-bit LSB  shared object, ARM, EABI5 version 1 (SYSV), dynamically linked, ...
cp -a *.so* /path/to/docker/libvncserver-0.9.9+dfsg/
cd ..

cd libvncserver-0.9.9+dfsg
aclocal
autoconf
autoheader
automake --add-missing
# ld: cannot find -lgcrypt, -lgnutls, -lws2_32; so:
# in configure, comment out 'LIBS="$LIBS -lws2_32"', and then:
LD_LIBRARY_PATH=${PWD} ./configure --host=arm-linux-gnueabi --without-gcrypt --without-gnutls
cd libvncserver/
CC=arm-linux-gnueabi-gcc make CFLAGS+="-DLIBVNCSERVER_HAVE_GETTIMEOFDAY -DLIBVNCSERVER_HAVE_LIBZ"
# should get: libvncserver/.libs/libvncserver.so.0.0.0: ELF 32-bit LSB  shared object, ARM, EABI5 version 1 (SYSV), dynamically linked, ...
cp libvncserver/.libs/* /path/to/docker/mir-vnc-server_git/

cd /path/to/docker/mir-vnc-server_git/
LD_LIBRARY_PATH=${PWD} CC=arm-linux-gnueabi-gcc CXX=arm-linux-gnueabihf-g++ make

# here got stuck, and went on phone instead:
# http://askubuntu.com/questions/600065/consequences-of-using-apt-get-in-ubuntu-touch
# phablet-config writable-image
# more-less repeated the procedure above, but on the phone - possibly with some changes in Makefile and/or source files (unfortunately, lost)
# final linking command for executable had to be issued manually, it was:
g++ mirvncserver.o -o mirvncserver -L/usr/lib/arm-linux-gnueabihf -lpthread -lmircommon -lmirclient -lmirprotobuf -lEGL -lboost_program_options -lxcb-glx -lGLESv2 -lmirserver -lvncserver

# run like this - in a phone terminal shell:
# -s 270 480: WARNING: Width (270) is not a multiple of 4. VncViewer has problems with that.
./mirvncserver -m /run/mir_socket --cap-interval 2 -s 268 480

# then on desktop - use the IP address of the phone on the local network:
xvnc4viewer 192.168.XXX.YYY
2
ответ дан 2 May 2016 в 22:20
  • 1
    Обратите внимание, что после того, как я отправил это, я также очистил комментарии, которые в основном обсудили то, что этот ответ обсуждает от самого вопроса. В случае, если любой заботится. – Thomas Ward♦ 14 March 2018 в 03:48

Другие вопросы по тегам:

Похожие вопросы: