diff options
Diffstat (limited to 'pkgs/tools/inputmethods/ibus-engines/ibus-rime/default.nix')
-rw-r--r-- | pkgs/tools/inputmethods/ibus-engines/ibus-rime/default.nix | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/pkgs/tools/inputmethods/ibus-engines/ibus-rime/default.nix b/pkgs/tools/inputmethods/ibus-engines/ibus-rime/default.nix index d415b6b5a45..774978929b4 100644 --- a/pkgs/tools/inputmethods/ibus-engines/ibus-rime/default.nix +++ b/pkgs/tools/inputmethods/ibus-engines/ibus-rime/default.nix @@ -9,6 +9,8 @@ , librime , pkg-config , rime-data +, symlinkJoin +, rimeDataPkgs ? [ rime-data ] }: stdenv.mkDerivation rec { @@ -22,15 +24,18 @@ stdenv.mkDerivation rec { sha256 = "0gdxg6ia0i31jn3cvh1nrsjga1j31hf8a2zfgg8rzn25chrfr319"; }; - buildInputs = [ gdk-pixbuf glib ibus libnotify librime rime-data ]; + buildInputs = [ gdk-pixbuf glib ibus libnotify librime ]; nativeBuildInputs = [ cmake pkg-config ]; - cmakeFlags = [ "-DRIME_DATA_DIR=${rime-data}/share/rime-data" ]; + cmakeFlags = [ "-DRIME_DATA_DIR=${placeholder "out"}/share/rime-data" ]; - prePatch = '' - substituteInPlace CMakeLists.txt \ - --replace 'DESTINATION "''${RIME_DATA_DIR}"' \ - 'DESTINATION "''${CMAKE_INSTALL_DATADIR}/rime-data"' + rimeDataDrv = symlinkJoin { + name = "ibus-rime-data"; + paths = rimeDataPkgs; + }; + + postInstall = '' + cp -r "${rimeDataDrv}/share/rime-data/." $out/share/rime-data/ ''; meta = with lib; { |