Installing Linux on the Eurocom Q6:
If you are dual booting, install Windows first, and partition from there with a tool such as Minitool. You'll only need two partitions, one for root and optionally, a small one for swap (say, 8GB). Partition them as appropriate, and when done, reboot into the UEFI menu and ensure that:
(a). Secure boot is disabled (otherwise you won't be able to load up proprietary drivers needed for the Nvidia GPU).
(b). Confirm that you're booting in UEFI mode ONLY. This is the default. CSM should remain disabled. Here's why.
(c). Ensure that SATA mode in the BIOS is set strictly to AHCI. RAID mode will NOT work with Linux.
The standard Ubuntu 18.04LTS ISOs will not work, for two reasons:
The desktop edition acts up badly with both the touchpad and external mice, so even if you get to load the live environment (after blacklisting the nouveau driver via the pre-boot grub option
blacklist=nouveau), you won't be able to proceed with the next steps such as guided partitioning, etc.
The Ubuntu server image offered on the main download page disallows the use of existing partitions on your SSDs, which could be detrimental if you're dual booting. And this is where the alternate ISO comes in. Fetch it from here: http://cdimage.ubuntu.com/releases/18.04/release/
Then, create a bootable flash drive using etcher.io . If you can get Rufus to work with your flash drives (I had no such luck), you can use that too. When done, leave the USB drive plugged in and reboot to your UEFI (firmware settings). The shortcut is F2. Therein, go to the exit menu, boot override, and select your flash drive's partition with Linux on it. It will be listed as
At this point, you'll also want to ensure that you have a plugged in Ethernet cable at the ready. The installer will be able to configure it as appropriate (select DHCP, its' the fastest option when you get to that point).
Start the Ubuntu server installer as you would, and take note of the custom partitioning settings:
(a). For the partition designated for root, set its' file-system as ext4, mount point
(b). The swap partition will be automatically recognized, if you so chose to have one.
(c). The ESP, where the UEFI-based installation boots from, will also be automatically detected and mounted as needed. This is that 100MB~ partition that the Windows installer creates and is marked as 'SYSTEM RESERVED'. Read more about it here.
The rest should be pretty straight-forward, even if you're new to Linux. The guided installer is driven primarily by keyboard input, needs no mice and you won't run into any modesetting issues. Use this as a refresher.
When done, reboot. You'll notice that grub will be the default boot manager. Go back to Linux so we can finish setting up the desktop.
When done booting, log in (with the username and password you set up earlier) and install the latest updates first. Remember that ethernet cable you had to plug in? That interface was configured by the installer, and its' configuration remains persistent , thanks to a new abstraction layer in 18.04LTS named netplan.io.
Now, update your system:
sudo apt-get -y update && sudo apt-get -y upgrade && sudo apt-get -y dist-upgrade
Next, install the Ubuntu desktop via tasksel:
sudo tasksel install ubuntu-desktop
You can see the list of alternate environments by running:
For example, if you want KDE, you could run:
sudo tasksel install kubuntu-desktop
When you're done with that step, proceed to the next bit: The drivers for your GPUs.
Next, add the NVIDIA proprietary driver repository and Oibaf's PPAs as shown:
sudo add-apt-repository ppa:graphics-drivers/ppa -y && sudo add-apt-repository ppa:oibaf/graphics-drivers
Then update your software sources:
sudo apt-get update
Followed by an upgrade (to deploy the latest FOSS GPU drivers for your Intel card):
sudo apt-get -y upgrade && sudo apt-get -y dist-upgrade
And now, install the latest NVIDIA driver (R396 as of the time of writing):
sudo apt-get -y install nvidia-driver-396
For Conky, install the
sudo apt install conky-all
When done, make the following changes to your grub configuration file, ensuring that the line below looks exactly as shown (under
/etc/default/grub, use your preferred editor):
GRUB_CMDLINE_LINUX_DEFAULT="acpi_osi=! acpi_osi='Windows 2009' blacklist=nouveau elevator=deadline drm.debug=0xe quiet splash"
The important options there are as follows:
acpi_osisetting ensures that you won't hang on reboot, or get stuck with
lspci. It compensates for how Linux handles ACPI table parsing on these newer models.
Blacklist nouveau here because that module, if loaded, will lock up your system.
elevator=deadlineoption selects the deadline scheduler for all block devices on the system. Ideal for SSDs.
drm.debug=0xeis important for catching any issues with Direct Rendering early on in the kernel log (dmesg). You can safely omit it.
Now, generate new grub configs by running:
And reboot at this stage.
When you boot up, you'll be greeted by the fruits of your labor as shown below: A clean, minimalist Ubuntu desktop that you can tweak to your heart's content.
That's mine running Conky.
And building libvpx, etc.
And as you can see, things get toasty when compiling stuff. I'm seeing high 80s on some workloads.
Here's the LTE module on Linux (The Qualcomm Snapdragon X5):
So far, no show stoppers encountered so far.
A few caveats:
The audio jack works now (see the change made to
Keyboard backlight control can be resored by the use of the tuxedo-keyboard wmi driver as shown in the gist file below that documents the installation steps.
The LTE module needs a udev rule to initialize correctly. Fetch it from here:https://github.com/borovsky/x5-snapdragon-linux
Fan control would also be welcome under Linux for Clevo laptops. This, according to tuxedo Linux crew, will be coming soon.
The red SPDIF light can also be annoying. See the alias provided above that you can use to turn it off.
The fingerprint reader does not work under Linux at the moment. This is a part made by
Synaptics, labelled as the
Synaptics WBDI platform (usb 073).
See the conky script above. Note that you'll need to set hddtemp in daemon mode if you want HDD temps in the app:
For hard drive temperature, ensure that hddtemp is running as a daemon. You can do that by editing
/etc/default/hddtemp and ensuring that
RUN_DAEMON is set to
TRUE. When done, restart the hddtemp unit service by:
sudo systemctl restart hddtemp.service
On autostart: https://wiki.archlinux.org/index.php/conky#Autostart