mirror of
https://github.com/ilyakooo0/nixpkgs.git
synced 2024-12-26 04:43:09 +03:00
Merge pull request #11254 from ericsagnes/standardize-im
Improve and standardize input methods
This commit is contained in:
commit
7fcecec58b
@ -44,6 +44,7 @@ nixos.path = ./nixpkgs-unstable-2015-12-06/nixos;
|
||||
<listitem><para><literal>services/networking/pdnsd.nix</literal></para></listitem>
|
||||
<listitem><para><literal>services/web-apps/pump.io.nix</literal></para></listitem>
|
||||
<listitem><para><literal>services/security/haka.nix</literal></para></listitem>
|
||||
<listitem><para><literal>i18n/inputMethod/default.nix</literal></para></listitem>
|
||||
</itemizedlist>
|
||||
</para>
|
||||
|
||||
@ -197,6 +198,32 @@ fileSystems."/example" = {
|
||||
<literal>services.hardware.opengl.extraPackages{,32}</literal> instead. You can
|
||||
also specify VDPAU drivers there.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
<literal>programs.ibus</literal> moved to <literal>i18n.inputMethod.ibus</literal>.
|
||||
The option <literal>programs.ibus.plugins</literal> changed to <literal>i18n.inputMethod.ibus.engines</literal>
|
||||
and the option to enable ibus changed from <literal>programs.ibus.enable</literal> to
|
||||
<literal>i18n.inputMethod.enabled</literal>.
|
||||
<literal>i18n.inputMethod.enabled</literal> should be set to the used input method name,
|
||||
<literal>"ibus"</literal> for ibus.
|
||||
An example of the new style:
|
||||
|
||||
<programlisting>
|
||||
i18n.inputMethod.enabled = "ibus";
|
||||
i18n.inputMethod.ibus.engines = with pkgs.ibus-engines; [ anthy mozc ];
|
||||
</programlisting>
|
||||
|
||||
That is equivalent to the old version:
|
||||
|
||||
<programlisting>
|
||||
programs.ibus.enable = true;
|
||||
programs.ibus.plugins = with pkgs; [ ibus-anthy mozc ];
|
||||
</programlisting>
|
||||
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
</itemizedlist>
|
||||
|
||||
|
||||
@ -215,6 +242,12 @@ fileSystems."/example" = {
|
||||
NixOS.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Input method support was improved. New NixOS modules (fcitx, nabi and uim),
|
||||
fcitx engines (chewing, hangul, m17n, mozc and table-other) and ibus engines (hangul and m17n)
|
||||
have been added.</para>
|
||||
</listitem>
|
||||
|
||||
</itemizedlist></para>
|
||||
|
||||
</section>
|
||||
|
29
nixos/modules/i18n/inputMethod/default.nix
Normal file
29
nixos/modules/i18n/inputMethod/default.nix
Normal file
@ -0,0 +1,29 @@
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
{
|
||||
options = {
|
||||
i18n.inputMethod = {
|
||||
enabled = mkOption {
|
||||
type = types.nullOr (types.enum [ "ibus" "fcitx" "nabi" "uim" ]);
|
||||
default = null;
|
||||
example = "fcitx";
|
||||
description = ''
|
||||
Select the enabled input method. Input methods is a software to input symbols that are not available on standard input devices.
|
||||
|
||||
Input methods are specially used to input Chinese, Japanese and Korean characters.
|
||||
|
||||
Currently the following input methods are available in NixOS:
|
||||
|
||||
<itemizedlist>
|
||||
<listitem><para>ibus: The intelligent input bus, extra input engines can be added using <literal>i18n.inputMethod.ibus.engines</literal>.</para></listitem>
|
||||
<listitem><para>fcitx: A customizable lightweight input method, extra input engines can be added using <literal>i18n.inputMethod.fcitx.engines</literal>.</para></listitem>
|
||||
<listitem><para>nabi: A Korean input method based on XIM. Nabi doesn't support Qt 5.</para></listitem>
|
||||
<listitem><para>uim: The universal input method, is a library with a XIM bridge. uim mainly support Chinese, Japanese and Korean.</para></listitem>
|
||||
</itemizedlist>
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
42
nixos/modules/i18n/inputMethod/fcitx.nix
Normal file
42
nixos/modules/i18n/inputMethod/fcitx.nix
Normal file
@ -0,0 +1,42 @@
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.i18n.inputMethod.fcitx;
|
||||
fcitxPackage = pkgs.fcitx-with-plugins.override { plugins = cfg.engines; };
|
||||
fcitxEngine = types.package // {
|
||||
name = "fcitx-engine";
|
||||
check = x: (lib.types.package.check x) && (attrByPath ["meta" "isFcitxEngine"] false x);
|
||||
};
|
||||
in
|
||||
{
|
||||
options = {
|
||||
|
||||
i18n.inputMethod.fcitx = {
|
||||
engines = mkOption {
|
||||
type = with types; listOf fcitxEngine;
|
||||
default = [];
|
||||
example = literalExample "with pkgs.fcitx-engines; [ mozc hangul ]";
|
||||
description = ''
|
||||
Enabled Fcitx engines.
|
||||
Available engines can be found by running `nix-env "<nixpkgs>" . -qaP -A fcitx-engines`.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
config = mkIf (config.i18n.inputMethod.enabled == "fcitx") {
|
||||
environment.systemPackages = [ fcitxPackage ];
|
||||
gtkPlugins = [ fcitxPackage ];
|
||||
qtPlugins = [ fcitxPackage ];
|
||||
|
||||
environment.variables = {
|
||||
GTK_IM_MODULE = "fcitx";
|
||||
QT_IM_MODULE = "fcitx";
|
||||
XMODIFIERS = "@im=fcitx";
|
||||
};
|
||||
services.xserver.displayManager.sessionCommands = "${fcitxPackage}/bin/fcitx";
|
||||
};
|
||||
}
|
43
nixos/modules/i18n/inputMethod/ibus.nix
Normal file
43
nixos/modules/i18n/inputMethod/ibus.nix
Normal file
@ -0,0 +1,43 @@
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.i18n.inputMethod.ibus;
|
||||
ibusPackage = pkgs.ibus-with-plugins.override { plugins = cfg.engines; };
|
||||
ibusEngine = types.package // {
|
||||
name = "ibus-engine";
|
||||
check = x: (lib.types.package.check x) && (attrByPath ["meta" "isIbusEngine"] false x);
|
||||
};
|
||||
in
|
||||
{
|
||||
options = {
|
||||
i18n.inputMethod.ibus = {
|
||||
engines = mkOption {
|
||||
type = with types; listOf ibusEngine;
|
||||
default = [];
|
||||
example = literalExample "with pkgs.ibus-engines; [ mozc hangul ]";
|
||||
description = ''
|
||||
Enabled IBus engines.
|
||||
Available engines can be found by running `nix-env "<nixpkgs>" . -qaP -A ibus-engines`.
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf (config.i18n.inputMethod.enabled == "ibus") {
|
||||
# Without dconf enabled it is impossible to use IBus
|
||||
environment.systemPackages = [ ibusPackage pkgs.gnome3.dconf ];
|
||||
|
||||
gtkPlugins = [ pkgs.ibus ];
|
||||
qtPlugins = [ pkgs.ibus-qt ];
|
||||
|
||||
environment.variables = {
|
||||
GTK_IM_MODULE = "ibus";
|
||||
QT_IM_MODULE = "ibus";
|
||||
XMODIFIERS = "@im=ibus";
|
||||
};
|
||||
|
||||
services.xserver.displayManager.sessionCommands = "${ibusPackage}/bin/ibus-daemon --daemonize --xim --cache=none";
|
||||
};
|
||||
}
|
17
nixos/modules/i18n/inputMethod/nabi.nix
Normal file
17
nixos/modules/i18n/inputMethod/nabi.nix
Normal file
@ -0,0 +1,17 @@
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
with lib;
|
||||
{
|
||||
config = mkIf (config.i18n.inputMethod.enabled == "nabi") {
|
||||
environment.systemPackages = [ pkgs.nabi ];
|
||||
qtPlugins = [ pkgs.nabi ];
|
||||
|
||||
environment.variables = {
|
||||
GTK_IM_MODULE = "nabi";
|
||||
QT_IM_MODULE = "nabi";
|
||||
XMODIFIERS = "@im=nabi";
|
||||
};
|
||||
|
||||
services.xserver.displayManager.sessionCommands = "${pkgs.nabi}/bin/nabi &";
|
||||
};
|
||||
}
|
39
nixos/modules/i18n/inputMethod/uim.nix
Normal file
39
nixos/modules/i18n/inputMethod/uim.nix
Normal file
@ -0,0 +1,39 @@
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.i18n.inputMethod.uim;
|
||||
in
|
||||
{
|
||||
options = {
|
||||
|
||||
i18n.inputMethod.uim = {
|
||||
toolbar = mkOption {
|
||||
type = types.enum [ "gtk" "gtk3" "gtk-systray" "gtk3-systray" "qt4" ];
|
||||
default = "gtk";
|
||||
example = "gtk-systray";
|
||||
description = ''
|
||||
selected UIM toolbar.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
config = mkIf (config.i18n.inputMethod.enabled == "uim") {
|
||||
environment.systemPackages = [ pkgs.uim ];
|
||||
gtkPlugins = [ pkgs.uim ];
|
||||
qtPlugins = [ pkgs.uim ];
|
||||
|
||||
environment.variables = {
|
||||
GTK_IM_MODULE = "uim";
|
||||
QT_IM_MODULE = "uim";
|
||||
XMODIFIERS = "@im=uim";
|
||||
};
|
||||
services.xserver.displayManager.sessionCommands = ''
|
||||
${pkgs.uim}/bin/uim-xim &
|
||||
${pkgs.uim}/bin/uim-toolbar-${cfg.toolbar} &
|
||||
'';
|
||||
};
|
||||
}
|
@ -43,6 +43,11 @@
|
||||
./hardware/video/nvidia.nix
|
||||
./hardware/video/ati.nix
|
||||
./hardware/video/webcam/facetimehd.nix
|
||||
./i18n/inputMethod/default.nix
|
||||
./i18n/inputMethod/fcitx.nix
|
||||
./i18n/inputMethod/ibus.nix
|
||||
./i18n/inputMethod/nabi.nix
|
||||
./i18n/inputMethod/uim.nix
|
||||
./installer/tools/auto-upgrade.nix
|
||||
./installer/tools/nixos-checkout.nix
|
||||
./installer/tools/tools.nix
|
||||
@ -66,7 +71,6 @@
|
||||
./programs/environment.nix
|
||||
./programs/freetds.nix
|
||||
./programs/fish.nix
|
||||
./programs/ibus.nix
|
||||
./programs/kbdlight.nix
|
||||
./programs/light.nix
|
||||
./programs/man.nix
|
||||
|
@ -1,51 +0,0 @@
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.programs.ibus;
|
||||
in
|
||||
{
|
||||
options = {
|
||||
|
||||
programs.ibus = {
|
||||
enable = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
example = true;
|
||||
description = "Enable IBus input method";
|
||||
};
|
||||
plugins = mkOption {
|
||||
type = lib.types.listOf lib.types.path;
|
||||
default = [];
|
||||
description = ''
|
||||
IBus plugin packages
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
environment.systemPackages = [ pkgs.ibus pkgs.gnome3.dconf ];
|
||||
|
||||
gtkPlugins = [ pkgs.ibus ];
|
||||
qtPlugins = [ pkgs.ibus-qt ];
|
||||
|
||||
environment.variables =
|
||||
let
|
||||
env = pkgs.buildEnv {
|
||||
name = "ibus-env";
|
||||
paths = [ pkgs.ibus ] ++ cfg.plugins;
|
||||
};
|
||||
in {
|
||||
GTK_IM_MODULE = "ibus";
|
||||
QT_IM_MODULE = "ibus";
|
||||
XMODIFIERS = "@im=ibus";
|
||||
|
||||
IBUS_COMPONENT_PATH = "${env}/share/ibus/component";
|
||||
};
|
||||
|
||||
services.xserver.displayManager.sessionCommands = "${pkgs.ibus}/bin/ibus-daemon --daemonize --xim --cache=none";
|
||||
};
|
||||
}
|
@ -59,6 +59,9 @@ with lib;
|
||||
# Tarsnap
|
||||
(mkRenamedOptionModule [ "services" "tarsnap" "config" ] [ "services" "tarsnap" "archives" ])
|
||||
|
||||
# ibus
|
||||
(mkRenamedOptionModule [ "programs" "ibus" "plugins" ] [ "i18n" "inputMethod" "ibus" "engines" ])
|
||||
|
||||
# proxy
|
||||
(mkRenamedOptionModule [ "nix" "proxy" ] [ "networking" "proxy" "default" ])
|
||||
|
||||
|
@ -0,0 +1,27 @@
|
||||
{ stdenv, fetchurl, cmake, fcitx, anthy, gettext, pkgconfig }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "fcitx-anthy-${version}";
|
||||
version = "0.2.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.fcitx-im.org/fcitx-anthy/${name}.tar.xz";
|
||||
sha256 = "0ayrzfx95670k86y19bzl6i6w98haaln3x8dxpb39a5dwgz59pf8";
|
||||
};
|
||||
|
||||
buildInputs = [ cmake fcitx anthy gettext pkgconfig ];
|
||||
|
||||
preInstall = ''
|
||||
substituteInPlace src/cmake_install.cmake \
|
||||
--replace ${fcitx} $out
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
isFcitxEngine = true;
|
||||
description = "Fcitx Wrapper for anthy";
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ iyzsong ericsagnes ];
|
||||
};
|
||||
|
||||
}
|
@ -0,0 +1,31 @@
|
||||
{ stdenv, fetchurl, cmake, fcitx, gettext, libchewing, pkgconfig }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "fcitx-chewing-${version}";
|
||||
version = "0.2.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.fcitx-im.org/fcitx-chewing/${name}.tar.xz";
|
||||
sha256 = "0l548xdx2fvjya1ixp37pn382yak0m4kwfh9lgh7l3y2sblqw9zs";
|
||||
};
|
||||
|
||||
buildInputs = [ cmake fcitx gettext libchewing pkgconfig ];
|
||||
|
||||
preInstall = ''
|
||||
substituteInPlace src/cmake_install.cmake \
|
||||
--replace ${fcitx} $out
|
||||
substituteInPlace data/cmake_install.cmake \
|
||||
--replace ${fcitx} $out
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
isFcitxEngine = true;
|
||||
homepage = "https://github.com/fcitx/fcitx-chewing";
|
||||
downloadPage = "http://download.fcitx-im.org/fcitx-chewing/";
|
||||
description = "Fcitx engine for chewing";
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ ericsagnes ];
|
||||
};
|
||||
|
||||
}
|
@ -0,0 +1,30 @@
|
||||
{ stdenv, fetchurl, cmake, fcitx, libhangul, gettext, pkgconfig }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "fcitx-hangul-${version}";
|
||||
version = "0.3.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.fcitx-im.org/fcitx-hangul/${name}.tar.xz";
|
||||
sha256 = "1jq78nczliw6pnhfac8hspffybrry6syk17y0wwcq05j3r3nd2lp";
|
||||
};
|
||||
|
||||
buildInputs = [ cmake fcitx libhangul gettext pkgconfig ];
|
||||
|
||||
preInstall = ''
|
||||
substituteInPlace src/cmake_install.cmake \
|
||||
--replace ${fcitx} $out
|
||||
substituteInPlace data/cmake_install.cmake \
|
||||
--replace ${fcitx} $out
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
isFcitxEngine = true;
|
||||
homepage = "https://github.com/fcitx/fcitx-hangul";
|
||||
downloadPage = "http://download.fcitx-im.org/fcitx-hangul/";
|
||||
description = "Fcitx Wrapper for hangul";
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ ericsagnes ];
|
||||
};
|
||||
}
|
29
pkgs/tools/inputmethods/fcitx-engines/fcitx-m17n/default.nix
Normal file
29
pkgs/tools/inputmethods/fcitx-engines/fcitx-m17n/default.nix
Normal file
@ -0,0 +1,29 @@
|
||||
{ stdenv, fetchurl, cmake, fcitx, gettext, m17n_lib, m17n_db, pkgconfig }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "fcitx-m17n-${version}";
|
||||
version = "0.2.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.fcitx-im.org/fcitx-m17n/${name}.tar.xz";
|
||||
sha256 = "0ffyhsg7bc6525k94kfhnja1h6ajlfprq72d286dp54cksnakyc4";
|
||||
};
|
||||
|
||||
buildInputs = [ cmake fcitx gettext m17n_lib m17n_db pkgconfig ];
|
||||
|
||||
preInstall = ''
|
||||
substituteInPlace im/cmake_install.cmake \
|
||||
--replace ${fcitx} $out
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
isFcitxEngine = true;
|
||||
homepage = "https://github.com/fcitx/fcitx-m17n";
|
||||
downloadPage = "http://download.fcitx-im.org/fcitx-table-other/";
|
||||
description = "Fcitx wrapper for m17n";
|
||||
license = licenses.gpl3Plus;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ ericsagnes ];
|
||||
};
|
||||
|
||||
}
|
117
pkgs/tools/inputmethods/fcitx-engines/fcitx-mozc/default.nix
Normal file
117
pkgs/tools/inputmethods/fcitx-engines/fcitx-mozc/default.nix
Normal file
@ -0,0 +1,117 @@
|
||||
{ clangStdenv, fetchFromGitHub, fetchurl, fetchpatch, fetchsvn, gyp, which, ninja,
|
||||
python, pkgconfig, protobuf, gtk, zinnia, qt4, libxcb, tegaki-zinnia-japanese,
|
||||
fcitx, gettext }:
|
||||
let
|
||||
japanese_usage_dictionary = fetchsvn {
|
||||
url = "http://japanese-usage-dictionary.googlecode.com/svn/trunk";
|
||||
rev = "10";
|
||||
sha256 = "0pyrpz9c8nxccwpgyr36w314mi8h132cis8ijvlqmmhqxwsi30hm";
|
||||
};
|
||||
icons = fetchurl {
|
||||
url = "http://download.fcitx-im.org/fcitx-mozc/fcitx-mozc-icon.tar.gz";
|
||||
sha256 = "10bdjn481jsh32vll7r756l392anz44h6207vjqwby3rplk31np1";
|
||||
};
|
||||
in clangStdenv.mkDerivation rec {
|
||||
name = "fcitx-mozc-${version}";
|
||||
version = "2.17.2313.102";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "google";
|
||||
repo = "mozc";
|
||||
rev = "3306d3314499a54a4064b8b80bbc1bce3f6cfac4";
|
||||
sha256 = "0l7mjlnbm6i1ipni8pg9ym5bjg3rzkaxi9xwmsz2lddv348sqii2";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ gyp which ninja python pkgconfig ];
|
||||
buildInputs = [ protobuf gtk zinnia qt4 libxcb fcitx gettext ];
|
||||
|
||||
postUnpack = ''
|
||||
rmdir $sourceRoot/src/third_party/japanese_usage_dictionary/
|
||||
ln -s ${japanese_usage_dictionary} $sourceRoot/src/third_party/japanese_usage_dictionary
|
||||
tar -xzf ${icons} -C $sourceRoot
|
||||
'';
|
||||
|
||||
patch_version = "2.17.2313.102.1";
|
||||
patches = [
|
||||
(fetchpatch rec {
|
||||
name = "fcitx-mozc-${patch_version}.patch";
|
||||
url = "https://download.fcitx-im.org/fcitx-mozc/${name}";
|
||||
sha256 = "172c34jkppibvwr9qf9xwgh2hdrmmhyx7nsdj49krxbfdlsy3yy0";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace src/unix/fcitx/mozc.conf \
|
||||
--replace "/usr/share/fcitx/mozc/icon/mozc.png" "mozc"
|
||||
'';
|
||||
|
||||
configurePhase = ''
|
||||
export GYP_DEFINES="document_dir=$out/share/doc/mozc use_libzinnia=1 use_libprotobuf=1"
|
||||
python src/build_mozc.py gyp --gypdir=${gyp}/bin --server_dir=$out/lib/mozc \
|
||||
python src/unix/fcitx/fcitx.gyp gyp --gypdir=${gyp}/bin
|
||||
'';
|
||||
|
||||
preBuildPhase = ''
|
||||
head -n 29 src/server/mozc_server.cc > LICENSE
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
python src/build_mozc.py build -c Release \
|
||||
unix/fcitx/fcitx.gyp:fcitx-mozc \
|
||||
server/server.gyp:mozc_server \
|
||||
gui/gui.gyp:mozc_tool
|
||||
'';
|
||||
|
||||
checkPhase = ''
|
||||
python src/build_mozc.py runtests -c Release
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
install -d $out/share/licenses/fcitx-mozc/
|
||||
install -m 644 LICENSE src/data/installer/*.html $out/share/licenses/fcitx-mozc/
|
||||
|
||||
install -d $out/share/doc/mozc
|
||||
install -m 644 src/data/installer/*.html $out/share/doc/mozc/
|
||||
|
||||
install -D -m 755 src/out_linux/Release/mozc_server $out/lib/mozc/mozc_server
|
||||
install -m 755 src/out_linux/Release/mozc_tool $out/lib/mozc/mozc_tool
|
||||
|
||||
install -D -m 755 src/out_linux/Release/fcitx-mozc.so $out/lib/fcitx/fcitx-mozc.so
|
||||
install -D -m 644 src/unix/fcitx/fcitx-mozc.conf $out/share/fcitx/addon/fcitx-mozc.conf
|
||||
install -D -m 644 src/unix/fcitx/mozc.conf $out/share/fcitx/inputmethod/mozc.conf
|
||||
|
||||
install -d $out/share/doc/mozc
|
||||
|
||||
for mofile in src/out_linux/Release/gen/unix/fcitx/po/*.mo
|
||||
do
|
||||
filename=`basename $mofile`
|
||||
lang=$filename.mo
|
||||
install -D -m 644 "$mofile" "$out/share/locale/$lang/LC_MESSAGES/fcitx-mozc.mo"
|
||||
done
|
||||
|
||||
install -d $out/share/fcitx/imicon
|
||||
install -m 644 fcitx-mozc-icons/mozc.png $out/share/fcitx/imicon/mozc.png
|
||||
install -d $out/share/fcitx/mozc/icon
|
||||
install -m 644 fcitx-mozc-icons/mozc.png $out/share/fcitx/mozc/icon/mozc.png
|
||||
install -m 644 fcitx-mozc-icons/mozc-alpha_full.png $out/share/fcitx/mozc/icon/mozc-alpha_full.png
|
||||
install -m 644 fcitx-mozc-icons/mozc-alpha_half.png $out/share/fcitx/mozc/icon/mozc-alpha_half.png
|
||||
install -m 644 fcitx-mozc-icons/mozc-direct.png $out/share/fcitx/mozc/icon/mozc-direct.png
|
||||
install -m 644 fcitx-mozc-icons/mozc-hiragana.png $out/share/fcitx/mozc/icon/mozc-hiragana.png
|
||||
install -m 644 fcitx-mozc-icons/mozc-katakana_full.png $out/share/fcitx/mozc/icon/mozc-katakana_full.png
|
||||
install -m 644 fcitx-mozc-icons/mozc-katakana_half.png $out/share/fcitx/mozc/icon/mozc-katakana_half.png
|
||||
install -m 644 fcitx-mozc-icons/mozc-dictionary.png $out/share/fcitx/mozc/icon/mozc-dictionary.png
|
||||
install -m 644 fcitx-mozc-icons/mozc-properties.png $out/share/fcitx/mozc/icon/mozc-properties.png
|
||||
install -m 644 fcitx-mozc-icons/mozc-tool.png $out/share/fcitx/mozc/icon/mozc-tool.png
|
||||
'';
|
||||
|
||||
meta = with clangStdenv.lib; {
|
||||
isFcitxEngine = true;
|
||||
description = "Fcitx engine for Google japanese input method";
|
||||
homepage = http://code.google.com/p/mozc/;
|
||||
downloadPage = "http://download.fcitx-im.org/fcitx-mozc/";
|
||||
license = licenses.free;
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.ericsagnes ];
|
||||
};
|
||||
|
||||
}
|
@ -0,0 +1,29 @@
|
||||
{ stdenv, fetchurl, cmake, fcitx, gettext }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "fcitx-table-other-${version}";
|
||||
version = "0.2.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.fcitx-im.org/fcitx-table-other/${name}.tar.xz";
|
||||
sha256 = "12fqbsjrpx5pndx2jf7fksrlp01a4yxz62h2vpxrbkpk73ljly4v";
|
||||
};
|
||||
|
||||
buildInputs = [ cmake fcitx gettext ];
|
||||
|
||||
preInstall = ''
|
||||
substituteInPlace tables/cmake_install.cmake \
|
||||
--replace ${fcitx} $out
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
isFcitxEngine = true;
|
||||
homepage = "https://github.com/fcitx/fcitx-table-other";
|
||||
downloadPage = "http://download.fcitx-im.org/fcitx-table-other/";
|
||||
description = "Provides some other tables for Fcitx";
|
||||
license = licenses.gpl3Plus;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ ericsagnes ];
|
||||
};
|
||||
|
||||
}
|
@ -1,24 +0,0 @@
|
||||
{ stdenv, fetchurl, cmake, fcitx, anthy }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "fcitx-anthy-0.2.1";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Fcitx Wrapper for anthy";
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ iyzsong ];
|
||||
};
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.fcitx-im.org/fcitx-anthy/${name}.tar.xz";
|
||||
sha256 = "13fpfhhxkzbq53h10i3hifa37nngm47jq361i70z22bgcrs8887x";
|
||||
};
|
||||
|
||||
buildInputs = [ cmake fcitx anthy ];
|
||||
|
||||
preInstall = ''
|
||||
substituteInPlace src/cmake_install.cmake \
|
||||
--replace ${fcitx} $out
|
||||
'';
|
||||
}
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "fcitx-qt5-${version}";
|
||||
version = "1.0.4";
|
||||
version = "1.0.5";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.fcitx-im.org/fcitx-qt5/${name}.tar.xz";
|
||||
sha256 = "070dlmwkim7sg0xwxfcbb46li1jk8yd3rmj0j5fkmgyr12044aml";
|
||||
sha256 = "1pj1b04n8r4kl7jh1qdv0xshgzb3zrmizfa3g5h3yk589h191vwc";
|
||||
};
|
||||
|
||||
buildInputs = [ cmake fcitx extra-cmake-modules qtbase ];
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, buildEnv, fcitx, makeWrapper, plugins }:
|
||||
{ stdenv, buildEnv, fcitx, fcitx-configtool, makeWrapper, plugins, kde5 }:
|
||||
|
||||
# This is based on the pidgin-with-plugins package.
|
||||
# Users should be able to configure what plugins are used
|
||||
@ -16,7 +16,7 @@ let
|
||||
drv = buildEnv {
|
||||
name = "fcitx-with-plugins-" + (builtins.parseDrvName fcitx.name).version;
|
||||
|
||||
paths = [ fcitx ] ++ plugins;
|
||||
paths = [ fcitx fcitx-configtool kde5.fcitx-qt5 ] ++ plugins;
|
||||
|
||||
postBuild = ''
|
||||
# TODO: This could be avoided if buildEnv could be forced to create all directories
|
||||
|
@ -1,32 +0,0 @@
|
||||
{ stdenv, fetchurl, makeWrapper, ibus, anthy, intltool, pkgconfig, glib, gobjectIntrospection, python, pythonPackages }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "ibus-anthy-${version}";
|
||||
version = "1.5.7";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "IBus interface to the anthy input method";
|
||||
homepage = http://wiki.github.com/fujiwarat/ibus-anthy;
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ gebner ];
|
||||
};
|
||||
|
||||
configureFlags = "--with-anthy-zipcode=${anthy}/share/anthy/zipcode.t";
|
||||
|
||||
buildInputs = [ makeWrapper ibus anthy intltool pkgconfig glib gobjectIntrospection python pythonPackages.pygobject3 ];
|
||||
|
||||
postFixup = ''
|
||||
substituteInPlace $out/share/ibus/component/anthy.xml --replace \$\{exec_prefix\} $out
|
||||
for file in "$out"/libexec/*; do
|
||||
wrapProgram "$file" \
|
||||
--prefix PYTHONPATH : $PYTHONPATH \
|
||||
--prefix GI_TYPELIB_PATH : $GI_TYPELIB_PATH:$out/lib/girepository-1.0
|
||||
done
|
||||
'';
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/ibus/ibus-anthy/releases/download/${version}/${name}.tar.gz";
|
||||
sha256 = "00sjrfhghrgkqm72mf39f8sz6wr4fwvvs9mn2alaldhgr5v0c861";
|
||||
};
|
||||
}
|
39
pkgs/tools/inputmethods/ibus-engines/ibus-anthy/default.nix
Normal file
39
pkgs/tools/inputmethods/ibus-engines/ibus-anthy/default.nix
Normal file
@ -0,0 +1,39 @@
|
||||
{ stdenv, fetchFromGitHub, makeWrapper, ibus, anthy, intltool, pkgconfig, glib, gobjectIntrospection,
|
||||
python, pythonPackages, gtk3, libtool, automake, autoconf }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "ibus-anthy-${version}";
|
||||
version = "1.5.8";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
isIbusEngine = true;
|
||||
description = "IBus interface to the anthy input method";
|
||||
homepage = http://wiki.github.com/fujiwarat/ibus-anthy;
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ gebner ericsagnes ];
|
||||
};
|
||||
|
||||
preConfigure = "./autogen.sh --prefix=$out";
|
||||
|
||||
configureFlags = "--with-anthy-zipcode=${anthy}/share/anthy/zipcode.t";
|
||||
|
||||
buildInputs = [ makeWrapper ibus anthy intltool pkgconfig glib gobjectIntrospection
|
||||
python pythonPackages.pygobject3 gtk3 libtool automake autoconf ];
|
||||
|
||||
postFixup = ''
|
||||
substituteInPlace $out/share/ibus/component/anthy.xml --replace \$\{exec_prefix\} $out
|
||||
for file in "$out"/libexec/*; do
|
||||
wrapProgram "$file" \
|
||||
--prefix PYTHONPATH : $PYTHONPATH \
|
||||
--prefix GI_TYPELIB_PATH : $GI_TYPELIB_PATH:$out/lib/girepository-1.0
|
||||
done
|
||||
'';
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ibus";
|
||||
repo = "ibus-anthy";
|
||||
rev = version;
|
||||
sha256 = "1laxwpnhgihv4dz5cgcz6d0a0880r93n7039ciz1m53hdzapwi4a";
|
||||
};
|
||||
}
|
39
pkgs/tools/inputmethods/ibus-engines/ibus-hangul/default.nix
Normal file
39
pkgs/tools/inputmethods/ibus-engines/ibus-hangul/default.nix
Normal file
@ -0,0 +1,39 @@
|
||||
{ stdenv, gnome, fetchFromGitHub, ibus, libhangul, autoconf, automake, gettext, libtool, librsvg,
|
||||
intltool, pkgconfig, pythonPackages, makeWrapper, gtk3, python }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "ibus-hangul-${version}";
|
||||
version = "1.5.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "choehwanjin";
|
||||
repo = "ibus-hangul";
|
||||
rev = version;
|
||||
sha256 = "12l2spr32biqdbz01bzkamgq5gskbi6cd7ai343wqyy1ibjlkmp8";
|
||||
};
|
||||
|
||||
buildInputs = [ ibus libhangul autoconf gettext automake libtool
|
||||
intltool pkgconfig python pythonPackages.pygobject3 gtk3 makeWrapper ];
|
||||
|
||||
preConfigure = ''
|
||||
autoreconf --verbose --force --install
|
||||
intltoolize --automake --force --copy
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/ibus-setup-hangul \
|
||||
--prefix PYTHONPATH : $PYTHONPATH \
|
||||
--prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
|
||||
--prefix GDK_PIXBUF_MODULE_FILE : ${librsvg}/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache \
|
||||
--prefix LD_LIBRARY_PATH : ${libhangul}/lib
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
isIbusEngine = true;
|
||||
description = "Ibus Hangul engine.";
|
||||
homepage = https://github.com/choehwanjin/ibus-hangul;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ ericsagnes ];
|
||||
};
|
||||
}
|
32
pkgs/tools/inputmethods/ibus-engines/ibus-m17n/default.nix
Normal file
32
pkgs/tools/inputmethods/ibus-engines/ibus-m17n/default.nix
Normal file
@ -0,0 +1,32 @@
|
||||
{ stdenv, fetchFromGitHub, ibus, m17n_lib, m17n_db, automake, autoconf,
|
||||
gettext, libtool, pkgconfig, python, pythonPackages }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "ibus-m17n-${version}";
|
||||
version = "1.3.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ibus";
|
||||
repo = "ibus-m17n";
|
||||
rev = version;
|
||||
sha256 = "1n0bvgc4jyksgvzrw5zs2pxcpxcn3gcc0j2kasbznm34fpv3frsr";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
ibus m17n_lib m17n_db automake autoconf gettext
|
||||
libtool pkgconfig python pythonPackages.pygobject3
|
||||
];
|
||||
|
||||
preConfigure = ''
|
||||
autoreconf --verbose --force --install
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
isIbusEngine = true;
|
||||
description = "m17n engine for ibus.";
|
||||
homepage = https://github.com.com/ibus/ibus-m17n;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ ericsagnes ];
|
||||
};
|
||||
}
|
@ -7,33 +7,41 @@ let
|
||||
sha256 = "0pyrpz9c8nxccwpgyr36w314mi8h132cis8ijvlqmmhqxwsi30hm";
|
||||
};
|
||||
in clangStdenv.mkDerivation rec {
|
||||
name = "mozc-${version}";
|
||||
version = "2015-05-02";
|
||||
name = "ibus-mozc-${version}";
|
||||
version = "2.17.2313.102";
|
||||
|
||||
meta = with clangStdenv.lib; {
|
||||
description = "Japanese input method from Google";
|
||||
homepage = http://code.google.com/p/mozc/;
|
||||
license = licenses.bsd3;
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.gebner ];
|
||||
isIbusEngine = true;
|
||||
description = "Japanese input method from Google";
|
||||
homepage = http://code.google.com/p/mozc/;
|
||||
license = licenses.free;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ gebner ericsagnes ];
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ gyp which ninja python pkgconfig ];
|
||||
buildInputs = [ protobuf ibus gtk zinnia qt4 libxcb ];
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "google";
|
||||
repo = "mozc";
|
||||
rev = "d9783737ecfcb68c3d98d84e7052d716f4d0e0cb";
|
||||
sha256 = "52a83658e2e4a7b38e31a4085682be24c9c5f4c51a01578598a30b9833827b72";
|
||||
owner = "google";
|
||||
repo = "mozc";
|
||||
rev = "3306d3314499a54a4064b8b80bbc1bce3f6cfac4";
|
||||
sha256 = "0l7mjlnbm6i1ipni8pg9ym5bjg3rzkaxi9xwmsz2lddv348sqii2";
|
||||
};
|
||||
|
||||
postUnpack = ''
|
||||
rmdir $sourceRoot/src/third_party/japanese_usage_dictionary/
|
||||
ln -s ${japanese_usage_dictionary} $sourceRoot/src/third_party/japanese_usage_dictionary
|
||||
'';
|
||||
|
||||
configurePhase = ''
|
||||
export GYP_DEFINES="ibus_mozc_path=$out/lib/ibus-mozc/ibus-engine-mozc ibus_mozc_icon_path=$out/share/ibus-mozc/product_icon.png document_dir=$out/share/doc/mozc zinnia_model_file=${tegaki-zinnia-japanese}/share/tegaki/models/zinnia/handwriting-ja.model use_libprotobuf=1"
|
||||
python src/build_mozc.py gyp --gypdir=${gyp}/bin --server_dir=$out/lib/mozc
|
||||
export GYP_DEFINES="document_dir=$out/share/doc/mozc use_libzinnia=1 use_libprotobuf=1 ibus_mozc_path=$out/lib/ibus-mozc/ibus-engine-mozc"
|
||||
python src/build_mozc.py gyp --gypdir=${gyp}/bin --server_dir=$out/lib/mozc \
|
||||
python src/unix/fcitx/fcitx.gyp gyp --gypdir=${gyp}/bin
|
||||
'';
|
||||
|
||||
preBuildPhase = ''
|
||||
head -n 29 src/server/mozc_server.cc > LICENSE
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
@ -50,6 +58,9 @@ in clangStdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
install -d $out/share/licenses/mozc/
|
||||
install -m 644 LICENSE src/data/installer/*.html $out/share/licenses/mozc/
|
||||
|
||||
install -D -m 755 src/out_linux/Release/mozc_server $out/lib/mozc/mozc_server
|
||||
install -m 755 src/out_linux/Release/mozc_tool $out/lib/mozc/mozc_tool
|
||||
|
@ -20,10 +20,11 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Various table-based input methods for IBus";
|
||||
homepage = https://github.com/moebiuscurve/ibus-table-others;
|
||||
license = licenses.gpl3;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ mudri ];
|
||||
isIbusEngine = true;
|
||||
description = "Various table-based input methods for IBus";
|
||||
homepage = https://github.com/moebiuscurve/ibus-table-others;
|
||||
license = licenses.gpl3;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ mudri ];
|
||||
};
|
||||
}
|
@ -12,10 +12,11 @@ stdenv.mkDerivation rec {
|
||||
buildInputs = [ ibus pkgconfig python3 pythonPackages.pygobject3 ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "An IBus framework for table-based input methods";
|
||||
homepage = https://github.com/kaio/ibus-table/wiki;
|
||||
license = licenses.lgpl21;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ mudri ];
|
||||
isIbusEngine = true;
|
||||
description = "An IBus framework for table-based input methods";
|
||||
homepage = https://github.com/kaio/ibus-table/wiki;
|
||||
license = licenses.lgpl21;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ mudri ];
|
||||
};
|
||||
}
|
24
pkgs/tools/inputmethods/ibus/wrapper.nix
Normal file
24
pkgs/tools/inputmethods/ibus/wrapper.nix
Normal file
@ -0,0 +1,24 @@
|
||||
{ stdenv, buildEnv, ibus, makeWrapper, plugins, hicolor_icon_theme }:
|
||||
|
||||
let
|
||||
drv = buildEnv {
|
||||
name = "ibus-with-plugins-" + (builtins.parseDrvName ibus.name).version;
|
||||
|
||||
paths = [ ibus hicolor_icon_theme ] ++ plugins;
|
||||
|
||||
postBuild = ''
|
||||
# TODO: This could be avoided if buildEnv could be forced to create all directories
|
||||
if [ -L $out/bin ]; then
|
||||
rm $out/bin
|
||||
mkdir $out/bin
|
||||
for i in ${ibus}/bin/*; do
|
||||
ln -s $i $out/bin
|
||||
done
|
||||
fi
|
||||
wrapProgram $out/bin/ibus \
|
||||
--set IBUS_COMPONENT_PATH "$out/share/ibus/component/"
|
||||
wrapProgram $out/bin/ibus-daemon \
|
||||
--set IBUS_COMPONENT_PATH "$out/share/ibus/component/"
|
||||
'';
|
||||
};
|
||||
in stdenv.lib.overrideDerivation drv (x : { buildInputs = x.buildInputs ++ [ makeWrapper ]; })
|
39
pkgs/tools/inputmethods/uim/data-hook.patch
Normal file
39
pkgs/tools/inputmethods/uim/data-hook.patch
Normal file
@ -0,0 +1,39 @@
|
||||
--- a/gtk2/immodule/Makefile.in 2015-11-24 16:21:08.967087208 +0900
|
||||
+++ b/gtk2/immodule/Makefile.in 2015-11-24 16:22:53.316095150 +0900
|
||||
@@ -806,7 +806,6 @@
|
||||
|
||||
install-data-am: install-moduleLTLIBRARIES
|
||||
@$(NORMAL_INSTALL)
|
||||
- $(MAKE) $(AM_MAKEFLAGS) install-data-hook
|
||||
install-dvi: install-dvi-am
|
||||
|
||||
install-dvi-am:
|
||||
@@ -861,7 +860,7 @@
|
||||
ctags distclean distclean-compile distclean-generic \
|
||||
distclean-libtool distclean-tags distdir dvi dvi-am html \
|
||||
html-am info info-am install install-am install-data \
|
||||
- install-data-am install-data-hook install-dvi install-dvi-am \
|
||||
+ install-data-am install-dvi install-dvi-am \
|
||||
install-exec install-exec-am install-html install-html-am \
|
||||
install-info install-info-am install-man \
|
||||
install-moduleLTLIBRARIES install-pdf install-pdf-am \
|
||||
|
||||
--- a/gtk3/immodule/Makefile.in 2015-11-24 16:21:08.971087209 +0900
|
||||
+++ b/gtk3/immodule/Makefile.in 2015-11-24 16:23:28.251097832 +0900
|
||||
@@ -824,7 +824,6 @@
|
||||
|
||||
install-data-am: install-moduleLTLIBRARIES
|
||||
@$(NORMAL_INSTALL)
|
||||
- $(MAKE) $(AM_MAKEFLAGS) install-data-hook
|
||||
install-dvi: install-dvi-am
|
||||
|
||||
install-dvi-am:
|
||||
@@ -879,7 +878,7 @@
|
||||
ctags distclean distclean-compile distclean-generic \
|
||||
distclean-libtool distclean-tags distdir dvi dvi-am html \
|
||||
html-am info info-am install install-am install-data \
|
||||
- install-data-am install-data-hook install-dvi install-dvi-am \
|
||||
+ install-data-am install-dvi install-dvi-am \
|
||||
install-exec install-exec-am install-html install-html-am \
|
||||
install-info install-info-am install-man \
|
||||
install-moduleLTLIBRARIES install-pdf install-pdf-am
|
@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
|
||||
m17n_db
|
||||
];
|
||||
|
||||
patches = [ ./immodules_cache.patch ];
|
||||
patches = [ ./data-hook.patch ];
|
||||
|
||||
configureFlags = [
|
||||
"--with-gtk2"
|
||||
@ -41,10 +41,11 @@ stdenv.mkDerivation rec {
|
||||
sha1 = "43b9dbdead6797880e6cfc9c032ecb2d37d42777";
|
||||
};
|
||||
|
||||
meta = {
|
||||
homepage = "http://code.google.com/p/uim/";
|
||||
meta = with stdenv.lib; {
|
||||
homepage = "http://code.google.com/p/uim/";
|
||||
description = "A multilingual input method framework";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
maintainers = with maintainers; [ ericsagnes ];
|
||||
};
|
||||
}
|
||||
|
@ -1,231 +0,0 @@
|
||||
diff -ru -x '*~' uim-1.8.6.orig/gtk2/immodule/Makefile.am uim-1.8.6/gtk2/immodule/Makefile.am
|
||||
--- uim-1.8.6.orig/gtk2/immodule/Makefile.am 2013-06-30 13:26:09.000000000 +0900
|
||||
+++ uim-1.8.6/gtk2/immodule/Makefile.am 2014-07-13 21:51:26.538400004 +0900
|
||||
@@ -1,5 +1,5 @@
|
||||
uim_gtk_im_module_path = $(libdir)/gtk-2.0
|
||||
-uim_gtk_im_module_file = $(DESTDIR)$(sysconfdir)/gtk-2.0/gtk.immodules
|
||||
+uim_gtk_im_module_file = $(uim_gtk_im_module_path)/@GTK_BINARY_VERSION@/immodules.cache
|
||||
|
||||
moduledir = $(uim_gtk_im_module_path)/@GTK_BINARY_VERSION@/immodules
|
||||
|
||||
@@ -38,48 +38,12 @@
|
||||
|
||||
install-data-hook: gtk-rc-get-immodule-file
|
||||
if test -z $(DESTDIR); then \
|
||||
- if test $(libdir) = $(GTK_LIBDIR); then \
|
||||
- if type $(QUERY_COMMAND) > /dev/null 2>&1; then \
|
||||
- $(QUERY_COMMAND) > `$(GTK_RC_GET_IMMODULE_FILE)`; \
|
||||
- echo "*** \"`$(GTK_RC_GET_IMMODULE_FILE)`\" is updated. ***"; \
|
||||
- else \
|
||||
- echo "********************** Warning ***********************"; \
|
||||
- echo " $(QUERY_COMMAND) not found"; \
|
||||
- echo " Please make sure to update"; \
|
||||
- echo " \"`$(GTK_RC_GET_IMMODULE_FILE)`\""; \
|
||||
- echo " manually."; \
|
||||
- echo "******************************************************"; \
|
||||
- fi \
|
||||
- else \
|
||||
- if type $(QUERY_COMMAND) > /dev/null 2>&1; then \
|
||||
- $(mkinstalldirs) $(sysconfdir)/gtk-2.0; \
|
||||
- GTK_PATH=$(uim_gtk_im_module_path) $(QUERY_COMMAND) > $(uim_gtk_im_module_file); \
|
||||
- echo "******************************************************"; \
|
||||
- echo " You need to set"; \
|
||||
- echo " GTK_IM_MODULE_FILE=$(uim_gtk_im_module_file)"; \
|
||||
- echo " environment variable to use this module."; \
|
||||
- echo "******************************************************"; \
|
||||
- else \
|
||||
- echo "********************** Warning ***********************"; \
|
||||
- echo " $(QUERY_COMMAND) not found"; \
|
||||
- echo " Please make sure to update"; \
|
||||
- echo " \"$(uim_gtk_im_module_file)\""; \
|
||||
- echo " manually, and set"; \
|
||||
- echo " GTK_IM_MODULE_FILE=$(uim_gtk_im_module_file)"; \
|
||||
- echo " environment variable to use this module."; \
|
||||
- echo "******************************************************"; \
|
||||
- fi \
|
||||
- fi \
|
||||
+ $(mkinstalldirs) $(uim_gtk_im_module_path)/@GTK_BINARY_VERSION@; \
|
||||
+ GTK_PATH=$(uim_gtk_im_module_path) $(QUERY_COMMAND) > $(uim_gtk_im_module_file); \
|
||||
fi
|
||||
uninstall-hook:
|
||||
if test -z $(DESTDIR); then \
|
||||
- if type $(QUERY_COMMAND) > /dev/null 2>&1; then \
|
||||
- if test $(libdir) = $(GTK_LIBDIR); then \
|
||||
- $(QUERY_COMMAND) > `$(GTK_RC_GET_IMMODULE_FILE)`; \
|
||||
- else \
|
||||
- GTK_PATH=$(uim_gtk_im_module_path) $(QUERY_COMMAND) > $(uim_gtk_im_module_file); \
|
||||
- fi \
|
||||
- fi \
|
||||
+ GTK_PATH=$(uim_gtk_im_module_path) $(QUERY_COMMAND) > $(uim_gtk_im_module_file); \
|
||||
fi
|
||||
else
|
||||
install-data-hook:
|
||||
diff -ru -x '*~' uim-1.8.6.orig/gtk2/immodule/Makefile.in uim-1.8.6/gtk2/immodule/Makefile.in
|
||||
--- uim-1.8.6.orig/gtk2/immodule/Makefile.in 2013-06-30 13:27:08.000000000 +0900
|
||||
+++ uim-1.8.6/gtk2/immodule/Makefile.in 2014-07-13 22:12:27.947595507 +0900
|
||||
@@ -434,7 +434,7 @@
|
||||
top_srcdir = @top_srcdir@
|
||||
uim_pixmapsdir = @uim_pixmapsdir@
|
||||
uim_gtk_im_module_path = $(libdir)/gtk-2.0
|
||||
-uim_gtk_im_module_file = $(DESTDIR)$(sysconfdir)/gtk-2.0/gtk.immodules
|
||||
+uim_gtk_im_module_file = $(uim_gtk_im_module_path)/@GTK_BINARY_VERSION@/immodules.cache
|
||||
moduledir = $(uim_gtk_im_module_path)/@GTK_BINARY_VERSION@/immodules
|
||||
@GTK2_TRUE@im_uim_la = im-uim.la
|
||||
@GTK2_TRUE@im_uim_la_CPPFLAGS = -I$(top_srcdir) -I$(top_builddir)
|
||||
@@ -875,48 +875,12 @@
|
||||
|
||||
@GTK2_TRUE@install-data-hook: gtk-rc-get-immodule-file
|
||||
@GTK2_TRUE@ if test -z $(DESTDIR); then \
|
||||
-@GTK2_TRUE@ if test $(libdir) = $(GTK_LIBDIR); then \
|
||||
-@GTK2_TRUE@ if type $(QUERY_COMMAND) > /dev/null 2>&1; then \
|
||||
-@GTK2_TRUE@ $(QUERY_COMMAND) > `$(GTK_RC_GET_IMMODULE_FILE)`; \
|
||||
-@GTK2_TRUE@ echo "*** \"`$(GTK_RC_GET_IMMODULE_FILE)`\" is updated. ***"; \
|
||||
-@GTK2_TRUE@ else \
|
||||
-@GTK2_TRUE@ echo "********************** Warning ***********************"; \
|
||||
-@GTK2_TRUE@ echo " $(QUERY_COMMAND) not found"; \
|
||||
-@GTK2_TRUE@ echo " Please make sure to update"; \
|
||||
-@GTK2_TRUE@ echo " \"`$(GTK_RC_GET_IMMODULE_FILE)`\""; \
|
||||
-@GTK2_TRUE@ echo " manually."; \
|
||||
-@GTK2_TRUE@ echo "******************************************************"; \
|
||||
-@GTK2_TRUE@ fi \
|
||||
-@GTK2_TRUE@ else \
|
||||
-@GTK2_TRUE@ if type $(QUERY_COMMAND) > /dev/null 2>&1; then \
|
||||
-@GTK2_TRUE@ $(mkinstalldirs) $(sysconfdir)/gtk-2.0; \
|
||||
-@GTK2_TRUE@ GTK_PATH=$(uim_gtk_im_module_path) $(QUERY_COMMAND) > $(uim_gtk_im_module_file); \
|
||||
-@GTK2_TRUE@ echo "******************************************************"; \
|
||||
-@GTK2_TRUE@ echo " You need to set"; \
|
||||
-@GTK2_TRUE@ echo " GTK_IM_MODULE_FILE=$(uim_gtk_im_module_file)"; \
|
||||
-@GTK2_TRUE@ echo " environment variable to use this module."; \
|
||||
-@GTK2_TRUE@ echo "******************************************************"; \
|
||||
-@GTK2_TRUE@ else \
|
||||
-@GTK2_TRUE@ echo "********************** Warning ***********************"; \
|
||||
-@GTK2_TRUE@ echo " $(QUERY_COMMAND) not found"; \
|
||||
-@GTK2_TRUE@ echo " Please make sure to update"; \
|
||||
-@GTK2_TRUE@ echo " \"$(uim_gtk_im_module_file)\""; \
|
||||
-@GTK2_TRUE@ echo " manually, and set"; \
|
||||
-@GTK2_TRUE@ echo " GTK_IM_MODULE_FILE=$(uim_gtk_im_module_file)"; \
|
||||
-@GTK2_TRUE@ echo " environment variable to use this module."; \
|
||||
-@GTK2_TRUE@ echo "******************************************************"; \
|
||||
-@GTK2_TRUE@ fi \
|
||||
-@GTK2_TRUE@ fi \
|
||||
+@GTK2_TRUE@ $(mkinstalldirs) $(uim_gtk_im_module_path)/@GTK_BINARY_VERSION@; \
|
||||
+@GTK2_TRUE@ GTK_PATH=$(uim_gtk_im_module_path) $(QUERY_COMMAND) > $(uim_gtk_im_module_file); \
|
||||
@GTK2_TRUE@ fi
|
||||
@GTK2_TRUE@uninstall-hook:
|
||||
@GTK2_TRUE@ if test -z $(DESTDIR); then \
|
||||
-@GTK2_TRUE@ if type $(QUERY_COMMAND) > /dev/null 2>&1; then \
|
||||
-@GTK2_TRUE@ if test $(libdir) = $(GTK_LIBDIR); then \
|
||||
-@GTK2_TRUE@ $(QUERY_COMMAND) > `$(GTK_RC_GET_IMMODULE_FILE)`; \
|
||||
-@GTK2_TRUE@ else \
|
||||
-@GTK2_TRUE@ GTK_PATH=$(uim_gtk_im_module_path) $(QUERY_COMMAND) > $(uim_gtk_im_module_file); \
|
||||
-@GTK2_TRUE@ fi \
|
||||
-@GTK2_TRUE@ fi \
|
||||
+@GTK2_TRUE@ GTK_PATH=$(uim_gtk_im_module_path) $(QUERY_COMMAND) > $(uim_gtk_im_module_file); \
|
||||
@GTK2_TRUE@ fi
|
||||
@GTK2_FALSE@install-data-hook:
|
||||
|
||||
diff -ru -x '*~' uim-1.8.6.orig/gtk3/immodule/Makefile.am uim-1.8.6/gtk3/immodule/Makefile.am
|
||||
--- uim-1.8.6.orig/gtk3/immodule/Makefile.am 2013-06-30 13:26:20.000000000 +0900
|
||||
+++ uim-1.8.6/gtk3/immodule/Makefile.am 2014-07-13 21:55:38.114246503 +0900
|
||||
@@ -45,42 +45,11 @@
|
||||
|
||||
install-data-hook: gtk3-rc-get-immodule-file
|
||||
if test -z $(DESTDIR); then \
|
||||
- if test $(libdir) = $(GTK3_LIBDIR); then \
|
||||
- if type $(QUERY_COMMAND) > /dev/null 2>&1; then \
|
||||
- $(QUERY_COMMAND) --update-cache; \
|
||||
- echo "*** \"`$(GTK3_RC_GET_IMMODULE_FILE)`\" is updated. ***"; \
|
||||
- else \
|
||||
- echo "********************** Warning ***********************"; \
|
||||
- echo " $(QUERY_COMMAND) not found"; \
|
||||
- echo " Please make sure to update"; \
|
||||
- echo " \"`$(GTK3_RC_GET_IMMODULE_FILE)`\""; \
|
||||
- echo " manually."; \
|
||||
- echo "******************************************************"; \
|
||||
- fi \
|
||||
- else \
|
||||
- if type $(QUERY_COMMAND) > /dev/null 2>&1; then \
|
||||
- GTK_PATH=$(uim_gtk3_im_module_path) $(QUERY_COMMAND) --update-cache; \
|
||||
- else \
|
||||
- echo "********************** Warning ***********************"; \
|
||||
- echo " $(QUERY_COMMAND) not found"; \
|
||||
- echo " Please make sure to update"; \
|
||||
- echo " immodules.cache"; \
|
||||
- echo " manually, and set"; \
|
||||
- echo " GTK_IM_MODULE_FILE=PATH_TO/immodule.cache"; \
|
||||
- echo " environment variable to use this module."; \
|
||||
- echo "******************************************************"; \
|
||||
- fi \
|
||||
- fi \
|
||||
+ GTK_PATH=$(uim_gtk3_im_module_path) $(QUERY_COMMAND) > $(uim_gtk3_im_module_path)/@GTK3_BINARY_VERSION@/immodules.cache ; \
|
||||
fi
|
||||
uninstall-hook:
|
||||
if test -z $(DESTDIR); then \
|
||||
- if type $(QUERY_COMMAND) > /dev/null 2>&1; then \
|
||||
- if test $(libdir) = $(GTK3_LIBDIR); then \
|
||||
- $(QUERY_COMMAND) --update-cache; \
|
||||
- else \
|
||||
- GTK_PATH=$(uim_gtk3_im_module_path) $(QUERY_COMMAND) --update-cache; \
|
||||
- fi \
|
||||
- fi \
|
||||
+ GTK_PATH=$(uim_gtk3_im_module_path) $(QUERY_COMMAND) > $(uim_gtk3_im_module_path)/@GTK3_BINARY_VERSION@/immodules.cache ; \
|
||||
fi
|
||||
else
|
||||
install-data-hook:
|
||||
diff -ru -x '*~' uim-1.8.6.orig/gtk3/immodule/Makefile.in uim-1.8.6/gtk3/immodule/Makefile.in
|
||||
--- uim-1.8.6.orig/gtk3/immodule/Makefile.in 2013-06-30 13:27:08.000000000 +0900
|
||||
+++ uim-1.8.6/gtk3/immodule/Makefile.in 2014-07-13 21:56:11.531225832 +0900
|
||||
@@ -893,42 +893,11 @@
|
||||
|
||||
@GTK3_TRUE@install-data-hook: gtk3-rc-get-immodule-file
|
||||
@GTK3_TRUE@ if test -z $(DESTDIR); then \
|
||||
-@GTK3_TRUE@ if test $(libdir) = $(GTK3_LIBDIR); then \
|
||||
-@GTK3_TRUE@ if type $(QUERY_COMMAND) > /dev/null 2>&1; then \
|
||||
-@GTK3_TRUE@ $(QUERY_COMMAND) --update-cache; \
|
||||
-@GTK3_TRUE@ echo "*** \"`$(GTK3_RC_GET_IMMODULE_FILE)`\" is updated. ***"; \
|
||||
-@GTK3_TRUE@ else \
|
||||
-@GTK3_TRUE@ echo "********************** Warning ***********************"; \
|
||||
-@GTK3_TRUE@ echo " $(QUERY_COMMAND) not found"; \
|
||||
-@GTK3_TRUE@ echo " Please make sure to update"; \
|
||||
-@GTK3_TRUE@ echo " \"`$(GTK3_RC_GET_IMMODULE_FILE)`\""; \
|
||||
-@GTK3_TRUE@ echo " manually."; \
|
||||
-@GTK3_TRUE@ echo "******************************************************"; \
|
||||
-@GTK3_TRUE@ fi \
|
||||
-@GTK3_TRUE@ else \
|
||||
-@GTK3_TRUE@ if type $(QUERY_COMMAND) > /dev/null 2>&1; then \
|
||||
-@GTK3_TRUE@ GTK_PATH=$(uim_gtk3_im_module_path) $(QUERY_COMMAND) --update-cache; \
|
||||
-@GTK3_TRUE@ else \
|
||||
-@GTK3_TRUE@ echo "********************** Warning ***********************"; \
|
||||
-@GTK3_TRUE@ echo " $(QUERY_COMMAND) not found"; \
|
||||
-@GTK3_TRUE@ echo " Please make sure to update"; \
|
||||
-@GTK3_TRUE@ echo " immodules.cache"; \
|
||||
-@GTK3_TRUE@ echo " manually, and set"; \
|
||||
-@GTK3_TRUE@ echo " GTK_IM_MODULE_FILE=PATH_TO/immodule.cache"; \
|
||||
-@GTK3_TRUE@ echo " environment variable to use this module."; \
|
||||
-@GTK3_TRUE@ echo "******************************************************"; \
|
||||
-@GTK3_TRUE@ fi \
|
||||
-@GTK3_TRUE@ fi \
|
||||
+@GTK3_TRUE@ GTK_PATH=$(uim_gtk3_im_module_path) $(QUERY_COMMAND) > $(uim_gtk3_im_module_path)/@GTK3_BINARY_VERSION@/immodules.cache ; \
|
||||
@GTK3_TRUE@ fi
|
||||
@GTK3_TRUE@uninstall-hook:
|
||||
@GTK3_TRUE@ if test -z $(DESTDIR); then \
|
||||
-@GTK3_TRUE@ if type $(QUERY_COMMAND) > /dev/null 2>&1; then \
|
||||
-@GTK3_TRUE@ if test $(libdir) = $(GTK3_LIBDIR); then \
|
||||
-@GTK3_TRUE@ $(QUERY_COMMAND) --update-cache; \
|
||||
-@GTK3_TRUE@ else \
|
||||
-@GTK3_TRUE@ GTK_PATH=$(uim_gtk3_im_module_path) $(QUERY_COMMAND) --update-cache; \
|
||||
-@GTK3_TRUE@ fi \
|
||||
-@GTK3_TRUE@ fi \
|
||||
+@GTK3_TRUE@ GTK_PATH=$(uim_gtk3_im_module_path) $(QUERY_COMMAND) > $(uim_gtk3_im_module_path)/@GTK3_BINARY_VERSION@/immodules.cache ; \
|
||||
@GTK3_TRUE@ fi
|
||||
@GTK3_FALSE@install-data-hook:
|
||||
|
||||
diff -ru -x '*~' uim-1.8.6.orig/qt4/immodule/quiminputcontextplugin.pro.in uim-1.8.6/qt4/immodule/quiminputcontextplugin.pro.in
|
||||
--- uim-1.8.6.orig/qt4/immodule/quiminputcontextplugin.pro.in 2013-06-30 13:26:20.000000000 +0900
|
||||
+++ uim-1.8.6/qt4/immodule/quiminputcontextplugin.pro.in 2014-03-09 11:31:19.388085048 +0900
|
||||
@@ -35,4 +35,4 @@
|
||||
|
||||
TARGET = uiminputcontextplugin
|
||||
|
||||
-target.path += @DESTDIR@$$[QT_INSTALL_PLUGINS]/inputmethods
|
||||
+target.path += @DESTDIR@@exec_prefix@/lib/qt4/plugins/inputmethods
|
@ -1172,19 +1172,31 @@ let
|
||||
|
||||
m17n_lib = callPackage ../tools/inputmethods/m17n-lib { };
|
||||
|
||||
mozc = callPackage ../tools/inputmethods/mozc {
|
||||
inherit (pythonPackages) gyp;
|
||||
};
|
||||
|
||||
ibus = callPackage ../tools/inputmethods/ibus { };
|
||||
|
||||
ibus-qt = callPackage ../tools/inputmethods/ibus-qt { };
|
||||
ibus-qt = callPackage ../tools/inputmethods/ibus/ibus-qt.nix { };
|
||||
|
||||
ibus-anthy = callPackage ../tools/inputmethods/ibus-anthy { };
|
||||
ibus-engines = {
|
||||
|
||||
ibus-table = callPackage ../tools/inputmethods/ibus-table { };
|
||||
anthy = callPackage ../tools/inputmethods/ibus-engines/ibus-anthy { };
|
||||
|
||||
ibus-table-others = callPackage ../tools/inputmethods/ibus-table-others { };
|
||||
hangul = callPackage ../tools/inputmethods/ibus-engines/ibus-hangul { };
|
||||
|
||||
m17n = callPackage ../tools/inputmethods/ibus-engines/ibus-m17n { };
|
||||
|
||||
mozc = callPackage ../tools/inputmethods/ibus-engines/ibus-mozc {
|
||||
inherit (pythonPackages) gyp;
|
||||
};
|
||||
|
||||
table = callPackage ../tools/inputmethods/ibus-engines/ibus-table { };
|
||||
|
||||
table-others = callPackage ../tools/inputmethods/ibus-engines/ibus-table-others { };
|
||||
|
||||
};
|
||||
|
||||
ibus-with-plugins = callPackage ../tools/inputmethods/ibus/wrapper.nix {
|
||||
plugins = [ ];
|
||||
};
|
||||
|
||||
brotli = callPackage ../tools/compression/brotli { };
|
||||
|
||||
@ -1513,7 +1525,23 @@ let
|
||||
|
||||
fcitx = callPackage ../tools/inputmethods/fcitx { };
|
||||
|
||||
fcitx-anthy = callPackage ../tools/inputmethods/fcitx/fcitx-anthy.nix { };
|
||||
fcitx-engines = {
|
||||
|
||||
anthy = callPackage ../tools/inputmethods/fcitx-engines/fcitx-anthy { };
|
||||
|
||||
chewing = callPackage ../tools/inputmethods/fcitx-engines/fcitx-chewing { };
|
||||
|
||||
hangul = callPackage ../tools/inputmethods/fcitx-engines/fcitx-hangul { };
|
||||
|
||||
m17n = callPackage ../tools/inputmethods/fcitx-engines/fcitx-m17n { };
|
||||
|
||||
mozc = callPackage ../tools/inputmethods/fcitx-engines/fcitx-mozc {
|
||||
inherit (pythonPackages) gyp;
|
||||
};
|
||||
|
||||
table-other = callPackage ../tools/inputmethods/fcitx-engines/fcitx-table-other { };
|
||||
|
||||
};
|
||||
|
||||
fcitx-configtool = callPackage ../tools/inputmethods/fcitx/fcitx-configtool.nix { };
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user