#!/bin/bash # prefer running as root DIR=$(dirname $0) PROGRAM=/usr/local/bin/comfortable-swipe CONF_PATH=/usr/local/share/comfortable-swipe/comfortable-swipe.conf DCONF_PATH=$DIR/defaults.conf OLD_CONF_PATH=${XDG_CONFIG_HOME:-$HOME/.config}/comfortable-swipe.conf if [ -x "$(command -v $PROGRAM)" ]; then # stop any running comfortable-swipe if it exists $PROGRAM stop fi #copy config file abort () { exec echo "Installation aborted" } sudo mkdir -p $(dirname $CONF_PATH) || abort sudo chown $USER $(dirname $CONF_PATH) if [ ! -f $CONF_PATH ]; then if [ ! -f $OLD_CONF_PATH ]; then # old config file not found, create from scratch cat $DCONF_PATH > $CONF_PATH || abort else # old config file found, move to the new path cat $OLD_CONF_PATH > $CONF_PATH || abort echo "Configuration copied from $OLD_CONF_PATH to $CONF_PATH" fi else # config file found, ask user if overwrite echo "Old conf file found in $CONF_PATH" read -r -p "Keep the old conf file? (default: yes) [Y/n] " response response=${response,,} # tolower if [[ "$response" =~ ^(no|n)$ ]]; then read -r -p "Conf file will be overwritten. Are you sure? [Y/n] " response response=${response,,} if [[ "$response" =~ ^(yes|y)$ ]]; then cat $DCONF_PATH > $CONF_PATH || abort else abort fi fi fi echo "Installing..." # remove existing comfortable-swipe if [ -x "$(command -v $PROGRAM)" ]; then sudo rm -f $(which comfortable-swipe) fi # compile library sudo $DIR/compile.sh $PROGRAM || abort # add permissions to input group (defer) # GROUP=$(ls -l /dev/input/event* | awk '{print $4}' | head --line=1) || abort # toggle autostart twice to refresh any changes $PROGRAM autostart > /dev/null || abort $PROGRAM autostart > /dev/null || abort echo "Successfully installed comfortable-swipe." echo "Configuration file is located at $CONF_PATH" echo "" echo "Try running 'comfortable-swipe start' to test."