its actually just a single perl script, and doesn’t need to be compiled. you just download the main script file, put it in /usr/local/bin on your phone, and make it executable. then you run it as root in a terminal. i have a daemon start it in screen
when i start my phone. when i originally made it for the N9, i had a systemd service start it, but i never bothered on sailfish.
you will also need to make a config file. here is my mine:
nemo@sx:~$ cat .config/sf-button-monitor.conf
### SYSTEM CONTROL
action=cmd(touchInput enabled),pw,always
action=cmd(touchInput disabled),pw(vd),always
### UTILS
action=cmd(screenshot),vu(vd vd),always
action=torch,vd vd,always
action=cmd(bt on),vd vd vd vd vd,always
### VOLUME
action=repeat(600, vol --set --only-if-buttons-disabled +1),vu-press,screenUnlocked
action=repeat(600, vol --set --only-if-buttons-disabled -1),vd-press,screenUnlocked
action=cmd(vol --set --only-if-buttons-disabled +1),vu,screenLocked
action=cmd(vol --set --only-if-buttons-disabled -1),vd,screenLocked
### MUSIC/AUDIOBOOKS
action=cmd(klomp-coolreader --play-pause),vu vu,always
action=cmd(klomp-cmd next),cf(vu),always
action=cmd(klomp-cmd prev),cf(vd),always
action=cmd(klomp-cmd seek-back),vu vu vu,always
action=cmd(klomp-playlist --cycle),cf(vu vu),always
action=cmd(klomp-toggle-breaks),vu vu vu vu,always
action=cmd(klomp-coolreader --play-pause),play,always
action=cmd(klomp-coolreader --play-pause),pause,always
action=cmd(klomp-cmd next),next,always
action=cmd(klomp-cmd prev),prev,always
action=cmd(coolreader-ctl next),vu,window(org.coolreader)
action=cmd(coolreader-ctl toggleOrientation),vu vu vu,window(org.coolreader)
### HOME AUTOMATION
action=cmd(tasmota l),vd vd vd,always
action=cmd(tasmota bulbs --dimmer 20 100),vd vd vd-press,always
action=cmd(ipmagic raspi -b 'igcmd ac2-power'),vd vd vd vd,always
### FIXES/RESTARTS
action=cmd(fix led), cf cf,always
action=cmd(fix mms), cf cf cf,always
action=cmd(fix ofono mms led bt), cf cf cf cf,always
action=cmd(fix adr), cf cf cf cf cf,always
action=cmd(fix ofono mms led bt lipstick pulse kb),cf cf cf cf cf cf,always