This is another article in my continuing adventure in running Linux on my new Sager Laptop.
To recap, I bought a Sager brand laptop because it had the same specs as a System76 Unit but at about 60% the cost. I figured if System76 can get a working desktop then the hardware should be pretty compatible. Well, as I discovered, its an uphill battle.
I’m running popOS (System76’s os), basically an Ubuntu/Debian build without alot of the Ubuntu ‘phone home searching’ stuff.
One thing that was lacking was the Fn+F1 key to disable the trackpad. Something that I kinda need since this unit comes with a nice, big trackpad. And that trackpad can get in the way when I position my hands for typing long documents.
Out of the box, Fn+F1 is not recognized by the unit. So here’s my workaround.
I started with a Terminal window to find the character input for fn+F1. From a terminal use Ctrl+v then press the key combo and the get the input code.
This is the output when I hit Ctrl+v then Ctrl+F1
To test that, I used the following:
mike@pop-os:~$ bind '"\e[1;5P":"foobar"'
Pressing Ctrl+F1 gets me ‘foobar’ echoed to the display. So I know I have the right key code.
Next, I lefted a script that I found that toggles the touchpad via the command line. I saved this on my system:
#! /bin/bash T=14 CURRENT_STATE=`xinput list-props $T | grep "Device Enabled" | egrep -o "[0-9]$"` if [ $CURRENT_STATE -eq "1" ]; then xinput --disable $T else xinput --enable $T fi
I saved that to /opt/scripts/touchpadtoggle.sh and made it executable with ‘chmod +x’.
I tested the toggle script with:
mike@pop-os:~$ bind '"\e[1;5P":"/opt/scripts/touchpadtoggle.sh\n"'
Note that the ‘/n’ at the end sends a new line to execute the script.
Since the key combo does work and the touchpad toggles like I want, I can setup the key bind on each login by adding that bind line to ~/.inputrc
Or, you can add it to the Desktop by using Keyboard Shortcuts:
Reboot to test and now I have a usable touchpad toggle via key combo.