Lenovo yoga 730
Contents
Install
Packages
Package | purpose |
---|---|
iio-sensor-proxy | Auto brightness |
bolt | Thunderbolt 3 |
xf86-input-wacom | Digitiser/Pen support |
nvidia | For external GPU |
intel-compute-runtime | For OpenCL CPU support |
Suspend
If closing the lid doesn't suspend. In /etc/systemd/logind.conf
uncomment the following:
/etc/systemd/logind.conf/etc/systemd/logind.conf
HandleSuspendKey=suspend HandleLidSwitch=suspend
Backlight
Works in gnome but can be reduced so far that it goes off, leaving the screen black.
One of these kernel parameters might fix this:
kernel parameters
acpi_backlight=video acpi_backlight=vendor acpi_backlight=native
Installing iio-sensor-proxy does auto brightness.
Fingerprint reader
The device is Bus 001 Device 005: ID 06cb:0081 Synaptics, Inc.
Nether fprint nor thinkfingerAUR work, but there is a prototype driver here.
Thunderbolt 3
Works once you install bolt.
This can be temperamental, it may require unplugging and re-plugging the eGPU.
eGPU
This was tested with a Gigabyte Aorus 1070. Bumblebee might blacklist the nvidia module, comment out the nvidia modules in /usr/lib/modprobe.d/bumblebee.conf
so that it looks like this:
/usr/lib/modprobe.d/bumblebee.conf
#blacklist nvidia #blacklist nvidia-drm #blacklist nvidia-modeset #blacklist nvidia-uvm blacklist nouveau
The following allows Xorg to use the GPU if it exists - you'll need to ether delay the Xorg startup or restart it once the device is fully active.
xorg.conf for both external and internal graphics
Section "ServerLayout" Identifier "eGPU" # The two screens allow the server to start in one of two modes Screen 0 "eGPUScreen" Inactive "Intel" Screen 1 "IntelScreen" EndSection Section "Device" Identifier "eGPU" Driver "nvidia" VendorName "NVIDIA Corporation" Option "NoLogo" "true" Option "AllowEmptyInitialConfiguration" Option "AllowExternalGpus" EndSection Section "Device" Identifier "Intel" Driver "intel" VendorName "Intel" EndSection Section "Screen" Identifier "eGPUScreen" Device "eGPU" EndSection Section "Screen" Identifier "IntelScreen" Device "Intel" EndSection
You can use this script to delay the display manager until the device is fully configured.
/usr/local/bin/wait-for-egpu.sh
#!/bin/bash DEVICE=/dev/dri/card1 # switch to our vt to see the messages chvt 2 delay=30 wait=1 #while [ \( ! -c "$DEVICE" \) -a $delay -gt 1 -a `cat /sys/class/power_supply/AC*/online` != "1" ] ; do while [ $wait -gt 0 -a $delay -gt 1 ]; do if [ \( -c "$DEVICE" \) -a `cat /sys/class/power_supply/AC*/online` == "1" ] ; then echo $'\e[32;1meGPU present, on AC power.\e[0m' elif [ -c "$DEVICE" ]; then echo $'\e[33;1meGPU present but no power.\e[0m' else echo $'\e[31;1mNo eGPU.\e[0m' fi echo "Press 'Y' to continue to Login. Press 'W' to wait forever. Any other key to rescan." if read -r -s -n 1 -t 5 key ; then if [ "$key" == "y" -o "$key" == "Y" ]; then wait=0 elif [ "$key" == "w" -o "$key" == "W" ]; then wait=2 fi elif [ $wait -eq 1 ]; then let "delay -= 5" echo "Waiting for ${delay} more seconds for eGPU." fi done
Add the systemd setup file below and activate it with systemctl daemon-reload
and systemctl enable wait-for-egpu
/etc/systemd/system/wait-for-egpu.service
[Unit] Description=Simple interactive dialog window After=getty@tty2.service Before=display-manager.service [Service] Type=oneshot ExecStart=/usr/local/bin/wait-for-egpu.sh StandardInput=tty TTYPath=/dev/tty2 TTYReset=yes TTYVHangup=yes [Install] WantedBy=multi-user.target
Dock Stations
Feature | Status |
---|---|
USB-C | Working |
USB 3.0 | Working |
Audio Jack | Working |
Gigabit Ethernet | Working |
HDMI 1 & 2 | Only X11, requires DisplayLink |
DisplayPort 1 & 2 | Untested |
5K Combo (Joined DisplayPorts) | Untested |
Tablet mode
Try gnome extension slide-for-keyboard, keyboard automatically disables under gnome.
Pen
install xf86-input-wacom
External display
HDMI on USB-C adapter just works
Issues
USB-C Charging
With the Gigabyte Aorus 1070 Gaming box, the charging sometimes stops. Doesn't seem to happen in Windows.