I’ve been dealing with an annoying problem for a while, and I finally decided to do something about it. The solution, gratefully, was simple, but it had eluded me for quite a while.
I have a server at home that I no longer use as a desktop machine. I have a number of useful graphical programs on it that I need to access from time to time. The main one is question is Calibre.
Calibre is an eBook library that I am absolutely in love with. It gives me remote access to my library of eBooks in every format: PDF, mobi, and epub. The Calibre interface is primarily graphical, meaning, I haven’t been able to do as much from the CLI as I’m used to.
Logging into a server with graphic capabilities is pretty straightforward:
ssh -X user@host
Open up an SSH connection to
host as user
user and forward all X session data to the local computer. Now, to be honest there is a bit of setup involved. The remote ssh server has to have
X11Forwarding enabled, and it would help if you have SSH keys available for public key authentication. But that’s an article for another time.
Once I was logged in to the remote server, I would type:
at the prompt, and it would display the Calibre interface from the remote server on my local laptop. There was one problem: the cursor wouldn’t render. It would work, I just couldn’t see it. This got to be more than a little annoying after a while.
I tried a number of solutions to try and resolve this problem, even installing (gasp!) VNC to try and get a desktop session started. Nothing seemed to be working.
I just stumbled across two other solutions that put me on the path. The first was a recommendation to someone having a similar problem with the cursor. The advice was to disable their .profile and .*rc scripts, where the problem most likely was hiding.
The second was to run the bash script with the
It then dawned on me that I was being an idiot. There was no reason why I couldn’t simply run Calibre immediately, without the need for a prompt! I modified my command to run:
ssh -X user@host calibre
and Calibre started right up, with a cursor I could wiggle around to my heart’s content. It was a simple, almost newbie solution, but I believe most of us who use the command line are so used to doing things from the prompt, we don’t often think about running commands remotely. By running the remote command from the local command, there was no need for SSH to have to think beyond what it was meant to do.
The underlying problem was most likely that I didn’t have the specific cursor theme from the remote computer available on my local one. My suspicion is based on the very different cursor that appears within the window. Whatever the reason, I can now access any of the remote graphical programs from my server without any more cursor difficulties.
I hope this helps you if you’ve been having the same troubles as I had. If you need help with anything, find me on my Facebook page and drop me a line!