Creating UI Experience in ubuntu

Nikhil YN
3 min readMay 27, 2024

--

Introduction: Creating a user interface (UI) experience in Ubuntu can involve various approaches depending on the complexity and type of application you want to build. Whether you’re developing a simple desktop application, a web application, or a more complex system, Ubuntu offers a range of tools and frameworks to help you create an effective UI.

REQUIREMENTS

  1. Need a Microsoft Remote Desktop application installed in your local computer.
  2. The Gcloud client library must be installed in your local computer.
  3. Need below roles to be assigned to users at the project level.

a. IAP Tunnel User

b. Service Account User

c. Compute Instance Admin

4. A firewall rule to allow IAP tunneling must be created in the host project, that is to allow tunneling range which is “35.235.240.0/20” and the RDP port which is “3389”. We have already configured the same.

Brief Steps

Step-1: Install and configure the RDP server in Ubuntu


# upgrade packages

sudo apt-get update

#install rdp server

sudo apt-get install -y xrdp

#Specifically, we will install packages for the latest Xfce desktop environment.

sudo apt-get install -y xfce4

#Now restart the server.

sudo service xrdp restart

Step-2: Configure password for any or root user

#enter as root

sudo su -

#configure the password

passwd

Step-3: Download Microsoft Remote Desktop on your local computer. Download Link

Step-4: Install gcloud library in your local computer. Download document Link

Step-5: Run the below command for to start the IAP tunneling:

# raw command 

gcloud compute start-iap-tunnel INSTANCE_NAME \
--local-host-port=localhost:LOCAL_PORT \
--zone=ZONE_NAME --project=PROJECT_ID

## Replace INSTANCE_NAME with VM instance you want to connect to.
## Replace LOCAL_PORT with the localhost port where you want the proxy to be bound.
## Replace ZONE_NAME with the zone where the VM instance is located.
## Replace PROJECT_ID with the project id where the GCP VM instance is hosted.

Step-6: Configure connection in RDP

a. Open Microsoft Remote Desktop and do the below:

Click on “+” mark and “Add PC”

Under PC name, enter the IP address as “127.0.0.1” and the port as shown. Under “User Account”, select “Add User Account”. This port is the same localport used to map with the IAP tunnelling port that is 3389. Local port is your laptop’s local port. For example 61788 as shown below:

Enter the “Username” and “Password” as shared by the Searce team.

Double click on the PC added.

You will get a welcome screen as shown below:

Conclusion:

Creating a UI experience in Ubuntu can range from developing desktop applications using frameworks like GTK or Qt, to building web applications with frontend frameworks like React or Angular. By setting up the appropriate development environment and tools, you can create robust and visually appealing interfaces suited to your application’s needs. Whether you prefer native desktop apps or web-based solutions, Ubuntu provides a flexible and powerful platform for UI development.

References:

  1. IAP tunnelling: https://cloud.google.com/iap/docs/using-tcp-forwarding
  2. Installing RDP server in Ubuntu: https://www.minextuts.com/blog/how-to-setup-rdp-google-cloud-ubuntu-desktop/
  3. Youtube video ref: https://www.youtube.com/watch?v=69Ghp_l-osg

--

--