Thursday, July 26, 2018

Run Slackware 14.2 in GNOME Boxes on Fedora 28

For the next few months I will be studying for the CompTIA Linux+ certification exam at my local college.  I chose to install Fedora 28 on my laptop to immerse myself in the study material.  Online sources state that any Linux distribution can be used to study for the Linux+ certification exam.  The study material I am using is: "Linux+ Guide to Linux Certification, Third Edition" by Jason W. Eckert.  Within the book Fedora 13 is suggested as the accompanying Linux distribution.  Version 13 is a bit old and the latest version of Fedora is version 28.

While I study I plan to still do a bit of work on the SlackBuilds I maintain on SlackBuilds.org.  I installed the GNOME 3.28 spin of Fedora 28 which comes with GNOME Boxes for Virtualization.  Slackware installed just fine but I had a few problems:
  1. X would not start stating that no screens could be found
  2. Sound did not work in the X once I did get it to start
  3. Networking did not start by using rc.inet1.conf or with Network Manager
Slackware 14.2 with a failed startx execution in GNOME Boxes.
Other Linux distributions work out of the box using the default settings in GNOME Boxes.  I think this is due to the Express Installation option that sets up sane defaults on a distribution by distribution basis.  GNOME Boxes offers a number of distributions as an installation source for download.  There is not an option to install Slackware using any of the automated sources on Fedora 28.  I had to install using an ISO file I downloaded myself.  As a result I made a few changes to get Slackware working properly.  The easiest way to do this is to install the virt-manager GUI along side GNOME Boxes.  Boxes has very limited options available for customization.  You could also edit the XML for each virtual machine using the virsh edit command, but that can get confusing if you do not know the syntax.

The first thing I did was launch virt-manager and connect to the QEMU/KVM user session on my machine.  Go to File -> Add Connection:
Add virt-manger QEMU/KVM user session on Fedora 28.
After that select the virtual machine you want to edit and open it.  Then go to the virtual machine settings.  Set your Video Card to use the Model VGA.  Set  the Sound Device to use the Model ich6.  Set the Virtual Network Interface Device Model to be e1000.  Essentially what this does is tell the virtual machine to load the correct kernel modules for each virtual device that is not found or recognized by Slackware.  Here are some pictures to explain a bit better:

Set Slackware in virt-manager to use a VGA adaper.


Set Slackware in virt-manager to use the ich6 sound device.

Set Slackware in virt-manager to use e1000 NIC device model.

After that I closed virt-manager and opened up GNOME Boxes.  Slackware Linux 14.2, SalixOS, and Zenwalk Linux all work as expected at this point.  It might be good to get the QXL driver working for more graphics intensive applications within the Slackware virtual machines.  I will only be testing a few very basic GUI applications so the VGA (vesa I guess) video driver should be just fine.

Fedora 28 with Slackware 14.2 on Gnome Boxes machine menu.

Fedora 28 with Slackware 14.2 running in Gnome Boxes.
Thanks for reading and I hope this post was beneficial.  Leave a comment if you have any questions or corrections for this post.

Relevant Links: