######################################################################## Points of attention when installing Linux (Debian Jessie) on a Lenovo Ideapad Y700-15ISK Kees Lemmens, Jan 2017 ######################################################################## 1) For wifi you need the "iwlwifi" driver with the backport firmware for Jessie, because the standard firmware on jessie doesn't yet support this rather new wifi device. The firmware name is: iwlwifi-8000C-??.ucode Add this to /etc/apt/sources.list to get it installed : deb http://ftp.debian.org/debian jessie-backports main And run this: apt-get update && apt-get -t jessie-backports install firmware-iwlwifi 2) The SSD drive is not a real SSD drive but a blob of Non Volatile memory. Works fine, but doesn't support things like S.M.A.R.T. and has a different name : /dev/nvme0n1 is the base device and the partitions will be /dev/nvme0n1p1, nvme0n1p2 , .... Note that you need the "nvme" driver in your kernel or as a module or else it won't be loaded. And, if it is a module and your root partition is on this "SSD" the module should be on the initrd or else you can't mount the root device. 3) Uefi boot : works fine with efibootmgr and refind, provided you boot your install from a EFI bootdevice (most modern install images use this). Note that if you boot in legacy mode you won't see the efi variables and so you can't modify the EFI settings. In the case of a legacy boot efibootmgr will report something like this: laptop:~ 424 # efibootmgr efibootmgr: EFI variables are not supported on this system. With many systems you can also add a new boot option directly from the UEFI BIOS, provided it is already installed in the EFI partition, but that doesn't work on the Lenovo. So, you'll have to make it bootable using efibootmgr, which is however quite simple. Suppose your first disk is /dev/sda and your EFI partition is on /dev/sda5 (like on my systems) : efibootmgr -c -d /dev/sda -p 5 -l '\EFI\refind\refind_x64.efi' -L "Linux Refind" efibootmgr -c -d /dev/nvme0n1 -p 5 -l '\EFI\refind\refind_x64.efi' -L "Linux Refind" The rest has to be done in /boot/efi/EFI/refind/refind.conf, although refind is already quite clever to boot your kernels without any config file. Extra boot options can be added to /boot/efi/refind_linux.conf, eg. to set the root device to be on /dev/nvme0n1p1 instead of on /dev/sda1 . 4) The Xorg "intel" driver from Debian Jessie doesn't support this videocard yet. (it reports as an Intel Corporation Device 191b). However, using the "fbdev" driver in /etc/X11/xorg.conf makes standard X graphics always work (both in Intel and Nvidia mode), although in that case you don't have 3D support or other nice gimmicks. However, KDE, Youtube video (also fullscreen) and simple animations work fine altough not hardware rendered, but CUDA can be used as if you have a dedicated Nvidia GPU card. A little more powerful is the "modesetting" driver: this also works fine and is more advanced (e.g. supports different videomodes) and if you use the Intel Card for graphics it can even allow for 3D graphics while you still have full access to the Nvidia GPU ! To do this : - Choose Switchable graphics in the UEFI BIOS - Boot over UEFI so you'll have a framebuffer device and modesetting (see above) - Use Driver "modesetting" in the "Device" Section from /etc/X11/xorg.conf - Install the full Nvidia toolkit and driver (e.g. sh NVIDIA-Linux-x86_64-375.26.run) - AFTER this REINSTALL the mesa packages and xorg to replace the Nvidia GL and GLX drivers with ones that work on Intel and then you can have simple 3D also in the modesetting mode (which is good enough for normal work): apt-get install --reinstall libgl1-mesa-glx libx11-6:amd64 apt-get install --reinstall xserver-xorg xserver-xorg-core - Now you should have a good Xserver with (limited) 3D support, so simple 3D games and so on will work while you still can use the Nvidia GPU for computations : - Load the nvidia driver so you can use the rest of the GPU with full support for Cuda, without the limitation you normally would have for a card that is also driving a graphics screen !! Note: for this there is NO NEED to install bumblebee : that is only necessary if you want to use the full Nvidia GPU for graphics and not for computing. However, I only want to use the GPU for computations and debugging and that works fine now without any limitations and with only some relatively simple steps! UPDATE: An even better solution that allows for full 3D (on Intel) is to install the latest "intel" driver from backports and use the intel driver instead of the modesetting driver : - Add jessie-backports to your /etc/apt/sources.list deb http://ftp.debian.org/debian jessie-backports main contrib non-free - Run apt-get update - (Re)Install the latest xserver with drivers from backports (but do NOT remove the CUDA driver): apt-get -t jessie-backports install --reinstall xserver-xorg xserver-xorg-core xserver-xorg-video-intel apt-get -t jessie-backports install --reinstall libgl1-mesa-glx libgl1-mesa-dri libx11-6 - Modify the Device Driver in /etc/X11/xorg.conf from "modesetting" to "intel". Section "Device" .... Driver "intel" ... EndSection - Restart the xserver : systemctl restart kdm 5) I recreated a new EFI partition on the SSD disk (nvme0n1p5) and installed refind there. Worked fine, but when I tried to boot into the UEFI BIOS I found out the BIOS wasn't there anymore !! So, on lenovo it sits somewhere in the EFI partition. As I had another Lenovo still new in the box I decided to copy everything in EFI/BOOT from there to my new EFI partition and - miracle ! - it worked again ! KL