The original German post Wie bekommt man Xmir auf dem Nexus 7 zum Laufen? is written by whazzup.
The original Chinese post The General Method of Howto Launch Linux Desktop Apps on Ubuntu Touch is written by Net Rain with Strong Wind.
I am much obliged to both of them.
As we know, it can run x11 apps on ubuntu touch. But there is no offical tutorial because many bugs can’t be
fixed. In this post, I will tell you howto launch a linux desktop app on ubuntu touch like ubuntu desktop.
Thanks to ubuntuask.com, google+ and some other posts.
At first, the following operations and scripts are tested ok on ubuntu 15.04 stable channel r2(Nexus 7 2013 wifi), so I suggest that you should use the stable image channel, and mir & unity8 of the stable channel are stable.
Make sure your nexus device is connected to your ubuntu desktop and open the ssh
Make the root of your ubuntu touch writable
$ sudo mount -o remount,rw /
$ sudo touch /userdata/.writable_image
Install Xmir running environment, because it is not installed as default on ubuntu touch, and you should add the third ppa repository:
$ sudo add-apt-repository ppa:mlankhorst/ppa
$ sudo apt-get update
$ sudo apt-get install xserver-xorg-xmir
After installed, you can test it and get help manual as following:
$ Xmir -help
Install chromium browser and modify the scripts
$ apt-get install chromium-browser
Add a xmir script of chromium browser
$ sudo vi /bin/chromium.sh #!/bin/bash Xmir :0 -sw -flatten -rootless --desktop_file_hint=/usr/share/applications/chromium-browser.desktop & sleep 0.5 DISPLAY=:0 chromium-browser --window-size=960x571 --force-device-scale-factor=2 $ sudo chmod a+x /bin/chromium.sh
Last modify the desktop file of chromium and add the two line scripts:
$ sudo vi /usr/share/applications/chromium-browser.desktop Exec=/bin/chromium.sh X-Ubuntu-Touch=true
Here are the screenshots:
ubuntu touch main page:
The bugs are:
- It flashes when launching the chromium browser.
- It can’t be moved or scaled.
- It can not launch the screen keyboard app, but maybe it can be operated by the connected keyboard.