At long last, it’s here :)
Took me a while – hey, I’ve been busy surviving quakes/godzilla/moving countries/trying to establish my own company/being a parent/and tl;dr…
Anyway, the v3.0beta3 release works very well for me, so I’m making a full official 3.0 release as of today.
NOTE : Read through all of this article before using – it will reduce user error, and there are usage examples at the end of the article.
ADDITIONAL NOTE : This is for Debian-based Linux distributions. Do not attempt to run it on anything other than Debian/Ubuntu/Linux Mint/other Debian-based distros.
P.S. It currently has problems running on a Raspberry Pi
P.P.S. No, it will NOT run on Mac OSX :)
Just in case you missed the changes…
- Refactored the scripts; incorporated the relevant parts of TextFrontEndIncludes into the relevant main scripts. No more sourcing of that file. It has now been removed.
- It will make Debian packages – an x11rdp package, and an xrdp package. The x11rdp package includes everything that was compiled and placed in /opt/X11rdp. The xrdp package includes everything that was compiled for xrdp.
- The tool will build packages whether using the FreeRDP source or the neutrinolabs source (
- Other miscellaneous tidy-ups too numerous to mention here – look ‘em up on github if you’re that fascinated ;) …
- RDPsesconfig now recognises Lubuntu.
- For “unknown/untested” distros, RDPsesconfig now actually has a generic “select desktop” menu.
What is it?
It’s a suite of two tools…
This bash script is a build tool. It will automatically compile, install, and set up X11rdp and xrdp on your system.
X11rdp-o-matic.sh has a number of options configured by way of command line switches…
--help: show this help.
--justdoit: perform a complete compile and install with sane defaults and no user interaction. <– Recommended use.
--nocpuoptimize: do not change X11rdp build script to utilize more than 1 of your CPU cores.
--nocleanup: do not remove X11rdp / xrdp source code after installation. (Default is to clean up).
--noinstall: do not install anything, just build the packages
--nox11rdp: only build xrdp, without the x11rdp backend
--bleeding-edge: clone from the neutrinolabs github source tree. Beware. Bleeding-edge might hurt :)
X11rdp-o-matic.sh has two modes of operation; interactive, and non-interactive…
Interactive mode is the default. It requires user input at run-time, and tries to walk the user through the build process.
The script will run in non-interactive mode when you specify the
--justdoit option. In this mode, the script will choose sensible defaults and will require no user interaction. It will automatically detect if you have more than 1 CPU core available and will utilize those extra cores in order to speed up compilation of X11rdp. If you specify the –nocpuoptimze switch, then it will not utilize more than 1 core.
I recommend you use the
--justdoitoption – if there are any errors then you will be able to scroll up your terminal and see where it happened.
--bleeding-edge switch will tell the tool to download the xrdp/x11rdp source from a different git repository, and this is for highly experimental source code. You are advised to not use this switch unless you are a xrdp developer. By default, the tool will use the normal FreeRDP git repository.
This tool is an interactive utility. It configures the .xsession file for each selected user on your system and with whatever desktop environment you’ve chosen for them.
Both utilities need to be run as root, so use
su to get to your root prompt, or use
sudo to start them.
After successful completion of X11RDP-o-Matic , two package files will be created…
xrdp_0.7.0-1_<arch>.deb : located in ~/X11RDP-o-Matic/packages/xrdp/ . This is the xrdp package, and includes everything required to install the xrdp front-end, including the /etc/init.d script.
x11rdp_0.7.0-1_<arch>.deb : located in ~/X11RDP-o-Matic/packages/Xorg/ . This is the X11rdp package, and contains the X11rdp back-end Xorg server.
<arch> will of course depend on what arch your Debian-based distribution is.
You can take those two package files, and install them on another machine of the same arch. If you need packages for a different arch, then run the o-matic tool on a machine with a similar arch, and you can then deploy the packages on similar arch systems.
NOTE: If you install the packages on a different machine, please run sudo update-rc.d xrdp defaults , after installation. The generated packages do not update your init scripts after installation as yet. Running this command ensures that xrdp will restart upon rebooting your server.
sudo ./X11rdp-o-matic.sh --justdoit: will run the X11rdp/xrdp build and install tool right through, and will automatically utilize additional cpu cores for quicker compilation. Debian packages will be created, and installed, and by the end of it, xrdp will be started.
sudo ./RDPsesconfig.sh: will run the session configuration utility. You will select a desktop environment that the users will see after they log in via their RDP client. You will then select which user logins to configure that environment for.
How to get X11RDP-o-Matic Version 3.0
If you haven’t got git installed on your machine, then bring a terminal window up and type sudo apt-get install git .
Once you know that git is installed, to get X11rdp-o-matic, use…
git clone https://github.com/scarygliders/X11RDP-o-Matic.git
Then use the examples above to run the utility.
Lastly, I recommend you reboot your system after getting everything configured.
Please let me know how you got on! Also, tell me what distribution you tried it on.
Lastly, if this works splendidly for you, please consider making a donation. It’ll help keep this site running :D