summaryrefslogtreecommitdiff
path: root/src/capslock
diff options
context:
space:
mode:
Diffstat (limited to 'src/capslock')
-rwxr-xr-xsrc/capslock/caps2esc7
m---------src/capslock/caps2esc-tools0
-rwxr-xr-xsrc/capslock/caps2escd5
m---------src/capslock/interception-tools0
-rwxr-xr-xsrc/capslock/setup.sh16
-rw-r--r--src/capslock/udevmon.yaml6
6 files changed, 34 insertions, 0 deletions
diff --git a/src/capslock/caps2esc b/src/capslock/caps2esc
new file mode 100755
index 0000000..ba0ed6f
--- /dev/null
+++ b/src/capslock/caps2esc
@@ -0,0 +1,7 @@
+#!/sbin/openrc-run
+
+name="caps2esc"
+command="/usr/sbin/caps2escd"
+command_background=true
+pidfile="/run/caps2esc.pid"
+
diff --git a/src/capslock/caps2esc-tools b/src/capslock/caps2esc-tools
new file mode 160000
+Subproject 6ad00311380254ce6c879f08456238c52b5f44c
diff --git a/src/capslock/caps2escd b/src/capslock/caps2escd
new file mode 100755
index 0000000..99539a4
--- /dev/null
+++ b/src/capslock/caps2escd
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+# run udevmon with default settings
+udevmon -c /etc/default/udevmon.yaml
+
diff --git a/src/capslock/interception-tools b/src/capslock/interception-tools
new file mode 160000
+Subproject d1ac6116d4c28743f2931f0d94609c52de0149a
diff --git a/src/capslock/setup.sh b/src/capslock/setup.sh
new file mode 100755
index 0000000..6d1edaa
--- /dev/null
+++ b/src/capslock/setup.sh
@@ -0,0 +1,16 @@
+#!/bin/bash
+
+set -e
+
+sudo ln -fs ${PWD}/udevmon.yaml /etc/default/udevmon.yaml
+sudo ln -fs ${PWD}/caps2esc /etc/init.d/caps2esc
+sudo ln -fs ${PWD}/caps2escd /usr/sbin/caps2escd
+
+cd interception-tools
+cmake -B build -DCMAKE_BUILD_TYPE=Release -DCMAKE_POLICY_VERSION_MINIMUM=3.5 .
+cmake --build build
+sudo cmake --install build
+cd ../caps2esc-tools
+cmake -B build -DCMAKE_BUILD_TYPE=Release -DCMAKE_POLICY_VERSION_MINIMUM=3.5 .
+cmake --build build
+sudo cmake --install build
diff --git a/src/capslock/udevmon.yaml b/src/capslock/udevmon.yaml
new file mode 100644
index 0000000..fd29ef6
--- /dev/null
+++ b/src/capslock/udevmon.yaml
@@ -0,0 +1,6 @@
+- JOB:
+ - intercept -g $DEVNODE | caps2esc -m 1 | uinput -d $DEVNODE
+ DEVICE:
+ #NAME: ".*((k|K)(eyboard|EYBOARD)|TADA68).*"
+ EVENTS:
+ EV_KEY: [KEY_CAPSLOCK, KEY_ESC]