uboot: (firmwareOdroidC2/C4) don't invoke patch tool, use patches = [] instead

https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh#L948
this can do it nicely.

Signed-off-by: Anton Arapov <anton@deadbeef.mx>
This commit is contained in:
Anton Arapov 2021-04-03 12:58:10 +02:00 committed by Alan Daniels
commit 56de2bcd43
30691 changed files with 3076956 additions and 0 deletions

View file

@ -0,0 +1,57 @@
{ lib, stdenv
, fetchurl
, gettext
, pkg-config
, wrapGAppsHook
, anthy
, ibus
, glib
, gobject-introspection
, gtk3
, python3
}:
stdenv.mkDerivation rec {
pname = "ibus-anthy";
version = "1.5.14";
src = fetchurl {
url = "https://github.com/ibus/ibus-anthy/releases/download/${version}/${pname}-${version}.tar.gz";
sha256 = "sha256-yGlNoY0LiRpI9NdaDezjfsvKbRsay2QQGnqEytEEbZs=";
};
buildInputs = [
anthy
glib
gtk3
ibus
(python3.withPackages (ps: [
ps.pygobject3
(ps.toPythonModule ibus)
]))
];
nativeBuildInputs = [
gettext
gobject-introspection
pkg-config
wrapGAppsHook
];
configureFlags = [
"--with-anthy-zipcode=${anthy}/share/anthy/zipcode.t"
];
postFixup = ''
substituteInPlace $out/share/ibus/component/anthy.xml --replace \$\{exec_prefix\} $out
'';
meta = with lib; {
isIbusEngine = true;
description = "IBus interface to the anthy input method";
homepage = "https://github.com/fujiwarat/ibus-anthy";
license = licenses.gpl2Plus;
platforms = platforms.linux;
maintainers = with maintainers; [ gebner ericsagnes ];
};
}

View file

@ -0,0 +1,58 @@
{ lib, stdenv
, fetchFromGitHub
, glib
, gettext
, xorg
, pkg-config
, wrapGAppsHook
, ibus
, gtk3
, go
}:
stdenv.mkDerivation rec {
pname = "ibus-bamboo";
version = "0.7.7";
src = fetchFromGitHub {
owner = "BambooEngine";
repo = pname;
rev = "v${version}";
sha256 = "1qdkimq4n9bxqjlnd00dggvx09cf4wqwk0kpgj01jd0i6ahggns1";
};
nativeBuildInputs = [
gettext
pkg-config
wrapGAppsHook
go
];
buildInputs = [
glib
gtk3
xorg.libX11
xorg.xorgproto
xorg.libXtst
xorg.libXi
];
preConfigure = ''
export GOCACHE="$TMPDIR/go-cache"
sed -i "s,/usr,$out," bamboo.xml
'';
makeFlags = [
"PREFIX=${placeholder "out"}"
];
meta = with lib; {
isIbusEngine = true;
description = "A Vietnamese IME for IBus";
homepage = "https://github.com/BambooEngine/ibus-bamboo";
license = licenses.gpl3;
platforms = platforms.linux;
maintainers = with maintainers; [ superbo ];
};
}

View file

@ -0,0 +1,55 @@
{ lib, stdenv
, fetchurl
, substituteAll
, appstream-glib
, gettext
, pkg-config
, wrapGAppsHook
, gtk3
, ibus
, libhangul
, python3
}:
stdenv.mkDerivation rec {
pname = "ibus-hangul";
version = "1.5.4";
src = fetchurl {
url = "https://github.com/choehwanjin/ibus-hangul/releases/download/${version}/${pname}-${version}.tar.gz";
sha256 = "1q6g2pnrn5gqn9jqnm3975v9hh60hc5gn9x3zbrdjgy0n3wpxwm9";
};
patches = [
(substituteAll {
src = ./fix-paths.patch;
libhangul = "${libhangul}/lib/libhangul.so.1";
})
];
nativeBuildInputs = [
appstream-glib
gettext
pkg-config
wrapGAppsHook
];
buildInputs = [
gtk3
ibus
libhangul
(python3.withPackages (pypkgs: with pypkgs; [
pygobject3
(toPythonModule ibus)
]))
];
meta = with lib; {
isIbusEngine = true;
description = "Ibus Hangul engine";
homepage = "https://github.com/choehwanjin/ibus-hangul";
license = licenses.gpl2;
maintainers = with maintainers; [ ericsagnes ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,13 @@
diff --git a/setup/main.py b/setup/main.py
index 8d581cd..2ac47b9 100644
--- a/setup/main.py
+++ b/setup/main.py
@@ -37,7 +37,7 @@
def get_hangul_keyboard_list():
from ctypes import CDLL, c_int, c_char_p
- libhangul = CDLL('libhangul.so.1')
+ libhangul = CDLL('@libhangul@')
libhangul.hangul_ic_get_n_keyboards.argtypes = []
libhangul.hangul_ic_get_n_keyboards.restype = c_int
libhangul.hangul_ic_get_keyboard_id.argtypes = [c_int]

View file

@ -0,0 +1,34 @@
{ lib, stdenv, fetchurl
, vala, intltool, pkg-config
, libkkc, ibus, skk-dicts
, gtk3
}:
stdenv.mkDerivation rec {
pname = "ibus-kkc";
version = "1.5.22";
src = fetchurl {
url = "${meta.homepage}/releases/download/v${version}/${pname}-${version}.tar.gz";
sha256 = "1kj74c9zy9yxkjx7pz96mzqc13cf10yfmlgprr8sfd4ay192bzi2";
};
nativeBuildInputs = [
vala intltool pkg-config
];
buildInputs = [ libkkc ibus skk-dicts gtk3 ];
postInstall = ''
ln -s ${skk-dicts}/share $out/share/skk
'';
meta = with lib; {
isIbusEngine = true;
description = "libkkc (Japanese Kana Kanji input method) engine for ibus";
homepage = "https://github.com/ueno/ibus-kkc";
license = licenses.gpl2;
platforms = platforms.linux;
maintainers = with maintainers; [ vanzef ];
};
}

View file

@ -0,0 +1,68 @@
{ lib
, stdenv
, fetchFromGitHub
, autoreconfHook
, gettext
, pkg-config
, wrapGAppsHook
, sqlite
, libpinyin
, db
, ibus
, glib
, gtk3
, python3
, lua
, opencc
, libsoup
, json-glib
}:
stdenv.mkDerivation rec {
pname = "ibus-libpinyin";
version = "1.12.1";
src = fetchFromGitHub {
owner = "libpinyin";
repo = "ibus-libpinyin";
rev = version;
sha256 = "sha256-tSbH4twU+paCZdmzVQMSSg3AzBNkK4nnmOfbvUzvZTk=";
};
nativeBuildInputs = [
autoreconfHook
gettext
pkg-config
wrapGAppsHook
];
configureFlags = [
"--enable-cloud-input-mode"
"--enable-opencc"
];
buildInputs = [
ibus
glib
sqlite
libpinyin
(python3.withPackages (pypkgs: with pypkgs; [
pygobject3
(toPythonModule ibus)
]))
gtk3
db
lua
opencc
libsoup
json-glib
];
meta = with lib; {
isIbusEngine = true;
description = "IBus interface to the libpinyin input method";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ ericsagnes ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,24 @@
{ lib, stdenv, fetchurl, makeWrapper, pkg-config, ibus, gtk3, libthai }:
stdenv.mkDerivation rec {
pname = "ibus-libthai";
version = "0.1.5";
src = fetchurl {
url = "https://linux.thai.net/pub/ThaiLinux/software/libthai/ibus-libthai-${version}.tar.xz";
sha256 = "sha256-egAxttjwuKiDoIuJluoOTJdotFZJe6ZOmJgdiFCAwx0=";
};
nativeBuildInputs = [ pkg-config ];
buildInputs = [ gtk3 ibus libthai ];
meta = with lib; {
isIbusEngine = true;
homepage = "https://linux.thai.net/projects/ibus-libthai";
description = "Thai input method engine for IBus";
license = licenses.lgpl21Plus;
platforms = platforms.unix;
maintainers = with maintainers; [ SuperSandro2000 ];
};
}

View file

@ -0,0 +1,55 @@
{ lib, stdenv
, fetchFromGitHub
, autoreconfHook
, pkg-config
, ibus
, gtk3
, m17n_lib
, m17n_db
, gettext
, python3
, wrapGAppsHook
}:
stdenv.mkDerivation rec {
pname = "ibus-m17n";
version = "1.4.9";
src = fetchFromGitHub {
owner = "ibus";
repo = "ibus-m17n";
rev = version;
sha256 = "sha256-N9hzyu2etbxlJPD2yUc2T0jxAfhEhshQ8X5R27JBg1E=";
};
nativeBuildInputs = [
autoreconfHook
gettext
pkg-config
wrapGAppsHook
];
buildInputs = [
ibus
gtk3
m17n_lib
m17n_db
(python3.withPackages (ps: [
ps.pygobject3
(ps.toPythonModule ibus)
]))
];
configureFlags = [
"--with-gtk=3.0"
];
meta = with lib; {
isIbusEngine = true;
description = "m17n engine for ibus";
homepage = "https://github.com/ibus/ibus-m17n";
license = licenses.gpl2Plus;
platforms = platforms.linux;
maintainers = with maintainers; [ ericsagnes ];
};
}

View file

@ -0,0 +1,89 @@
{ lib, stdenv, fetchFromGitHub, which, ninja, pkg-config, protobuf
, ibus, gtk2, zinnia, qt5, libxcb, tegaki-zinnia-japanese, python3Packages }:
stdenv.mkDerivation rec {
pname = "ibus-mozc";
version = "2.26.4660.102";
src = fetchFromGitHub {
owner = "google";
repo = "mozc";
rev = "063c41f1d7c1a877f44c1f8caad6be1897350336";
sha256 = "sha256-sgsfJZALpPHFB5bXu4OkRssViRDaPcgLfEyGhbqvJbI=";
fetchSubmodules = true;
};
nativeBuildInputs = [
which ninja python3Packages.python python3Packages.six
python3Packages.gyp pkg-config qt5.wrapQtAppsHook
];
buildInputs = [ protobuf ibus gtk2 zinnia qt5.qtbase libxcb ];
postUnpack = lib.optionalString stdenv.isLinux ''
sed -i 's/-lc++/-lstdc++/g' $sourceRoot/src/gyp/common.gypi
'';
configurePhase = ''
runHook preConfigure
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 zinnia_model_file=${tegaki-zinnia-japanese}/share/tegaki/models/zinnia/handwriting-ja.model"
cd src && python build_mozc.py gyp --gypdir=${python3Packages.gyp}/bin --server_dir=$out/lib/mozc
runHook postConfigure
'';
buildPhase = ''
runHook preBuild
PYTHONPATH="$PWD:$PYTHONPATH" python build_mozc.py build -c Release \
unix/ibus/ibus.gyp:ibus_mozc \
unix/emacs/emacs.gyp:mozc_emacs_helper \
server/server.gyp:mozc_server \
gui/gui.gyp:mozc_tool \
renderer/renderer.gyp:mozc_renderer
runHook postBuild
'';
installPhase = ''
runHook preInstall
install -d $out/share/licenses/mozc
head -n 29 server/mozc_server.cc > $out/share/licenses/mozc/LICENSE
install -m 644 data/installer/*.html $out/share/licenses/mozc/
install -D -m 755 out_linux/Release/mozc_server $out/lib/mozc/mozc_server
install -m 755 out_linux/Release/mozc_tool $out/lib/mozc/mozc_tool
wrapQtApp $out/lib/mozc/mozc_tool
install -d $out/share/doc/mozc
install -m 644 data/installer/*.html $out/share/doc/mozc/
install -D -m 755 out_linux/Release/ibus_mozc $out/lib/ibus-mozc/ibus-engine-mozc
install -D -m 644 out_linux/Release/gen/unix/ibus/mozc.xml $out/share/ibus/component/mozc.xml
install -D -m 644 data/images/unix/ime_product_icon_opensource-32.png $out/share/ibus-mozc/product_icon.png
install -m 644 data/images/unix/ui-tool.png $out/share/ibus-mozc/tool.png
install -m 644 data/images/unix/ui-properties.png $out/share/ibus-mozc/properties.png
install -m 644 data/images/unix/ui-dictionary.png $out/share/ibus-mozc/dictionary.png
install -m 644 data/images/unix/ui-direct.png $out/share/ibus-mozc/direct.png
install -m 644 data/images/unix/ui-hiragana.png $out/share/ibus-mozc/hiragana.png
install -m 644 data/images/unix/ui-katakana_half.png $out/share/ibus-mozc/katakana_half.png
install -m 644 data/images/unix/ui-katakana_full.png $out/share/ibus-mozc/katakana_full.png
install -m 644 data/images/unix/ui-alpha_half.png $out/share/ibus-mozc/alpha_half.png
install -m 644 data/images/unix/ui-alpha_full.png $out/share/ibus-mozc/alpha_full.png
install -D -m 755 out_linux/Release/mozc_renderer $out/lib/mozc/mozc_renderer
install -D -m 755 out_linux/Release/mozc_emacs_helper $out/lib/mozc/mozc_emacs_helper
runHook postInstall
'';
meta = with lib; {
isIbusEngine = true;
description = "Japanese input method from Google";
homepage = "https://github.com/google/mozc";
license = licenses.free;
platforms = platforms.linux;
maintainers = with maintainers; [ gebner ericsagnes ];
};
}

View file

@ -0,0 +1,44 @@
{ lib
, stdenv
, fetchFromGitHub
, cmake
, gdk-pixbuf
, glib
, ibus
, libnotify
, librime
, pkg-config
, rime-data
}:
stdenv.mkDerivation rec {
pname = "ibus-rime";
version = "1.5.0";
src = fetchFromGitHub {
owner = "rime";
repo = "ibus-rime";
rev = version;
sha256 = "0gdxg6ia0i31jn3cvh1nrsjga1j31hf8a2zfgg8rzn25chrfr319";
};
buildInputs = [ gdk-pixbuf glib ibus libnotify librime rime-data ];
nativeBuildInputs = [ cmake pkg-config ];
cmakeFlags = [ "-DRIME_DATA_DIR=${rime-data}/share/rime-data" ];
prePatch = ''
substituteInPlace CMakeLists.txt \
--replace 'DESTINATION "''${RIME_DATA_DIR}"' \
'DESTINATION "''${CMAKE_INSTALL_DATADIR}/rime-data"'
'';
meta = with lib; {
isIbusEngine = true;
description = "Rime input method engine for IBus";
homepage = "https://rime.im/";
license = licenses.gpl3Plus;
platforms = platforms.linux;
maintainers = with maintainers; [ pmy ];
};
}

View file

@ -0,0 +1,65 @@
{ lib, stdenv, fetchgit, fetchFromGitHub, pkg-config, ibus, ibus-table, python3, cmake }:
let
src = fetchFromGitHub {
owner = "definite";
repo = "ibus-table-chinese";
rev = "f1f6a3384f021caa3b84c517e2495086f9c34507";
sha256 = "14wpw3pvyrrqvg7al37jk2dxqfj9r4zf88j8k2n2lmdc50f3xs7k";
};
cmakeFedoraSrc = fetchgit {
url = "https://pagure.io/cmake-fedora.git";
rev = "7d5297759aef4cd086bdfa30cf6d4b2ad9446992";
sha256 = "0mx9jvxpiva9v2ffaqlyny48iqr073h84yw8ln43z2avv11ipr7n";
};
in stdenv.mkDerivation {
pname = "ibus-table-chinese";
version = "1.8.2";
srcs = [ src cmakeFedoraSrc ];
sourceRoot = src.name;
postUnpack = ''
chmod u+w -R ${cmakeFedoraSrc.name}
mv ${cmakeFedoraSrc.name}/* source/cmake-fedora
'';
preConfigure = ''
# cmake script needs ./Modules folder to link to cmake-fedora
ln -s cmake-fedora/Modules ./
'';
# Fails when writing to /prj_info.cmake in https://pagure.io/cmake-fedora/blob/master/f/Modules/ManageVersion.cmake
cmakeFlags = [ "-DPRJ_INFO_CMAKE_FILE=/dev/null" "-DPRJ_DOC_DIR=REPLACE" "-DDATA_DIR=share" ];
# Must replace PRJ_DOC_DIR with actual share/ folder for ibus-table-chinese
# Otherwise it tries to write to /ibus-table-chinese if not defined (!)
postConfigure = ''
substituteInPlace cmake_install.cmake --replace '/build/source/REPLACE' $out/share/ibus-table-chinese
'';
# Fails otherwise with "no such file or directory: <table>.txt"
dontUseCmakeBuildDir = true;
# Fails otherwise sometimes with
# FileExistsError: [Errno 17] File exists: '/build/tmp.BfVAUM4llr/ibus-table-chinese/.local/share/ibus-table'
enableParallelBuilding = false;
preBuild = ''
export HOME=$(mktemp -d)/ibus-table-chinese
'';
postFixup = ''
rm -rf $HOME
'';
nativeBuildInputs = [ cmake pkg-config ];
buildInputs = [ ibus ibus-table python3 ];
meta = with lib; {
isIbusEngine = true;
description = "Chinese tables for IBus-Table";
homepage = "https://github.com/definite/ibus-table-chinese";
license = licenses.gpl3;
platforms = platforms.linux;
maintainers = with maintainers; [ pneumaticat ];
};
}

View file

@ -0,0 +1,27 @@
{ lib, stdenv, fetchurl, ibus, ibus-table, pkg-config, python3 }:
stdenv.mkDerivation rec {
pname = "ibus-table-others";
version = "1.3.13";
src = fetchurl {
url = "https://github.com/moebiuscurve/ibus-table-others/releases/download/${version}/${pname}-${version}.tar.gz";
sha256 = "sha256-XN11iOShWyzRzmo/Ke+1Qh//o4ZhsmJWimgA1by2VZo=";
};
nativeBuildInputs = [ pkg-config ];
buildInputs = [ ibus ibus-table python3 ];
preBuild = ''
export HOME=$TMPDIR
'';
meta = with lib; {
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 ];
};
}

View file

@ -0,0 +1,67 @@
{ lib, stdenv, fetchFromGitHub
, autoreconfHook, docbook2x, pkg-config
, gtk3, dconf, gobject-introspection
, ibus, python3, wrapGAppsHook }:
stdenv.mkDerivation rec {
pname = "ibus-table";
version = "1.16.7";
src = fetchFromGitHub {
owner = "kaio";
repo = "ibus-table";
rev = version;
sha256 = "sha256-rejYxuRhzNmtx11NH3BZe3ODjU5OyZ9sgk6GWnBBXAo=";
};
postPatch = ''
# Data paths will be set at run-time.
sed -e "/export IBUS_TABLE_LIB_LOCATION=/ s/^.*$//" \
-e "/export IBUS_TABLE_LOCATION=/ s/^.*$//" \
-i "engine/ibus-engine-table.in"
sed -e "/export IBUS_TABLE_BIN_PATH=/ s/^.*$//" \
-e "/export IBUS_TABLE_DATA_DIR=/ s/^.*$//" \
-i "engine/ibus-table-createdb.in"
sed -e "/export IBUS_PREFIX=/ s/^.*$//" \
-e "/export IBUS_DATAROOTDIR=/ s/^.$//" \
-e "/export IBUS_LOCALEDIR=/ s/^.$//" \
-i "setup/ibus-setup-table.in"
substituteInPlace engine/tabcreatedb.py --replace '/usr/share/ibus-table' $out/share/ibus-table
substituteInPlace engine/ibus_table_location.py \
--replace '/usr/libexec' $out/libexec \
--replace '/usr/share/ibus-table/' $out/share/ibus-table/
'';
buildInputs = [
dconf
gtk3
ibus
(python3.withPackages (pypkgs: with pypkgs; [
dbus-python
pygobject3
(toPythonModule ibus)
]))
];
nativeBuildInputs = [
autoreconfHook
docbook2x
pkg-config
gobject-introspection
wrapGAppsHook
];
postUnpack = ''
substituteInPlace $sourceRoot/engine/Makefile.am \
--replace "docbook2man" "docbook2man --sgml"
'';
meta = with lib; {
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 ];
};
}

View file

@ -0,0 +1,41 @@
{ lib, stdenv, fetchFromGitHub, autoreconfHook, python3, ibus, pkg-config, gtk3, m17n_lib
, wrapGAppsHook, gobject-introspection
}:
let
python = python3.withPackages (ps: with ps; [
pygobject3
dbus-python
]);
in
stdenv.mkDerivation rec {
pname = "ibus-typing-booster";
version = "2.7.5";
src = fetchFromGitHub {
owner = "mike-fabian";
repo = "ibus-typing-booster";
rev = version;
sha256 = "072mi8r10v78sfs81zxdwfabf87fp872c99c5iral1ywwa4iynpl";
};
patches = [ ./hunspell-dirs.patch ];
nativeBuildInputs = [ autoreconfHook pkg-config wrapGAppsHook gobject-introspection ];
buildInputs = [ python ibus gtk3 m17n_lib ];
preFixup = ''
gappsWrapperArgs+=(--prefix LD_LIBRARY_PATH : "${m17n_lib}/lib")
'';
meta = with lib; {
homepage = "https://mike-fabian.github.io/ibus-typing-booster/";
license = licenses.gpl3Plus;
description = "A typing booster engine for the IBus platform";
maintainers = with maintainers; [ ];
isIbusEngine = true;
};
}

View file

@ -0,0 +1,31 @@
diff --git a/engine/itb_util.py b/engine/itb_util.py
index ded236a..633525a 100755
--- a/engine/itb_util.py
+++ b/engine/itb_util.py
@@ -1876,14 +1876,18 @@ def find_hunspell_dictionary(language):
If no dictionary can be found for the requested language,
the return value is ('', '').
'''
- dirnames = [
- '/usr/share/hunspell',
- '/usr/share/myspell',
- '/usr/share/myspell/dicts',
- '/usr/local/share/hunspell', # On FreeBSD the dictionaries are here
- '/usr/local/share/myspell',
- '/usr/local/share/myspell/dicts',
- ]
+
+ if "NIX_HUNSPELL_DIRS" in os.environ:
+ dirnames = os.environ["NIX_HUNSPELL_DIRS"].split(":")
+ else: # fallback to the original behavior
+ dirnames = [
+ '/usr/share/hunspell',
+ '/usr/share/myspell',
+ '/usr/share/myspell/dicts',
+ '/usr/local/share/hunspell', # On FreeBSD the dictionaries are here
+ '/usr/local/share/myspell',
+ '/usr/local/share/myspell/dicts',
+ ]
dic_path = ''
aff_path = ''
for language in expand_languages([language]):

View file

@ -0,0 +1,30 @@
{ typing-booster, symlinkJoin, hunspellDicts, lib, makeWrapper
, langs ? [ "de-de" "en-us" "es-es" "fr-moderne" "it-it" "sv-se" "sv-fi" ]
}:
let
hunspellDirs = with lib; makeSearchPath ":" (flatten (forEach langs (lang: [
"${hunspellDicts.${lang}}/share/hunspell"
"${hunspellDicts.${lang}}/share/myspell"
"${hunspellDicts.${lang}}/share/myspell/dicts"
])));
in
symlinkJoin {
name = "${typing-booster.name}-with-hunspell";
paths = [ typing-booster ];
nativeBuildInputs = [ makeWrapper ];
postBuild = ''
for i in bin/emoji-picker libexec/ibus-{setup,engine}-typing-booster; do
wrapProgram "$out/$i" \
--prefix NIX_HUNSPELL_DIRS : ${lib.escapeShellArg hunspellDirs}
done
sed -i -e "s,${typing-booster},$out," $out/share/ibus/component/typing-booster.xml
'';
inherit (typing-booster) meta;
}

View file

@ -0,0 +1,13 @@
diff --git a/uniemoji.xml.in b/uniemoji.xml.in
index 5fbfd0f..6fb8ad3 100644
--- a/uniemoji.xml.in
+++ b/uniemoji.xml.in
@@ -7,7 +7,7 @@
<license>GPL</license>
<author>Lalo Martins &lt;lalo.martins@gmail.com&gt;</author>
<homepage>https://github.com/salty-horse/ibus-uniemoji</homepage>
- <exec>@PYTHON@ @DATADIR@/ibus-uniemoji/uniemoji.py --ibus</exec>
+ <exec>@DATADIR@/ibus-uniemoji/uniemoji.py --ibus</exec>
<textdomain>uniemoji</textdomain>
<engines>
<engine>

View file

@ -0,0 +1,62 @@
{ lib, stdenv
, fetchFromGitHub
, gobject-introspection
, wrapGAppsHook
, python3
, ibus
}:
let
python = python3.withPackages (ps: with ps; [
pygobject3
(toPythonModule ibus)
pyxdg
python-Levenshtein
]);
in stdenv.mkDerivation rec {
pname = "ibus-uniemoji";
version = "0.6.0";
src = fetchFromGitHub {
owner = "salty-horse";
repo = "ibus-uniemoji";
rev = "v${version}";
sha256 = "121zh3q0li1k537fcvbd4ns4jgl9bbb9gm9ihy8cfxgirv38lcfa";
};
patches = [
# Do not run wrapper script with Python,
# the wrapped script will have Python in shebang anyway.
./allow-wrapping.patch
];
nativeBuildInputs = [
wrapGAppsHook
gobject-introspection
];
buildInputs = [
python
ibus
];
makeFlags = [
"PREFIX=${placeholder "out"}"
"SYSCONFDIR=${placeholder "out"}/etc"
"PYTHON=${python.interpreter}"
];
postFixup = ''
wrapGApp $out/share/ibus-uniemoji/uniemoji.py
'';
meta = with lib; {
isIbusEngine = true;
description = "Input method (ibus) for entering unicode symbols and emoji by name";
homepage = "https://github.com/salty-horse/ibus-uniemoji";
license = with licenses; [ gpl3 mit ];
platforms = platforms.linux;
maintainers = with maintainers; [ aske ];
};
}