[move-config] Move configuration file to /usr/local/share/comfortable-swipe/comfortable-swipe.conf
This commit is contained in:
parent
44661a8125
commit
6890ec4696
38
README.md
38
README.md
@ -28,43 +28,27 @@ Comfortable, seamless, and fast 3-finger (and 4-finger) touchpad swipe gestures
|
|||||||
|
|
||||||
## How to Run
|
## How to Run
|
||||||
|
|
||||||
1. Make sure `~/.local/bin/` is added to your PATH.
|
1. You'll need some group permissions to read touchpad input data. Run
|
||||||
2. Run
|
```bash
|
||||||
|
sudo gpasswd -a $USER $(ls -l /dev/input/event* | awk '{print $4}' | head --line=1)
|
||||||
|
```
|
||||||
|
2. ***Important***: After inputing your `sudo` password, log out then log back in
|
||||||
|
3. Run
|
||||||
```
|
```
|
||||||
comfortable-swipe start
|
comfortable-swipe start
|
||||||
```
|
```
|
||||||
|
4. Optional: Automatically run on startup
|
||||||
3. Optional: Automatically run on startup
|
|
||||||
|
|
||||||
```
|
```
|
||||||
comfortable-swipe autostart
|
comfortable-swipe autostart
|
||||||
```
|
```
|
||||||
|
5. Optional: Change keyboard configurations (refer [below](#configurations)).
|
||||||
### Permissions
|
Then restart after making changes with
|
||||||
Sometimes, you'll need some permissions to read touchpad input data.
|
|
||||||
|
|
||||||
1. Find out your permission group with `ls -l /dev/input/event*`
|
|
||||||
```bash
|
|
||||||
$ ls -l /dev/input/event*
|
|
||||||
|
|
||||||
crw-rw---- 1 root input 13, 64 Oct 23 23:09 /dev/input/event0
|
|
||||||
crw-rw---- 1 root input 13, 65 Oct 23 23:09 /dev/input/event1
|
|
||||||
crw-rw---- 1 root input 13, 66 Oct 23 23:09 /dev/input/event2
|
|
||||||
crw-rw---- 1 root input 13, 67 Oct 23 23:09 /dev/input/event3
|
|
||||||
```
|
```
|
||||||
|
comfortable-swipe restart
|
||||||
2. Check the fourth column (e.g. `input`) then run:
|
|
||||||
```bash
|
|
||||||
sudo gpasswd -a $USER input
|
|
||||||
```
|
```
|
||||||
> Note: Don't forget to input your `sudo` password!
|
|
||||||
|
|
||||||
3. ***Important***: Log out / Log back in
|
|
||||||
|
|
||||||
## Configurations
|
## Configurations
|
||||||
The configuration file is located at `~/.config/comfortable-swipe.conf`.
|
Comfortable swipe makes use of keyboard shortcuts for configurations. The configuration file is located at `/usr/share/comfortable-swipe/comfortable-swipe.conf`. Make sure to run `comfortable-swipe restart` after making changes.
|
||||||
Make sure to run `comfortable-swipe restart` after making changes.
|
|
||||||
|
|
||||||
Property | Description | Default Value | Default Behavior
|
Property | Description | Default Value | Default Behavior
|
||||||
--------- | ----------- | -------------- | -----
|
--------- | ----------- | -------------- | -----
|
||||||
|
|||||||
35
install
35
install
@ -1,6 +1,10 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
# prefer running as root
|
||||||
DIR=$(dirname $0)
|
DIR=$(dirname $0)
|
||||||
PROGRAM=/usr/local/bin/comfortable-swipe
|
PROGRAM=/usr/local/bin/comfortable-swipe
|
||||||
|
CONF_PATH=/usr/local/share/comfortable-swipe/comfortable-swipe.conf
|
||||||
|
DCONF_PATH=$DIR/src/defaults.conf
|
||||||
|
OLD_CONF_PATH=${XDG_CONFIG_HOME:-$HOME/.config}/comfortable-swipe.conf
|
||||||
|
|
||||||
if [ -x "$(command -v $PROGRAM)" ]; then
|
if [ -x "$(command -v $PROGRAM)" ]; then
|
||||||
# stop any running comfortable-swipe if it exists
|
# stop any running comfortable-swipe if it exists
|
||||||
@ -10,11 +14,19 @@ if [ -x "$(command -v $PROGRAM)" ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
#copy config file
|
#copy config file
|
||||||
mkdir -p ~/.config
|
abort () {
|
||||||
DCONF_PATH=$DIR/src/defaults.conf
|
exec echo "Installation aborted"
|
||||||
CONF_PATH=${XDG_CONFIG_HOME:-$HOME/.config}/comfortable-swipe.conf
|
}
|
||||||
|
mkdir -p $(dirname $CONF_PATH) || abort
|
||||||
if [ ! -f $CONF_PATH ]; then
|
if [ ! -f $CONF_PATH ]; then
|
||||||
cat $DCONF_PATH > $CONF_PATH
|
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
|
else
|
||||||
# config file found, ask user if overwrite
|
# config file found, ask user if overwrite
|
||||||
echo "Old conf file found in $CONF_PATH"
|
echo "Old conf file found in $CONF_PATH"
|
||||||
@ -24,9 +36,9 @@ else
|
|||||||
read -r -p "Conf file will be overwritten. Are you sure? [Y/n] " response
|
read -r -p "Conf file will be overwritten. Are you sure? [Y/n] " response
|
||||||
response=${response,,}
|
response=${response,,}
|
||||||
if [[ "$response" =~ ^(yes|y)$ ]]; then
|
if [[ "$response" =~ ^(yes|y)$ ]]; then
|
||||||
cat $DCONF_PATH > $CONF_PATH
|
cat $DCONF_PATH > $CONF_PATH || abort
|
||||||
else
|
else
|
||||||
exec echo "Installation aborted."
|
abort
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
@ -34,8 +46,11 @@ echo "Installing..."
|
|||||||
# mkdir -p ~/.local/bin
|
# mkdir -p ~/.local/bin
|
||||||
g++ -std=c++11 -O2 $DIR/src/comfortable-swipe.cpp -lxdo -o $PROGRAM || exec echo "Installation aborted"
|
g++ -std=c++11 -O2 $DIR/src/comfortable-swipe.cpp -lxdo -o $PROGRAM || exec echo "Installation aborted"
|
||||||
|
|
||||||
# toggle autostart twice to refresh any changes
|
GROUP=$(ls -l /dev/input/event* | awk '{print $4}' | head --line=1) || abort
|
||||||
$PROGRAM autostart > /dev/null || exec echo "Installation aborted"
|
|
||||||
$PROGRAM autostart > /dev/null || exec echo "Installation aborted"
|
|
||||||
|
|
||||||
echo "Successfully installed. You may now run 'comfortable-swipe start'."
|
# 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"
|
||||||
|
|||||||
@ -32,6 +32,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#define cstr const string&
|
#define cstr const string&
|
||||||
#define PROGRAM "/usr/local/bin/comfortable-swipe"
|
#define PROGRAM "/usr/local/bin/comfortable-swipe"
|
||||||
|
#define CONFIG "/usr/local/share/comfortable-swipe/comfortable-swipe.conf"
|
||||||
using namespace std;
|
using namespace std;
|
||||||
|
|
||||||
extern "C" {
|
extern "C" {
|
||||||
@ -185,17 +186,7 @@ struct swipe_gesture_impl : swipe_gesture {
|
|||||||
namespace service {
|
namespace service {
|
||||||
// get the full path of the .conf file
|
// get the full path of the .conf file
|
||||||
string conf_filename() {
|
string conf_filename() {
|
||||||
static string *filename = NULL;
|
return CONFIG;
|
||||||
if (filename == NULL) {
|
|
||||||
const char* xdg_config = getenv("XDG_CONFIG_HOME");
|
|
||||||
string config(
|
|
||||||
xdg_config == NULL
|
|
||||||
? string(getenv("HOME")) + "/.config"
|
|
||||||
: xdg_config
|
|
||||||
);
|
|
||||||
filename = new string(config + "/comfortable-swipe.conf");
|
|
||||||
}
|
|
||||||
return *filename;
|
|
||||||
}
|
}
|
||||||
// get the full path of the .desktop file associated
|
// get the full path of the .desktop file associated
|
||||||
// with the autostart feature
|
// with the autostart feature
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user