about summary refs log tree commit diff
path: root/nixpkgs/pkgs/tools/inputmethods
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2021-04-28 14:39:00 +0000
committerAlyssa Ross <hi@alyssa.is>2021-06-10 08:52:36 +0000
commit693e64ef7421374338ddb1dc12b9573feec75972 (patch)
tree2526ac075d248699c35d63e04499890ee4381f5f /nixpkgs/pkgs/tools/inputmethods
parent7014df2256694d97093d6f2bb1db340d346dea88 (diff)
parent8e4fe32876ca15e3d5eb3ecd3ca0b224417f5f17 (diff)
downloadnixlib-693e64ef7421374338ddb1dc12b9573feec75972.tar
nixlib-693e64ef7421374338ddb1dc12b9573feec75972.tar.gz
nixlib-693e64ef7421374338ddb1dc12b9573feec75972.tar.bz2
nixlib-693e64ef7421374338ddb1dc12b9573feec75972.tar.lz
nixlib-693e64ef7421374338ddb1dc12b9573feec75972.tar.xz
nixlib-693e64ef7421374338ddb1dc12b9573feec75972.tar.zst
nixlib-693e64ef7421374338ddb1dc12b9573feec75972.zip
Merge commit '8e4fe32876ca15e3d5eb3ecd3ca0b224417f5f17'
Diffstat (limited to 'nixpkgs/pkgs/tools/inputmethods')
-rw-r--r--nixpkgs/pkgs/tools/inputmethods/fcitx5/fcitx5-lua.nix4
-rw-r--r--nixpkgs/pkgs/tools/inputmethods/fcitx5/fcitx5-m17n.nix46
-rw-r--r--nixpkgs/pkgs/tools/inputmethods/fcitx5/fcitx5-mozc.nix4
-rw-r--r--nixpkgs/pkgs/tools/inputmethods/fcitx5/fcitx5-qt.nix4
-rw-r--r--nixpkgs/pkgs/tools/inputmethods/kime/default.nix113
-rw-r--r--nixpkgs/pkgs/tools/inputmethods/remote-touchpad/default.nix33
6 files changed, 198 insertions, 6 deletions
diff --git a/nixpkgs/pkgs/tools/inputmethods/fcitx5/fcitx5-lua.nix b/nixpkgs/pkgs/tools/inputmethods/fcitx5/fcitx5-lua.nix
index 560393b31939..f4df324fa058 100644
--- a/nixpkgs/pkgs/tools/inputmethods/fcitx5/fcitx5-lua.nix
+++ b/nixpkgs/pkgs/tools/inputmethods/fcitx5/fcitx5-lua.nix
@@ -10,13 +10,13 @@
 
 stdenv.mkDerivation rec {
   pname = "fcitx5-lua";
-  version = "5.0.3";
+  version = "5.0.4";
 
   src = fetchFromGitHub {
     owner = "fcitx";
     repo = "fcitx5-lua";
     rev = version;
-    sha256 = "sha256-46s3F3NHGuef0wPhYiPocms0jv5Vo+cVRd5FzlfjMZY=";
+    sha256 = "sha256-1gKfFq+x/tCOYqESO49Qddp5z6zXO7ULjTJgDEl8BqI=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/tools/inputmethods/fcitx5/fcitx5-m17n.nix b/nixpkgs/pkgs/tools/inputmethods/fcitx5/fcitx5-m17n.nix
new file mode 100644
index 000000000000..9e367d70799a
--- /dev/null
+++ b/nixpkgs/pkgs/tools/inputmethods/fcitx5/fcitx5-m17n.nix
@@ -0,0 +1,46 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmake
+, extra-cmake-modules
+, pkg-config
+, fcitx5
+, m17n_lib
+, m17n_db
+, gettext
+, fmt
+}:
+
+stdenv.mkDerivation rec {
+  pname = "fcitx5-m17n";
+  version = "5.0.4";
+
+  src = fetchFromGitHub {
+    owner = "fcitx";
+    repo = pname;
+    rev = version;
+    sha256 = "sha256-yI6Svr1KEdHqAX3qd7t7GvD0EcWg0A2vZpuJw1U9oKQ=";
+  };
+
+  nativeBuildInputs = [
+    cmake
+    extra-cmake-modules
+    pkg-config
+    gettext
+  ];
+
+  buildInputs = [
+    fcitx5
+    m17n_db
+    m17n_lib
+    fmt
+  ];
+
+  meta = with lib; {
+    description = "m17n support for Fcitx5";
+    homepage = "https://github.com/fcitx/fcitx5-m17n";
+    license = licenses.lgpl21Plus;
+    maintainers = with maintainers; [ Technical27 ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/inputmethods/fcitx5/fcitx5-mozc.nix b/nixpkgs/pkgs/tools/inputmethods/fcitx5/fcitx5-mozc.nix
index d077b0a25c59..57bb0220b312 100644
--- a/nixpkgs/pkgs/tools/inputmethods/fcitx5/fcitx5-mozc.nix
+++ b/nixpkgs/pkgs/tools/inputmethods/fcitx5/fcitx5-mozc.nix
@@ -1,5 +1,5 @@
 { lib, clangStdenv, fetchFromGitHub, fetchurl, fetchpatch, fetchgit
-, python3Packages, mesa, ninja, pkg-config, protobuf, zinnia, qt5, fcitx5
+, python3Packages, ninja, pkg-config, protobuf, zinnia, qt5, fcitx5
 , jsoncpp, gtest, which, gtk2, unzip, abseil-cpp, breakpad }:
 let
   inherit (python3Packages) python gyp six;
@@ -31,7 +31,7 @@ in clangStdenv.mkDerivation rec {
     sha256 = "R+w0slVFpqtt7PIr1pyupJjRoQsABVZiMdZ9fKGKAqw=";
   };
 
-  nativeBuildInputs = [ gyp ninja mesa python pkg-config qt5.wrapQtAppsHook six which unzip ];
+  nativeBuildInputs = [ gyp ninja python pkg-config qt5.wrapQtAppsHook six which unzip ];
 
   buildInputs = [ protobuf zinnia qt5.qtbase fcitx5 abseil-cpp jsoncpp gtest gtk2 ];
 
diff --git a/nixpkgs/pkgs/tools/inputmethods/fcitx5/fcitx5-qt.nix b/nixpkgs/pkgs/tools/inputmethods/fcitx5/fcitx5-qt.nix
index bfb06a98e8fd..b24dac6886d9 100644
--- a/nixpkgs/pkgs/tools/inputmethods/fcitx5/fcitx5-qt.nix
+++ b/nixpkgs/pkgs/tools/inputmethods/fcitx5/fcitx5-qt.nix
@@ -12,13 +12,13 @@
 
 mkDerivation rec {
   pname = "fcitx5-qt";
-  version = "5.0.2";
+  version = "5.0.4";
 
   src = fetchFromGitHub {
     owner = "fcitx";
     repo = "fcitx5-qt";
     rev = version;
-    sha256 = "sha256-QylvjhjiIujYGKFtL4bKVXpobkN5t6Q2MGf16dsL24A=";
+    sha256 = "sha256-PZbnxt30Tv7i+Q6G9UpGgWDs65rn0MZVe1ybhz4vN9I=";
   };
 
   preConfigure = ''
diff --git a/nixpkgs/pkgs/tools/inputmethods/kime/default.nix b/nixpkgs/pkgs/tools/inputmethods/kime/default.nix
new file mode 100644
index 000000000000..35ed99b5a426
--- /dev/null
+++ b/nixpkgs/pkgs/tools/inputmethods/kime/default.nix
@@ -0,0 +1,113 @@
+{ lib, stdenv, rustPlatform, rustc, cargo, fetchFromGitHub, pkg-config, cmake, extra-cmake-modules, llvmPackages
+, withWayland ? true
+, withIndicator ? true, dbus, libdbusmenu
+, withXim ? true, xorg, cairo
+, withGtk2 ? true, gtk2
+, withGtk3 ? true, gtk3
+, withQt5 ? true, qt5
+}:
+
+let
+  cmake_args = lib.optionals withGtk2 ["-DENABLE_GTK2=ON"]
+  ++ lib.optionals withGtk3 ["-DENABLE_GTK3=ON"]
+  ++ lib.optionals withQt5 ["-DENABLE_QT5=ON"];
+
+  optFlag = w: (if w then "1" else "0");
+in
+stdenv.mkDerivation rec {
+  pname = "kime";
+  version = "2.5.2";
+
+  src = fetchFromGitHub {
+    owner = "Riey";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "10zd4yrqxzxf4nj3b5bsblcmlbqssxqq9pac0misa1g61jdbszj8";
+  };
+
+  cargoDeps = rustPlatform.fetchCargoTarball {
+    inherit src;
+    sha256 = "1bimi7020m7v287bh7via7zm9m7y13d13kqpd772xmpdbwrj8nrl";
+  };
+
+  # Replace autostart path
+  postPatch = ''
+    substituteInPlace res/kime.desktop --replace "/usr/bin/kime" "$out/bin/kime"
+  '';
+
+  dontUseCmakeConfigure = true;
+  dontWrapQtApps = true;
+  buildPhase = ''
+    runHook preBuild
+    export KIME_BUILD_CHECK=1
+    export KIME_BUILD_INDICATOR=${optFlag withIndicator}
+    export KIME_BUILD_XIM=${optFlag withXim}
+    export KIME_BUILD_WAYLAND=${optFlag withWayland}
+    export KIME_BUILD_KIME=1
+    export KIME_CARGO_ARGS="-j$NIX_BUILD_CORES --frozen"
+    export KIME_MAKE_ARGS="-j$NIX_BUILD_CORES"
+    export KIME_CMAKE_ARGS="${lib.concatStringsSep " " cmake_args}"
+    bash scripts/build.sh -r
+    runHook postBuild
+  '';
+
+  doCheck = true;
+  checkPhase = ''
+    runHook preCheck
+    cargo test --release --frozen
+    runHook postCheck
+  '';
+
+  installPhase = ''
+    runHook preInstall
+    export KIME_BIN_DIR=bin
+    export KIME_INSTALL_HEADER=1
+    export KIME_INSTALL_DOC=1
+    export KIME_INCLUDE_DIR=include
+    export KIME_DOC_DIR=share/doc/kime
+    export KIME_ICON_DIR=share/icons
+    export KIME_LIB_DIR=lib
+    export KIME_QT5_DIR=lib/qt-${qt5.qtbase.version}
+    bash scripts/install.sh "$out"
+    runHook postInstall
+  '';
+
+  doInstallCheck = true;
+  installCheckPhase = ''
+    runHook preInstallCheck
+    # Don't pipe output to head directly it will cause broken pipe error https://github.com/rust-lang/rust/issues/46016
+    kimeVersion=$(echo "$($out/bin/kime --version)" | head -n1)
+    echo "'kime --version | head -n1' returns: $kimeVersion"
+    [[ "$kimeVersion" == "kime ${version}" ]]
+    runHook postInstallCheck
+  '';
+
+  buildInputs = lib.optionals withIndicator [ dbus libdbusmenu ]
+  ++ lib.optionals withXim [ xorg.libxcb cairo ]
+  ++ lib.optionals withGtk2 [ gtk2 ]
+  ++ lib.optionals withGtk3 [ gtk3 ]
+  ++ lib.optionals withQt5 [ qt5.qtbase ];
+
+  nativeBuildInputs = [
+    pkg-config
+    llvmPackages.clang
+    llvmPackages.libclang
+    llvmPackages.bintools
+    cmake
+    extra-cmake-modules
+    rustPlatform.cargoSetupHook
+    rustc
+    cargo
+  ];
+
+  RUST_BACKTRACE = 1;
+  LIBCLANG_PATH = "${llvmPackages.libclang}/lib";
+
+  meta = with lib; {
+    homepage = "https://github.com/Riey/kime";
+    description = "Korean IME";
+    license = licenses.gpl3Plus;
+    maintainers = [ maintainers.riey ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/inputmethods/remote-touchpad/default.nix b/nixpkgs/pkgs/tools/inputmethods/remote-touchpad/default.nix
new file mode 100644
index 000000000000..0bd2b09aafc1
--- /dev/null
+++ b/nixpkgs/pkgs/tools/inputmethods/remote-touchpad/default.nix
@@ -0,0 +1,33 @@
+{ buildGoModule
+, fetchFromGitHub
+, lib
+, libX11
+, libXi
+, libXt
+, libXtst
+}:
+
+buildGoModule rec {
+  pname = "remote-touchpad";
+  version = "1.0.1";
+
+  src = fetchFromGitHub {
+    owner = "unrud";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0zmbn4s3yhcgmijc96vja7zj2sh6q0nkybhqy0fwz6sqzk8hq02x";
+  };
+
+  buildInputs = [ libX11 libXi libXt libXtst ];
+  buildFlags = [ "-tags" "portal,x11" ];
+
+  vendorSha256 = "0q1qk5g7kqpcci5fgamvxa8989jglv69kwg5rvkphbnx1bzlivrl";
+
+  meta = with lib; {
+    description = "Control mouse and keyboard from the webbrowser of a smartphone.";
+    homepage = "https://github.com/unrud/remote-touchpad";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ schnusch ];
+    platforms = platforms.linux;
+  };
+}