When I originally purchased my Samsung Tab S5e tablet, I did so because of Linux on Dex. Not long after Samsung officially canceled the beta project, and ever since, I've been searching for a way of easily accessing a Linux desktop from my tablet. Now, with help from Webtop and Linuxserver.io, I think I have solved my dilemma.
Webtop is a self-hosted service for providing an Alpine or Ubuntu-based lightweight desktop that is accessible from any browser. There are other solutions to bring an entire Linux desktop to other devices, such as classic VNC or RDP connections. When you combine Webtop with Docker, you get an easy-to-deploy solution for as many desktops as you want.
I have to say I'm in love.
Here's a screenshot of a full Ubuntu XFCE environment running in Fennec on my Android tablet, playing music from my Airsonic instance. pic.twitter.com/PDRHDf4Avz— 🌴🌴Dominic 🌴🌴 (@domcorriveau) June 17, 2021
Different tech for different solutions
What hooked me about Linux on Dex was having the option to use some of my favorite desktop apps but on my mobile device. These are primarily CLI applications, which I have written about when setting up my Pinebook Pro. Termux has been a fine substitute but is not a full replacement and creates another barrier as it is another system to learn, with its own syntax and dedicated package manager. What I really want is Debian/Ubuntu and the system around it on my mobile.
Along these lines, I have been trying to figure out a way to bring some additional applications to my Pinebook Pro that aren't packaged on arm64, specifically the Rockchip arm64 variant on the laptop. This lead me to test out X2Go on it, which works fine.
But the real solution I want is to bridge both devices. I want to have the Linux amd64 experience on both my tablet and my arm64 laptop. X2Go does not have an Android client (as far as I know), and VNC is what it is; old and cumbersome.
Solving this problem is precisely where Webtop fits.
How am I using Webtop
I'm not going to write up an installation guide that is done very well by the team at Linuxserver.io on their blog and in the image notes on Docker Hub. Instead, I am going to share some of the ways I've been using Webtop on my LAN.
First and foremost is having a full Linux environment from my tablet. Using Native Alpha, an Android application for showing web services in full screen with no window decorations, I can easily load up the remote desktop. This is also true when going into Dex mode by connecting to the dock on my office desk. Launching the Native Alpha window brings the remote desktop in fullscreen mode, and it is as if I'm sitting in front of an entire Linux computer, not my Android tablet.
Using a Bluetooth keyboard and mouse, I have the full experience, including audio. I will admit video performance is lackluster, so don't count on using it for Netflix or YouTube. However, I was able to listen to music from my Airsonic library. The one complaint I have is that any window resizing will kick the user out and require a re-authentication to access the desktop. All the applications will still be open; you just have to log in again, which can be annoying.
I've only been using it for a week. With this setup, I have been managing my servers with Terminator, Tmux, and Fish Shell (oh how I love Fish), including an update on a production box from 16.04 to 20.04, along with database migrations and a complete PHP upgrade.
Here's the best part: I can pick up where I left off, continuing to work in the same virtual desktop on my Pinebook Pro without missing a beat. Just close the tablet, open the PBP at the web address, and viola. Even better, I've had a couple of instances where I wanted to do something quick while working on my 9-5 job PC but didn't want the traffic to be shown on it. Using my Webtop instance, I just navigated to the address, fired up Firefox inside it to pay a couple of bills, and then closed it.
I don't have this exposed to the internet for the record, and it is not recommended. This is all on my LAN, yet accessible remote with a Wireguard tunnel home. A feature of X2Go is that you could access any box, including a cloud-hosted desktop, via SSH. This could also be accomplished with something like Shells.com.
I don't need a cloud desktop outside of my home, especially when I'm already running a homelab with more compute power than I currently need.
What I'm most looking forward to in using this setup is the ability to quickly spin up and destroy testing environments. Since Webtop is a Docker container, creating multiple desktops takes seconds, including cloning existing images. This means I could test out an application or configuration and then destroy the image, similar to setting up a VM, but instead from literally any device in the home. Hell, my TV has a web browser. Why not?
- Samsung Tab S5e
- Webtop and Linuxserver.io
- Linuxserver.io blog
- Native Alpha
- Fish Shell
Would love to hear from you on this topic!
These blogs are just the tip of the iceberg. To go deeper and hear more stories around the tech and life around these journals, check out the DC Tech Talks Podcast.
Need even more?
Check out my sister podcast Go With The Heat. We just relaunched the show after going through all of the 80's goodness that was Miami Vice. The updated show is now going deeper into the greatest era of action movies, 1975 - 1995.
Digital marketing professional
Into digital marketing? Get a newsletter all about the best stuff in digital marketing over the last week plus deep-dives into this industry.