On 24/08/17 23:18, Philip Loewen via shifter-users wrote: > Hello, > > I have succeeded in getting XPRA to work on an ARM-based single-board > computer. In the hope that this might interest someone else, I recorded > the commands I used in the form of a shell-script that I successfully > ran as 'root'. These commands make xpra available to all users on the > system. The script is provided here below my signature. > > This note provides a snapshot of my experience, after removing the sad > parts -- hours of trial-and-error, etc. Please set (low) expectations > accordingly. > > The board is an Orange PI Plus 2E. The monitor is my HDTV with 720i > format. Network connection comes through wired ethernet. > > My first step was to install a suitable Ubuntu-based desktop OS on the > Orange PI. This came from https://www.armbian.com; the download was named > Armbian_5.30_Orangepiplus2e_Ubuntu_xenial_default_3.4.113.7z > Getting Armbian started on the board required some tuning of the file > system, my location, the video parameters, keyboard, etc., and > rebooting. All the usual stuff associated with installing a new OS. > > I went on to create a sudo-capable user account for myself, named > 'philip'. This shows up in the last command in the script. > > On a freshly-rebooted OrangePI, I said "sudo su -" to get root, then ran > the script shown below. About 2 hours later, I had a working XPRA setup > on the little device. (Of these 2 hours, about 80 minutes were spent > doing other constructive tasks while ffmpeg compiled.) Thanks. I have added a wiki page based on these instructions: http://xpra.org/trac/wiki/Building/OrangePI
With the following changes: * less hand-holding: users should be able to figure out that using apt-get requires root - if not, they probably won't go very far anyway * try to distinguish build time dependencies and runtime extra features * I don't think python-wheel is needed, is it? * ffmpeg compilation from a released version rather than straight from git (more reliable) and using only the components actually needed by xpra. * removed the unix group creation, this should be optional > Please note that the script requires frequent user interaction: one has > to consent to each of the "apt-get install" commands. This allows one to > see what's working, assess the speed of the system, and notice if > something breaks. > > I use XPRA daily, but only to forward silent X-windows. This now works > for me, and I'm satisfied. I have not pursued the many other exciting > things XPRA can do -- e.g., sound, video, and print-forwarding. But I > can report that X-window forwarding works nicely as both client and > server. Many thanks to Antoine for this nice cross-platform(!) system. Since I don't have the hardware to test - I haven't added any instructions for audio/video/printing, but this is a wiki so anyone can add the information once verified: * printer forwarding: only requires cups + python-cups * audio: some gstreamer plugins, and pulseaudio for the server * video: should be enabled already: that's what ffmpeg is for. But I'm not sure those ARM boards are powerful enough to handle video in software... Cheers Antoine > > Sincerely, > Philip > > ##################################################################### > # 2017-08-18: Commands to install xpra on armbian (Orange PI Plus 2E) > > # Run all these as root. Or, prefix each one with "sudo -H ". > > # Clean up potentially conflicting packages > apt-get purge xpra cython > > # Get a bunch of system tools. Check that the file vpx.pc actually arrived. > apt-get install libx11-dev libxtst-dev libxcomposite-dev libxdamage-dev > apt-get install libxkbfile-dev libx264-dev libvpx-dev libswscale-dev > apt-get install libavformat-dev libavcodec-dev > apt-get install xvfb xauth x11-xkb-utils > apt-get install zlib1g zlib1g-dev liblzo2-2 liblzo2-dev > echo +++++ /usr/lib/pkgconfig/vpx.pc +++++ > cat /usr/lib/pkgconfig/vpx.pc > echo +++++++++++++++++++++++++++++++++++++ > > # Get a bunch more system tools based on Python. > apt-get install python-all-dev python-gobject-dev python-gtk2-dev cython > apt-get install python-netifaces dbus-x11 python-dbus python-rencode > apt-get install hicolor-icon-theme python-avahi python-numpy > apt-get install gstreamer1.0-x gstreamer1.0-tools > apt-get install python-pil python-lzo python-setuptools python-wheel > > # Some system-supplied Python tools are just too old. > # Get new ones directly from the world of Python. > apt-get install python-pip > pip install --upgrade pip > pip install lz4 > > # System version of ffmpeg is too old. Compile new one from source. > # Note the suggested LDPATH and PIC flag in configuration step. > # (Found this online at some stage - forgot source - sorry.) > # Compilation took about 80 minutes. > git clone https://git.ffmpeg.org/ffmpeg.git ffmpeg > cd ffmpeg > LDPATH=/usr/lib/arm-linux-gnueabihf ./configure --enable-pic > time make > make install > > # Note that version number 2.1 below might increase in future. > # Used LDPATH from above just in case it helps. > wget https://www.xpra.org/src/xpra-2.1.tar.xz > unxz xpra-2.1.tar.xz > tar xvf xpra-2.1.tar > cd xpra-2.1 > LDPATH=/usr/lib/arm-linux-gnueabihf ./setup.py install > > # xpra wants to have a group, and xpra users should belong. > addgroup xpra > adduser philip xpra > > # DONE! > > _______________________________________________ > shifter-users mailing list > [email protected] > http://lists.devloop.org.uk/mailman/listinfo/shifter-users _______________________________________________ shifter-users mailing list [email protected] http://lists.devloop.org.uk/mailman/listinfo/shifter-users
