Collection of scripts and tweaks to adapt Ubuntu and Linux Mint ISO images to let them run smooth on Dell XPS 15 9560. This might work on other Dell XPS too.
The kernels used for respins are from the Ubuntu Kernel Team kernel builds located at http://kernel.ubuntu.com/~kernel-ppa/mainline . Kernels 4.15+ seems to work fine using the parameters and tweaks provided in this repository. No need for custom kernel patches.
All informations, tips and tricks was gathered from:
Kudos and all the credits for things not related to my work go to developers and users on those pages!
- ✔ Wifi (Atheros models too)
- ✔ Audio
- ✔ Audio on HDMI
- ✔ HDMI ( even on lid closed )
- ✔ Nvidia/Intel graphic cards switch
- ✔ Touchpad gestures
- ✔ Keyboard backlight
- ✔ Display brightness
- ✔ Sleep/wake
- ✔ No random freeze or kernel panics
- Not known for the moment
There is still a major issue on 18.04:
- Prime-select intel is not powering off the nvidia card, so even if you use the intel card your battery will drain a lot faster (20w instead of 10w). The service suggested in issue #8 may help.
Ubuntu 17.10 is stable and is not affected by those issues. If you need a reliable system stick to Ubuntu 17.10 until those issues gets fixed.
- Download ISO from Release page
- Mirror: https://downloads.cre.ovh/ (Experimental ISOs will be uploaded here)
And follow guide from Step 4: Install and Update
- Clone the repo and install necessary tools
- Download your ISO of choice
- Respin the ISO (it many take a about 30 minutes or even longer)
- Install OS and run post-install commands
Click here for the Docker building section
To respin an existing Ubuntu ISO, you will need to use a Linux machine with some packages like squashfs-tools
and xorriso
installed (e.g. sudo apt install -y squashfs-tools xorriso
) and a working internet connection. Script require at least 10GB of free storage space.
The first step is to clone this repo:
git clone https://github.com/stockmind/dell-xps-9560-ubuntu-respin.git
cd dell-xps-9560-ubuntu-respin/
Install all the required packages:
sudo apt install -y git wget genisoimage bc squashfs-tools xorriso
Install all the required packages:
sudo pacman -S git wget cdrkit bc libisoburn squashfs-tools dosfstools
Download your favourite distribution ISO and copy it in this repository cloned folder.
Run ./build.sh
script as specified for your desired distro.
- Build ISO running this:
./build.sh <iso filename>
Or:
./build.sh <iso filename> -k <kernelversion>
If you don't set a -k flag, the latest mainline kernel will be installed during respin.
Value for -k flag can be any of the Ubuntu Kernel Team kernel builds located at http://kernel.ubuntu.com/~kernel-ppa/mainline and is passed as the directory or folder name without the trailing
Launch build.sh script with -c
compatibility parameter set to xenialxerus
:
./build.sh <iso filename> -k <kernelversion> -c xenialxerus
Launch build.sh script with -c
compatibility parameter set to bionicbeaver
:
./build.sh <iso filename> -k <kernelversion> -c bionicbeaver
- Build ISO running this:
PATH=/usr/sbin:/sbin:/bin:$PATH ./build.sh <iso filename>
Or:
PATH=/usr/sbin:/sbin:/bin:$PATH ./build.sh <iso filename> -k <kernelversion>
If you don't set a -k flag, the latest mainline kernel will be installed during respin.
Value for -k flag can be any of the Ubuntu Kernel Team kernel builds located at http://kernel.ubuntu.com/~kernel-ppa/mainline and is passed as the directory or folder name without the trailing
I sugget Etcher to write ISO on usb flash drives. It's fast, reliable and multi-platform.
Boot system using one time boot menu. Disable Secure boot in bios to boot from the ISO.
These commands should be run after the first boot.
sudo tlp start
sudo powertop --auto-tune
Intel:
sudo prime-select intel
Nvidia:
sudo prime-select nvidia
Note: A logout and login could be required when switching graphic cards.
You can respin iso and build kernels on a Docker environment easily. This build system will likely work on any x86 Docker supported platform. Tested and working on Linux and MacOS, builds on Windows not tested yet.
You just need to build the Docker image, or download it from Docker Hub, and follow the steps below.
docker pull stockmind/dell-xps-9560-ubuntu-respin
Clone repository and run the following script to build the docker image
./docker-build-image.sh
Once the image is ready you can choose from the following steps:
To respin an ISO you need to place desired ISO in origin/
folder of this repository then run:
./docker-respin.sh <iso-file-name>
./docker-respin.sh <iso-file-name> -k <kernelversion>
Example:
./docker-respin.sh origin/ubuntu-17.10.1-desktop-amd64.iso
Or:
./docker-respin.sh origin/xubuntu-17.10.1-desktop-amd64.iso -k v4.15.4
If you don't set a -k flag, the latest mainline kernel will be used.
Value for -k flag can be any of the Ubuntu Kernel Team kernel builds located at http://kernel.ubuntu.com/~kernel-ppa/mainline and is passed as the directory or folder name without the trailing
Let it run, it will take from 10 to 30 minutes based on your internet connection and system speed.
Once done you will find output ISO in destination/
folder of this repository.
If you are using the Docker Hub image remember to always pull latest version before running any of those scripts!
docker pull stockmind/dell-xps-9560-ubuntu-respin
If my work helped you consider a little donation to buy me a coffe... or an energy drink! 😄
Paypal
Bitcoin