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.