Ubuntu 14.04 – Gnome Classic alike Desktop for XRDP : MATE-Desktop

MATE_Logo

 

Hello World,

Boosted by the success of our post about Ubuntu 14.04 and xrdp, we have spend some time in trying other Desktop Alternative.   As you know, up to Ubuntu 12.04, it was possible to use Unity Desktop (even if it was the 2d version) as the xrdp desktop presented to the user.  With 12.10, the Ubuntu -2d option being not anymore an option, we found as workaround that we could use the gnome classic (gnome fallback) desktop while connecting through xrdp.

since Ubuntu 13.10, the gnome-fallback desktop environment is kinda broken and cannot be used anymore in conjunction with Ubuntu.  Again, we had to find a workaround and had to define another alternate desktop while connecting through xrdp.

For Ubuntu 14.04

Again, based on the feedback of our users/colleagues/customers, the main complain was that these desktops (LXDE and XFCE) were not Unity or gnome classic desktop.  So, we decided to test another Desktop Interface : MATE-Desktop Interface.

As you will see, the process is quite similar when installing xfce or lxde desktop….

Let’s do this !

Install XRDP Package from Ubuntu Repository

The first step is always the same.  We will first install the xrdp package from the Ubuntu Repository. In order to perform the installation of the xrdp package, you will login into your ubuntu 14.04 machine. Open your Terminal console.  In the Terminal, type the following command

sudo apt-get install xrdp

You will be prompted for your password

Click on Picture for Better Resolution

You will be then informed about the package size. To proceed with the installation, press Y

Click on Picture for Better Resolution

Wait for the completion

When done, you need to install an alternate desktop environment which will be in this case the MATE-Desktop

Installing the MATE Desktop environment

I think that the Ubuntu repository are offering the Mate-desktop version 1.6.  For this post, we will be installing the mate-desktop 1.8.   I had to google to see how to install mate-desktop 1.8.  The most common way is to use the console and issue the following commands :

Wait for completion.  When done, you should have the mate-desktop installed.

mate-desktop is a fork of the gnome 2. This is why this desktop is really close to the broken gnome-fallback package in Ubuntu.

Configure xrdp to use MATE desktop environment

 

At this stage, you have to configure your Ubuntu machine in order for xrdp to know that the LXDE desktop will be used instead of the Unity or Gnome (which are not working anymore in Ubuntu). To configure this, from the terminal console, you will issue the following command

echo mate-session> ~/.xsession

and then restart the xrdp service by issuing the following commandsudo service xrdp restart

Click on Picture for Better Resolution

 

You are done and ready to perform your remote connection.

Test your xrdp connection

Now, you should have a basic xrdp working solution.  You will need to tweak your xrdp configuration file in order to have it working accordingly. You will need to configure the keyboard layout if you are not using the english keyboard layout.  You will need to tweak you configuration file in order to reconnect to the same session as well.  We will discuss this afterwards.  For the moment, we just wanna check that the xrdp functionality is working as expected.

To test your xrdp solution, find the ip address of your linux machine (or use the name if you have DNS Infrastructure in place). To find the ip address, issue the command

hostname -I

Click on Picture for Better Resolution

Now go to your windows machine, start remote Desktop client and enter the ip address/name of your ubuntu machine

Click on Picture for Better Resolution

You should see then the login screen of xrdp presented to you. Note that, at this screen (and because we have not configured keyboard layout yet), the keyboard layout is set to English by default.

Click on Picture for Better Resolution

Enter your username and password and Press OK

You will see a dialog box showing the login process

Click on Picture for Better Resolution

If everything is configured correctly,you should see your mate-desktop interface loading and you should be able to perform you work through this desktop environment.

Click on Picture for Better Resolution

As you can see, this Desktop interface is quite similar to the classical gnome interface people were used to have in previous version of Ubuntu.

Note

To set Keyboard layout at the xrdp Login screen, perform the following steps

As explained above, with no special configuration, the xrdp login screen keyboard layout is set to english by default.  if you need to change it to another keyboard layout, you should proceed with the following actions

This is the command you should issue in order to change the keyboard layout to be used during xrdp sessions…

Step 1 : You go to the /etc/xrdp directory

Step 2 : you issue the command setxkbmap -layout <%your layout%> to define which keyboard map/layout to use

Step 3 : create a copy of the km-0409.ini file into the same directory. It seems that this is the default file used by xrdp to define the keyboard layout. You will need to use sudo in order to be able to write into the directory

Step 4 : Check that you have a backup of your file by typing the dir or ls command

Step 5 : update the file by issuing the following command sudo xrdp-genkeymap km-0409.ini

 

Reconnect to the same session throug xrdp

You have mutliple ways to reconnect to the same session through xrdp. we have explained two of them. One method is based on performing a custom installation and use the X11VNC software. This is one is working well but requires a little bit more effort. (http://c-nergy.be/blog/?p=4168)

The other one is to use the xrdp package from ubuntu repository and tweak some configuration files whil connected to the session. This solution is really a workaround and it’s not our favourite one. (see http://c-nergy.be/blog/?p=4471)

We have also presented a third method in the last post about xrdp and ubuntu 14.04 (see http://c-nergy.be/blog/?p=5305).  In this third method, we will be again using the default xrdp package available from the Ubuntu repository. We simply need to change the /etc/xrdp/xrdp.ini file in order to get access to the same session each time

To edit the file, issue the following command

sudo gedit /etc/xrdp/xrdp.ini

You might be prompted for a password. if this is the case, provide the password and Press enter.   When the file is open, locate the section [xrdp1] and replace the following line

port=-1
with the line
port=ask-1

Save the file. The file should look like this

Click on Picture for Better Resolution

When done, restart the xrdp service by issuing the following command

sudo service xrdp restart.

You are done.

When trying to access your Ubuntu machine through via the remote desktop client, you will see that the xrdp login screen has indeed an additional field called port.

Click on Picture for Better Resolution

If this is your first connection, leave the default value in the port field (i.e. -1), you will be then connecting through xrdp to your ubuntu machine using a specified port that can be seen on the login process dialog box.

Click on Picture for Better Resolution

Take a note of this port.

When you need to reconnect, you will have to specify the same port as your first connection and you should see the same screen as you left it.

Click on Picture for Better Resolution

Note : This tip has been provided to us by one of our reader (Thank you Wei 🙂 )

Final Notes

As you can see, this Desktop interface is quite similar to the classical gnome interface people were used to have in previous version of Ubuntu. However, I’m still disappointed because we cannot use the same desktop interface (i.e. Unity) while using xrdp software.  Canonical/Ubuntu/xrdp teams should come up with a solution.

For me, xrdp is probably the best option to have remote access to Linux (and thus Ubuntu) machines.  It’s one of the the best solution if you have mixed infrastructure (Windows and Linux.  It’s free,easy to install and easy to use.  So, I hope that Ubuntu team or xrdp team  will come up with a solution where we can remotely connect to a Ubuntu machine and have the Unity Interface or Gnome-Shell interface available.  We need consistency between local access and remote access.

If you install xrdp on Fedora, you will see that really easy to install and when connected through xrdp, you will have the Gnome Shell Desktop interface (yes, the same as the local one).  Moreover, Fedora has done a great job because you do not need to configure anything in order to reconnect to the same session.  It just works!

I wish to have the same in Ubuntu.

Till next Time

See ya

 

 

 

 

 

 

27 thoughts on “Ubuntu 14.04 – Gnome Classic alike Desktop for XRDP : MATE-Desktop

  1. This was a great solution, thank you. I needed to change the “add repository” language some but I much prefer MATE to the other solutions.

  2. Hello Todd,

    Indeed, I think this is the better option/workaround so far to work with Ubuntu and Xrdp

    Till next time

    See ya

  3. Hi,

    Hi Todd,

    Great work ! In the past, I have followed and applied your solutions to previous versions of ubuntu. And, again, you came to the rescue 🙂

    Just two quick notes about some typos: a) the 2nd and 3rd items of the “Installing the MATE Desktop environment” section should be only one (wget -q http://mirror1.mate-desktop.org/debian/mate-archive-keyring.gpg -O- | sudo apt-key add -) ; b) in the “Configure xrdp to use LXDE desktop environment” section, how about having some white space before “sudo service xrdp restart” ?

    Please keep up the good work ! This xrdp+ubuntu thing is hellish !

    jR

  4. Hi

    Pretty great post and very interesting. But wonder, could it be install the same way directly on Centos 7 ?
    Thanks

  5. Hello there,

    We do not have a good knowledge of CentOS but we assume that yes this should be working on CentOS as long as the required packages are available
    Hope this help

    Thank for the visit

    Till next time
    See ya

  6. Hello,

    I had Mate desktop already installed before I come to your page so I have just installed xrdp, added session and restart. When I try to connect from win 7, I’m presented with gray screen.

    Thanks
    Alex

  7. Hello Alex,

    I do not know….You do not really provide useful info…
    Can you provide us the OS Linux version,the content of your .xsession file, check for typo/error in name of the file or inside the file
    How to you try to connect (which options are you using in the xrdp login…)
    Have you check the logs xsession or xrdp log to get a little bit more inside ?
    Provide us with some more info and you might be able to help you
    Till next time
    See ya

  8. Hello,
    Thank you for comments.
    I have re-executed the the whole process as you have describe it and now everything is working for me. Actually I use :
    ubunto 14.04 LTS
    the content of xsession is: mate-session
    in the xrdp login i used the default (sesman-xvnc).

    Thanks
    Alex

  9. Hi
    I am using Ubuntu 14.04 LTS. I have installed xrdp and when I try to install MATE after issuing the first command in the above post i.e.

    sudo add-apt-repository “deb http://repo.mate-desktop.org/archive/1.8/ubuntu $(lsb_release -cs) main”

    I am getting the following error:
    Error: need a single repository as argument

    Can anyone please help how to proceed?

    Thanks
    Shankar

  10. Hello Shankar,

    I’m assuming that you have performed a copy/pase operation. We have noticed that this leads to situation where some characters are not copied correctly
    Can you try this command sudo add-apt-repository “deb http://repo.mate-desktop.org/archive/1.8/ubuntu trusty main”

    if this command is not working can you try the following
    sudo apt-get update
    sudo apt-get install mate-core mate-desktop-environment mate-notification-daemon

    ps: mate is officially supported by ubuntu and it seems that the package for ubuntu is not available anymore on the http://repo-mate-desktop.org/…..

    Let us know if this is working so we update the post
    Hope this help

    Till next time
    see ya

  11. I have and error:
    E: Unable to locate package mate-core
    E: Unable to locate package mate-desktop-environment

    when add the repository, any help…griffon?

    thanks a lot

  12. Hi Peter,

    I do not know what you are doing but if i perform a clean install of ubuntu 14.10 and issues these two commands

    sudo apt-get update
    sudo apt-get install mate-core mate-desktop-environment mate-notification-daemon

    It works like a charm…. I have tested twice these command and this is working

    Can you try to issue the following command to have a basic mate desktop interface sudo apt-get install mate-desktop-environment-core
    To have a more complete mate desktop, try this sudo apt-get install mate-desktop-environment

    hope this help
    till next time
    see ya

  13. So, I wanted to swtich from XFE4 to Mate and see if that worked better (logout and some other small issues) but am unable to “find” the repository. Doing a couple of searches lead me to this rather quickly..

    http://mate-desktop.org/blog/2014-09-25-debian-and-ubuntu-repositories-removed/

    which then points to:
    https://launchpad.net/~ubuntu-mate-dev/+archive/ubuntu/trusty-mate

    Not being a complete linux guy, I ran the first to commands to add the repositories, but then stopped. I don’t want to switch the console, only what I use when using XRDP. I feel like I should be adding the repositories (as I did) and then continuing with your bullet #3.

    Any suggestions? Seems like this needs an update now that the packages have been removed from the location in the current instructions.

    Thanks

  14. (Sorry if duplicate, my post seems to be missing). I was trying to update to use Mate instead of XFE4 and had the issue where I can not get the files. Upon some investigation (first just navigating the structure) I didn’t see the archive area for Ubuntu. Then I found this:

    http://mate-desktop.org/blog/2014-09-25-debian-and-ubuntu-repositories-removed/

    That will then point you to:
    https://launchpad.net/~ubuntu-mate-dev/+archive/ubuntu/trusty-mate

    I added the repositories, but stopped there.. Not being totally linux savy, I was concerned I would change my default desktop, I only really want to change for XRDP. Seems for 14.04 (and others as the location appears to have changed for them for 1.6 Mate) these need an update.

    Any help would be appreciated!! 🙂

  15. Hello Travis,

    Sorry for the late answer….
    please review the following posts :
    install xrdp on ubuntu 14.10 (section related to MATE Desktop) – http://c-nergy.be/blog/?p=5874
    and this is a quick demo for xrdp and ubuntu 14.10 where you can reconnect to the same session using the out-of-the-box xrdp package : http://c-nergy.be/blog/?p=6063

    Please review also the xrdp section of the blog where you can find more information about xrdp/vnc/noVNC connection

    When installing the MATE destkop, you simply adding a new desktop interface. At the end of the procedure, you can actually choose which desktop interface you wanna use when working locally

    Hope this help
    Till next time
    See ya

  16. Hello there,

    As soon as we have some time we will try to update the post and reflect the fact that mate-desktop is now hosted on the Ubuntu Repositories

    Till next time
    See ya

  17. Greetings!
    Users can not log off. In Task Manager, users can hang even though he ended session

  18. Hello there,

    This can is a know issue. You can use the command line to logoff your users. When connected via xrdp, it seems that the logoff/shutdown/restart options might not work as expected.
    However, as we are testing the version 15.04, it’s seems that these issues are being resolved. We have succesfully logoff and reboot the machine while working via the xrdp session

    Hope this help
    Best Regards

  19. about change in installing mate

    http://mate-desktop.org/blog/2014-09-25-debian-and-ubuntu-repositories-removed/

    https://launchpad.net/~ubuntu-mate-dev/+archive/ubuntu/trusty-mate

    These MATE 1.8.1 packages for *only* Ubuntu Trusty, they have been side ported from Debian.

    In order to correctly install and configure MATE 1.8.1 on Ubuntu Trusty you will also need to add the following PPA:

    * ppa:ubuntu-mate-dev/ppa

    Open a terminal complete the following steps to enable the appropriate PPAs and install MATE 1.8.1 on Ubuntu Trusty.

    sudo apt-add-repository ppa:ubuntu-mate-dev/ppa
    sudo apt-add-repository ppa:ubuntu-mate-dev/trusty-mate
    sudo apt-get update
    sudo apt-get upgrade
    sudo apt-get install –no-install-recommends ubuntu-mate-core ubuntu-mate-desktop

  20. Just wanted to share a little tip:

    My Environment : Using WIndows RDP Client from Windows 7 Standard to connect to Ubuntu 14.04 Virtual instance hosted on a Win 2008 Hyper V.

    All these steps worked out good (Thanks to Griffon otherwise which I wouldn’t have reached this far), except that when I log off
    1) all the items (accessible only in a login session) disappear. – Expected
    2) The desktop wall paper still remains there visible. – Not Expected
    3) The RDP window doesn’t close by itself.- Not Expected
    4) the Xvnc session still remains there – Not Expected.

    What I did to fix this:
    1) sudo nano /etc/xrdp/sesman.ini
    2) Replaced
    KillDisconnected=0
    with
    KillDisconnected=1
    3) Ctrl +X followed by a Y and Enter
    3) sudo service xrdp restart

    Cheers

  21. Hello Sekhar

    Thank you for sharing the information about xrdp. Yes, it’s true that they are some additional parameters that can be used to control the xrdp session. however, note that based on your version some of this parameters will be ignored because not yet implemented in the xrdp code

    Till next time
    See ya

  22. HI Griffon:
    I install MATE env 1.8.2, The sidebar (like menu) is missing, i can’t see anything.
    When i install successfully,i find sidebar missing,but it is ok when i do somethins (maybe reboot the ubuntu,or close xrdp and open again).When i change xrdp1 port from -1 to ask-1, the sidebar missing again after restart xrdp,so what ‘s problem?

  23. Hello Andy,

    First comment : you should upgrade to ubuntu 14.10 or 15.04 or install the latest xrdp package from ubuntu repository so you do not need to perform any actions in order to reconnect to existing session (check XRDP – Reconnect to existing sessions made easier – New xrdp package on Ubuntu repository and check XRDP – Quick Demo Installation & Reconnection

    The Other comment is about MATE Desktop….I do not understand what you mean by sidebar. If you mean the bar located on the left side when you connect locally on your ubuntu using unity desktop), there is no such bar when you perform an xrdp session on ubuntu. Unity Shell is not supported by xrdp this is why you have to install the mate-desktop environment ….

    review the following post for the most recent version of the post about xrdp….XRDP – Installing XRDP on Ubuntu 15.04

    hope this help

    till next time
    see ya

  24. Hello There;

    Thank you for the feedback and you visit….we will try to keep posting useful stuff
    So, Till next time
    See ya

Leave a Reply