diff options
Diffstat (limited to 'nixpkgs/pkgs/tools/inputmethods/interception-tools')
3 files changed, 83 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/tools/inputmethods/interception-tools/caps2esc.nix b/nixpkgs/pkgs/tools/inputmethods/interception-tools/caps2esc.nix new file mode 100644 index 000000000000..933a731828fb --- /dev/null +++ b/nixpkgs/pkgs/tools/inputmethods/interception-tools/caps2esc.nix @@ -0,0 +1,24 @@ +{ lib, stdenv, fetchFromGitLab, cmake }: + +stdenv.mkDerivation rec { + pname = "caps2esc"; + version = "0.3.2"; + + src = fetchFromGitLab { + group = "interception"; + owner = "linux/plugins"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-gPFElAixiDTTwcl2XKM7MbTkpRrg8ToO5K7H8kz3DHk="; + }; + + nativeBuildInputs = [ cmake ]; + + meta = with lib; { + homepage = "https://gitlab.com/interception/linux/plugins/caps2esc"; + description = "Transforming the most useless key ever into the most useful one"; + license = licenses.mit; + maintainers = [ maintainers.vyp ]; + platforms = platforms.linux; + }; +} diff --git a/nixpkgs/pkgs/tools/inputmethods/interception-tools/default.nix b/nixpkgs/pkgs/tools/inputmethods/interception-tools/default.nix new file mode 100644 index 000000000000..843584a7d443 --- /dev/null +++ b/nixpkgs/pkgs/tools/inputmethods/interception-tools/default.nix @@ -0,0 +1,24 @@ +{ lib, stdenv, fetchFromGitLab, pkg-config, cmake, yaml-cpp, + libevdev, udev, boost }: + +stdenv.mkDerivation rec { + pname = "interception-tools"; + version = "0.6.8"; + src = fetchFromGitLab { + owner = "interception/linux"; + repo = "tools"; + rev = "v${version}"; + sha256 = "sha256-jhdgfCWbkF+jD/iXsJ+fYKOtPymxcC46Q4w0aqpvcek="; + }; + + nativeBuildInputs = [ cmake pkg-config ]; + buildInputs = [ libevdev udev yaml-cpp boost ]; + + meta = { + description = "A minimal composable infrastructure on top of libudev and libevdev"; + homepage = "https://gitlab.com/interception/linux/tools"; + license = lib.licenses.gpl3Only; + maintainers = [ lib.maintainers.vyp ]; + platforms = lib.platforms.linux; + }; +} diff --git a/nixpkgs/pkgs/tools/inputmethods/interception-tools/dual-function-keys.nix b/nixpkgs/pkgs/tools/inputmethods/interception-tools/dual-function-keys.nix new file mode 100644 index 000000000000..022e7dfa0389 --- /dev/null +++ b/nixpkgs/pkgs/tools/inputmethods/interception-tools/dual-function-keys.nix @@ -0,0 +1,35 @@ +{ stdenv, lib, fetchFromGitLab, pkg-config, yaml-cpp, libevdev }: + +stdenv.mkDerivation rec { + pname = "dual-function-keys"; + version = "1.5.0"; + + src = fetchFromGitLab { + group = "interception"; + owner = "linux/plugins"; + repo = pname; + rev = version; + hash = "sha256-m/oEczUNKqj0gs/zMOIBxoQaffNg+YyPINMXArkATJ4="; + }; + + nativeBuildInputs = [ pkg-config ]; + + buildInputs = [ libevdev yaml-cpp ]; + + prePatch = '' + substituteInPlace config.mk --replace \ + '/usr/include/libevdev-1.0' \ + "$(pkg-config --cflags libevdev | cut -c 3-)" + ''; + + installFlags = [ "DESTDIR=$(out)" "PREFIX=" ]; + + meta = with lib; { + homepage = "https://gitlab.com/interception/linux/plugins/dual-function-keys"; + description = "Tap for one key, hold for another"; + license = licenses.mit; + maintainers = with maintainers; [ svend ]; + platforms = platforms.linux; + mainProgram = "dual-function-keys"; + }; +} |