Fix VMWare Player Resolution with Solus (All Versions)

Beggars Can’t be Choosers

Recently, in my “all Windows all the time” job I have felt the need to have some virtual desktops on my Home PC that I can spin up in a few moments notice so that I can scratch the Linux itch.  Dual boot won’t work because I have to stay connected to my VPN and we don’t support Linux for this 🙁  Obviously, this is where virtualization software comes into play.

State of Virtualization 2020

However, virtualization software seems to want to make running a Linux desktop in 2020 problematic with their programs chock full of buginess.

Hyper-V?  Not if you run Windows Home and no support for graphics.  Not to mention, you’ll have to gut install it via powershell and when it fails, gut it via powershell and elect to go with another option.  Hyper-V is an afterthought by Microsoft now as well for desktop players.

How about Oracle Virtualbox?  It works great for simple things like Ubuntu and Debian…but you can no longer change resolutions for most because it doesn’t support older formats of Display drivers.  Often times for things like Solus, you boot to a black screen and can do little else, let alone install anything even with additions installed.

None of the aforementioned solutions are able to go full screen on every Linux distribution I take for a spin.

Enter VMware Player.

With some light hacking to get VMware tools installed on Solus, full screen magic can be had again.  I’m going to walk you through how to get any flavor of Solus up and running with VMware Tools installed and therefore, magnificent, full screen splendor.

VMWare Tools Installation on Solus

I’m going to assume you were able to get Solus installed on VMware Player and you’ve just booted up to a fresh desktop.  Install any updates required through the software center and if you need to reboot for a kernel update, please do so.

Once you’re at the desktop, select Player >> Manage >> Install VMware Tools.  Click “Yes” when prompted.  After this, launch a console and ensure that VMware Tools has mounted as a separate device (I use df- h to make sure it’s mounted).  If they haven’t mounted, launch the file explorer utility and click on the VMware Tools device in the left hand pane.  They should mount and you should be able to see them inside the console as follows:

 

 

 

Navigate to that location and list the contents.  You should see a file named something like  “VMwareTools-10.3.21-14772444.tar.gz”.  Copy this file to a location of your choosing.  I copied it to my documents.

 

Next, unzip and untar the files:

 

Once the files are extracted, enter into the directory and run the following command (use sudo if you aren’t in root group like I am) to see what we need to do:

 

 

Follow the prompts pressing return for default values and you should hit a snag on the following:

 

 

So VMware Tools is looking for rc directories, but they don’t exist on Solus (for good reason!).  So let’s give VMware Tools what it wants.  Control-C to drop out of the installer and let’s create those files as root:

 

 

Run the installer again, pressing return for all defaults.  Let it fail on “Unable to copy the source file /usr/lib/vmware-tools/configurator/pam.d/vmtoolsd to the destination file /etc/pam.d/vmtoolsd

Since that path doesn’t exist, let’s create it

 

 

Now let’s run that command to install the tools again (vmware-install.pl) and select all defaults by pressing return.

VMware Tools should finish installing completely at this time.  Reboot the VM.  Log back in.

Attempt to change the resolution and things should be right as rain at this point in time…before the tools install, not so much.  Make sure in the VM settings in player that you have the 3D acceleration checkbox checked and you should have quite a nice experience running VM’s using VMware Player.

Questions? Concerns?  Please do let me know below and I’ll attempt to help in any way I can.  Opinions?  I like those too!  Let me know how crap I am below!  Thanks much for reading!

A Lightweight Low-Battery Warning Monitor for GTK+ 3.x desktops

A laptop’s battery gives us the comfort of storing power which we can use later. However, sometimes this comfort turns into pain.  For example, if we take our laptop with us, thinking that it’s charged (but it actually isn’t), or if we leave our laptop powered on and it silently turns off resulting in the loss of valuable work.

It is with this in mind that a programmer developed a simple battery monitor in Python with the following capabilities:

  1. The program should be customizable and lightweight.
  2. It should work in the background without any disturbance.
  3. It can allow the user to set a minimum charge threshold.
  4. Upon reaching that threshold, the program should not only display a desktop notification but also play a sound to force the user to plug in the charger.
  5. When the charger is connected, it should stop the notifications immediately but remain running to watch for future problems.

The program has been tested on Arch, Ubuntu and Mint, so, if this sounds like something you’d be interested in, why not give it a try!

JARVYS, Set It and Forget It Linux Backups

Wouldn’t it be great if there was a cloud based file backup system that put Linux FIRST?  One that made it so we didn’t have to use FUSE?  One that didn’t put out a Windows client first and the Linux client was an afterthought?  One that you could get installed and configured quickly and easily which would allow you to ‘set it and forget it’?  Me too!

Until a few weeks ago…I wasn’t sure something like that existed.  Then I was approached by the founders of JARVYS, a backup software solution that does just that.  I had a chance to interview Cade Proulx and Matt Connor of JARVYS to understand a bit more about how it works, where it is headed, and why its perfect for those of us who develop on Linux.  I’d like to disclose that JARVYS is a sponsor of this blog.

Q:  Tell us a little bit about yourselves?

A:  Matt has been using and developing with Linux for around 15 years and I’m (Cade) a gamer at heart (MOD creation, Rig building, etc).  We met at Chapman University and began to take our start-up ideas into reality with SSD Nodes, JARVYS and Xerq.io.  We’re active in the venture capital and start-up scene; not only for ourselves, but also helping others to get started.

Q: Where did the idea of JARVYS come from?

A: We have a company named SSD Nodes that provides on-demand datacenter services, specializing in reliable, high performance cloud computing. We provide a massive dynamic platform that allows you to quickly innovate and deploy your applications on a global scale.  With that being said, our customers had a need to do small file level backups with a way to easily restore.

Q:  So is JARVYS only for people who need datacenter level services?

A:  Not at all.  The idea for JARVYS is to provide a quick (you can get installed and backing up in 60 seconds) and easy way for end users to get started with backups.  We wanted to provide a very low barrier for entry on these types of backups and restores…to make it so that people can get to working with what matters to them instead of worrying about backups.  JARVYS will work on servers or desktops…it doesn’t matter.  What matters is that JARVYS gets out of the way and lets you do your work while it continues to back your important stuff up.

Q:  When was JARVYS founded?

A:  We’ve been using the idea and backup solution with most of our customers at SSD Nodes for a long time…but JARVYS as a company and product only came to be in August or September of this year.  It was at that time we really made the code modular and cleaned it up enough to make it presentable.  We’re still in beta right now as we’re introducing some great features like zero-knowledge encryption.

Q:  How did you come up with the name “JARVYS”?

A:  JARVYS is a very popular name in the French language and we thought of JARVYS as a butler of sorts.  It seemed fitting that our software just took care of the backups for you…much in the way a butler would if you had one.

Q:  How many people work on JARVYS at the moment?

A:  We currently have 7 employees and growing.

Q: So what programming language do you use for JARVYS?

A:  Golang mostly.

Q:  Is there an API for end users to build on or a plugin system?

A:  Not yet, but in the future we plan on having a very robust API and plugin framework.  We really want people to build things on top of JARVYS.

Q:  What are your ultimate goals for JARVYS?

A:  We want JARVYS  to make dataloss a thing of the past.  We’ve seen so many customers mess up backups and lose data. There are so many holes with data preservation. There are so many moving parts to a backup such as  the restore, notifications for success and loss.  And of course, a backup system isn’t complete until you’re able to restore your data.  It is our hope that JARVYS takes the difficulty out of the backup for Linux users.

Q:  Let’s say I’m a customer and I install and get started today.  What happens to my data/backup?  Is it encrypted?  

A:  The JARVYS client uses an encrypted SSH tunnel to transmit your data to our servers here.  We’re still in beta right now but ultimately we’re looking at an encrypted storage place for everyone’s data.  We want this to be YOUR data…we want to make it so that you hold the keys to the kingdom and not even JARVYS can see your files or decrypt them.  We’re not there yet but we are currently developing and testing this ‘zero knowledge’ storage system right now.

Q:  Do you have a free plan?  If so, will it always be free?

A:  Yes, we have a free plan.  We feel that with developers and the  Linux community that there should always be a free plan.  It’s important that we contribute and give back because we’re standing on the shoulders of giants.  It just makes sense that if we take, we should give.  So we’ll always have a free plan that can get you started with hassle free backups within 60 seconds.

Q:  What would you say if someone asked “Isn’t this just another Dropbox?”

A:  We’d say that it really isn’t like Dropbox at all.  For example, with Dropbox restores aren’t going to be seamless with a single command like they are with JARVYS.  Dropbox also has a daemon that runs and it uses FUSE on Linux.  JARVYS is cron enabled and only runs when the backup happens.  It’s designed to have a very small footprint.  Restores with JARVYS take less than a few seconds while restoring files with Dropbox will take quite a bit longer.

Q:  How do I keep up to date with JARVYS releases and news?

A:  You can find us on Twitter, Facebook, and Google+.  You can also keep up with JARVYS on our Blog.

Q:  Where can I check out JARVYS?

A:  You can get started using the free plan we mentioned above.  As we said, it’s free and will always be free.  Alternatively, we’re offering a special for Yet Another Linux Blog readers:  20% off, any tier plan for the lifetime of the plan.  It’s a great deal!  To take advantage, simply use the code “linux-blog” at checkout.  Head over to our pricing page to get started.  We hope JARVYS takes the hassle out of your backups and thanks for checking us out!

Lightweight Command Line Downloading with Aria2

Sometimes you just want a quick and easy way of downloading  large files.  If you’re like me, you want this with as little of a memory footprint as possible.  Aria2 gives me this ability.  When downloading a torrent for a recent Linux release, I was able to do this with only 5MB of memory being used.  No other download programs can give me this.

What’s nice about aria2 is that you can download the same file from multiple sources (mirrors) and cut your download times with each source.  You can also open multiple pipes to the same download which shortens the time as well.  Let’s take a quick look at what aria2 can do for your downloads.

Downloading with Aria2

For this test I used KDE4 iso’s from OpenSuse.  First, I established a baseline using wget:

wget http://www.gtlib.gatech.edu/pub/opensuse/distribution/12.3-RC2/iso/openSUSE-12.3-KDE-Live-Build0094-x86_64.iso

This took 15 minutes 47 seconds to complete.  The file size is 941MB.  My Internet connection at home has a max download of 10MB and upload of 1MB.

Using aria2, the same file took 10 minutes 32 seconds to complete.  Here is the command I used for this:

aria2c -x2 http://www.gtlib.gatech.edu/pub/opensuse/distribution/12.3-RC2/iso/openSUSE-12.3-KDE-Live-Build0094-x86_64.iso

The -x2 in the above command pipelines the download of the ISO into 2 separate threads.  This speeds things up considerably.  Be wary of using too many threads though because many websites out there will throttle you down in speed should you open more than 3-4 threads.

Aria2 supports more protocols than you can shake a stick at including magnet links, bittorrent, metalink and even ftp.  There are many command line flags and options you can use and you can even call aria2 using JSON-RPC and XML-RPC through the web.  All together, aria2 is scalable, flexible and lightweight…there isn’t much it cannot do.  If you’re looking for a lightweight download utility, aria2 has you covered.

Ubuntu 12.04, Amahi, and Linux Not Detecting Hard Disks

It’s been quite a long time since I’ve had this much trouble with Linux detecting a hard drive.  It brought me back to Ye Olde Linux days when 14 floppy disks housed your distribution and more times than not you didn’t have compatible hardware and had to find out via BBS what modem worked with what kernel…sometimes, it was a major pain…and that was the fun in it 🙂

In today’s installation of Linux…I thought I’d left those days behind.  I was wrong, unfortunately.

I downloaded Ubuntu 12.04 to install so that I could put Amahi on my video/picture/file/tv/movie share Linux machine.  Amahi is pretty much the best program on the face of the planet to use for this purpose…I’d put it up against any ‘samba-like’ distribution of Linux out there and I think it would come out on top.  Anyway, I went to install Ubuntu 12.04 and I immediately hit a problem:  it wasn’t detecting my hard drive.  I got out my notes for when I last installed an operating system on this server and it happened to be the last release of Amahi on Fedora…which was Fedora 14.  In that instance, I had to pass the nodmraid option in order for my hard drive to detect.

Easy enough.  I went into the Ubuntu options for booting.  Chose F6 and then selected nodmraid.  It booted fine and I went to a desktop.  Once there, I clicked the install icon.  Things were looking good until I went to the part of the installer where you choose a hard disk…which didn’t give me any hard disks.  I tried this process again and again…often times putting in other options such as noapic, nolapic and other awesome boot parameters using the F6 portion of the boot prompt.  No joy on any of these tries.  What could it be?

After a few minutes of brainstorming, I realized that Ubuntu wasn’t actually honoring the boot parameter for nodmraid.  Since this was the case, the hard drive wasn’t detecting.  In order to get the hard drive detecting, I should remove the dmraid information from my hard drive and see if this made a difference.  So, here’s how I fixed this problem:

  1. Instead of booting to install Ubuntu, select the option to Try it first
  2. Once there, hit up the dashboard, click on all applications, and search through all 78 until you find Terminal
  3. Once the terminal is up, type sudo su and hit enter.  You’re now root.
  4. type fdisk -l and take note of the letter designation of your hard drive that is having problems detecting (sda in my case).
  5. type dmraid -E -r /dev/sdX where ‘X’ is the letter designation of your hard drive.
  6. Answer yes to the question it asks of if you wish to remove the dmraid information on the drive.
  7. Reboot and Install Ubuntu.  It should now detect.

Not a hard thing to figure out…but it might be for some new users…and I’m almost certain Amahi users will run across this…because many of them are converts from Windows Home Server.  In this case, they’d probably be pretty freaked out having to drop down to a command line and issue commands.  Hopefully, this article will be a handy tool for them to use in order to get Ubuntu and subsequently, Amahi installed on their computer.  Thanks for reading!

Conky Always on Top Fix in Openbox

I hit a snag recently when installing Openbox on the newest Alpha2 for Unity Linux.  I initiated Conky in my autostart.sh and it was always on top…of everything on my desktop.  That’s not a good thing when you’re trying to browse the web with your Conky layout on top of your browser.  After thinking about some of the settings, I thought maybe that own_window setting might be good to play around with in conky settings…however, after a few tries, that didn’t pan out and fix this problem.

I recalled something similar with wbar in Openbox…it would draw itself on top only and have a large black box around it.  No matter what I tried, I couldn’t get it to not display the bar nor get it to stop displaying on top.  I eventually would have to kill the PID and restart the program; then I tried something…on accident actually…pypanel, my previous panel, displayed so fast I had to make it sleep to avoid problems.  So I just replaced pypanel with wbar and let it go.  Wouldn’t you know it, Wbar displayed fine and in all it’s glory after that.

I tried the same with Conky and I am happy to report it works just fine to solve the “always on top” issue.  To make a task sleep before running in your autostart.sh, alter it as follows:

(sleep 6 && program) &

Where 6 is the number of seconds you want things to sleep and program is the program you wish to run.  Hopefully this helps a few people out…it threw me for a loop for a while before I was able to solve it.  Gratuitous and obligatory screenshot is below:

openbox and conky
openbox, conky & tint2
Creative Commons License
Except where otherwise noted, the content on this site is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.