From a7e1caaa47e9c366e126a793a86f867c9e75a5dd Mon Sep 17 00:00:00 2001 From: Harkamal Randhawa Date: Mon, 24 Nov 2025 04:53:22 +0000 Subject: [PATCH] Added flake for myself --- flake.nix | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 flake.nix diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000..7a735f1 --- /dev/null +++ b/flake.nix @@ -0,0 +1,44 @@ +{ + description = "Personal interception-vimproved fork"; + + inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.05"; + + outputs = { self, nixpkgs }: { + overlays.default = final: prev: { + interception-vimproved-personal = final.stdenv.mkDerivation { + pname = "interception-vimproved-personal"; + version = "git"; + + # this flake's source + src = self; + + nativeBuildInputs = [ final.gnumake final.pkg-config ]; + buildInputs = [ final.libevdev final.udev ]; + + buildPhase = "make"; + + installPhase = '' + mkdir -p $out/bin + cp interception-vimproved $out/bin/ + ''; + }; + }; + + nixosModules.interception-vimproved-personal = { config, pkgs, ... }: { + hardware.uinput.enable = true; + + services.interception-tools = { + enable = true; + plugins = [ ]; + + udevmonConfig = '' + - JOB: "${pkgs.interception-tools}/bin/intercept -g $DEVNODE \ + | ${pkgs.interception-vimproved-personal}/bin/interception-vimproved \ + | ${pkgs.interception-tools}/bin/uinput -d $DEVNODE" + DEVICE: + NAME: ".*(Keyboard|keyboard|kbd).*" + ''; + }; + }; + }; +} \ No newline at end of file