diff --git a/pkgs/applications/office/espanso/default.nix b/pkgs/applications/office/espanso/default.nix new file mode 100644 index 00000000000..8fb9b3c7878 --- /dev/null +++ b/pkgs/applications/office/espanso/default.nix @@ -0,0 +1,56 @@ +{ stdenv +, fetchFromGitHub +, rustPlatform +, pkgconfig +, extra-cmake-modules +, libX11 +, libXi +, libXtst +, libnotify +, openssl +, xclip +, xdotool +}: + +rustPlatform.buildRustPackage rec { + pname = "espanso"; + version = "0.6.3"; + + src = fetchFromGitHub { + owner = "federico-terzi"; + repo = pname; + rev = "v${version}"; + sha256 = "1x5p7hniapggqd18rx26mjvdf33z7rm7zz5vsqm2siv3mcl19033"; + }; + + cargoSha256 = "0liwwdncymjql5dw7rwhhimcr7qdbyvfgmsd0bawvi0ym7m1v408"; + + nativeBuildInputs = [ + extra-cmake-modules + pkgconfig + ]; + + buildInputs = [ + libX11 + libXtst + libXi + libnotify + openssl + xdotool + ]; + + # Some tests require networking + doCheck = false; + + meta = with stdenv.lib; { + description = "Cross-platform Text Expander written in Rust"; + homepage = "https://espanso.org"; + license = licenses.gpl3Plus; + maintainers = with maintainers; [ kimat ]; + platforms = platforms.all; + + longDescription = '' + Espanso detects when you type a keyword and replaces it while you're typing. + ''; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 010f5c489e1..1619bc69090 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1792,6 +1792,8 @@ in eschalot = callPackage ../tools/security/eschalot { }; + espanso = callPackage ../applications/office/espanso { }; + esphome = callPackage ../tools/misc/esphome { }; esptool = callPackage ../tools/misc/esptool { };