Add scripts for controlling Optimus laptop.

This commit is contained in:
Érico Rolim 2019-07-29 11:58:43 -03:00
parent 65cc81abd3
commit 71bbb98219
4 changed files with 58 additions and 0 deletions

View File

@ -0,0 +1,9 @@
#!/usr/bin/env fish
kdesu enablegpu
sleep 2
darktable $argv
kdesu disablegpu

24
script/.local/bin/disablegpu Executable file
View File

@ -0,0 +1,24 @@
#!/bin/sh
echo "Restarting bumblebee service."
systemctl restart bumblebeed.service
sleep 1
echo "Removing modules."
modprobe -r nvidia_drm
modprobe -r nvidia_uvm
modprobe -r nvidia_modeset
modprobe -r nvidia
echo "Changing power settings."
# Change NVIDIA card power control
echo -n auto > /sys/bus/pci/devices/0000\:01\:00.0/power/control
sleep 1
# change PCIe power control
echo -n auto > /sys/bus/pci/devices/0000\:00\:01.0/power/control
sleep 1
echo "Moving config files."
# Lock system form loading nvidia module
mv /etc/modprobe.d/disable-nvidia.conf.disable /etc/modprobe.d/disable-nvidia.conf
mv /home/ericonr/.local/share/vulkan/icd.d/nvidiaegl_icd.json /home/ericonr/.local/share/vulkan/icd.d/nvidiaegl_icd.json.disable

21
script/.local/bin/enablegpu Executable file
View File

@ -0,0 +1,21 @@
#!/bin/sh
echo "Moving config files."
# allow to load nvidia module
mv /etc/modprobe.d/disable-nvidia.conf /etc/modprobe.d/disable-nvidia.conf.disable
# add ICD layer for vulkan
mv /home/ericonr/.local/share/vulkan/icd.d/nvidiaegl_icd.json.disable /home/ericonr/.local/share/vulkan/icd.d/nvidiaegl_icd.json
echo "Changing power settings."
# Remove NVIDIA card (currently in power/control = auto)
echo -n 1 > /sys/bus/pci/devices/0000\:01\:00.0/remove
sleep 1
# change PCIe power control
echo -n on > /sys/bus/pci/devices/0000\:00\:01.0/power/control
sleep 1
# rescan for NVIDIA card (defaults to power/control = on)
echo -n 1 > /sys/bus/pci/rescan
echo "Loading modules."
# someone said that modprobe nvidia is needed also to load nvidia, to check
modprobe nvidia

4
script/.local/bin/nv-settings Executable file
View File

@ -0,0 +1,4 @@
#!/usr/bin/env bash
optirun -b none nvidia-settings -c=:8