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,104 @@
{ lib, stdenv
, fetchurl
, fetchFromGitHub
, pkg-config
, cmake
, extra-cmake-modules
, cairo
, cldr-annotations
, pango
, fribidi
, fmt
, wayland
, systemd
, wayland-protocols
, json_c
, isocodes
, xkeyboard_config
, enchant
, gdk-pixbuf
, libGL
, libevent
, libuuid
, libselinux
, libXdmcp
, libsepol
, libxkbcommon
, libthai
, libdatrie
, xcbutilkeysyms
, pcre
, xcbutilwm
, xcb-imdkit
, libxkbfile
}:
let
enDictVer = "20121020";
enDict = fetchurl {
url = "https://download.fcitx-im.org/data/en_dict-${enDictVer}.tar.gz";
sha256 = "1svcb97sq7nrywp5f2ws57cqvlic8j6p811d9ngflplj8xw5sjn4";
};
in
stdenv.mkDerivation rec {
pname = "fcitx5";
version = "5.0.16";
src = fetchFromGitHub {
owner = "fcitx";
repo = pname;
rev = version;
sha256 = "sha256-aSuvYt9UjG6/uVpLRZueq+qFvMQHdIcnO3G/LIE+3pk=";
};
prePatch = ''
ln -s ${enDict} src/modules/spell/dict/$(stripHash ${enDict})
'';
nativeBuildInputs = [
cmake
extra-cmake-modules
pkg-config
];
buildInputs = [
fmt
isocodes
cairo
enchant
pango
libthai
libdatrie
fribidi
systemd
gdk-pixbuf
wayland
wayland-protocols
cldr-annotations
json_c
libGL
libevent
libuuid
libselinux
libsepol
libXdmcp
libxkbcommon
pcre
xcbutilwm
xcbutilkeysyms
xcb-imdkit
xkeyboard_config
libxkbfile
];
cmakeFlags = [ "-DCLDR_DIR=${cldr-annotations}/share/unicode/cldr" ];
passthru.updateScript = ./update.py;
meta = with lib; {
description = "Next generation of fcitx";
homepage = "https://github.com/fcitx/fcitx5";
license = licenses.lgpl21Plus;
maintainers = with maintainers; [ poscat ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,40 @@
{ lib
, stdenv
, fetchFromGitHub
, cmake
, extra-cmake-modules
, gettext
, fcitx5
, libchewing
}:
stdenv.mkDerivation rec {
pname = "fcitx5-chewing";
version = "5.0.11";
src = fetchFromGitHub {
owner = "fcitx";
repo = pname;
rev = version;
sha256 = "sha256-w5ogK0jjvAEslXiCJvuhsS+z/Afy1KqDG7PzRQ+CMkY=";
};
nativeBuildInputs = [
cmake
extra-cmake-modules
gettext
];
buildInputs = [
fcitx5
libchewing
];
meta = with lib; {
description = "Chewing wrapper for Fcitx5";
homepage = "https://github.com/fcitx/fcitx5-chewing";
license = licenses.lgpl21Plus;
maintainers = with maintainers; [ xrelkd ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,76 @@
{ lib
, mkDerivation
, fetchurl
, fetchFromGitHub
, cmake
, extra-cmake-modules
, boost
, libime
, fcitx5
, fcitx5-qt
, fcitx5-lua
, qtwebengine
, opencc
, curl
, fmt
, luaSupport ? true
}:
let
pyStrokeVer = "20121124";
pyStroke = fetchurl {
url = "http://download.fcitx-im.org/data/py_stroke-${pyStrokeVer}.tar.gz";
sha256 = "0j72ckmza5d671n2zg0psg7z9iils4gyxz7jgkk54fd4pyljiccf";
};
pyTableVer = "20121124";
pyTable = fetchurl {
url = "http://download.fcitx-im.org/data/py_table-${pyTableVer}.tar.gz";
sha256 = "011cg7wssssm6hm564cwkrrnck2zj5rxi7p9z5akvhg6gp4nl522";
};
in
mkDerivation rec {
pname = "fcitx5-chinese-addons";
version = "5.0.12";
src = fetchFromGitHub {
owner = "fcitx";
repo = pname;
rev = version;
sha256 = "sha256-0+jKBA1IaeqV6epnJBgGwnDdAUxdMH6RyOKGmsw0M/o=";
};
cmakeFlags = [
"-DUSE_WEBKIT=off"
];
nativeBuildInputs = [
cmake
extra-cmake-modules
boost
fcitx5-lua
];
prePatch = ''
ln -s ${pyStroke} modules/pinyinhelper/$(stripHash ${pyStroke})
ln -s ${pyTable} modules/pinyinhelper/$(stripHash ${pyTable})
'';
buildInputs = [
fcitx5
fcitx5-qt
libime
curl
opencc
qtwebengine
fmt
] ++ lib.optional luaSupport fcitx5-lua;
meta = with lib; {
description = "Addons related to Chinese, including IME previous bundled inside fcitx4";
homepage = "https://github.com/fcitx/fcitx5-chinese-addons";
license = with licenses; [ gpl2Plus lgpl21Plus ];
maintainers = with maintainers; [ poscat ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,62 @@
{ lib
, mkDerivation
, fetchFromGitHub
, cmake
, extra-cmake-modules
, fcitx5
, fcitx5-qt
, qtx11extras
, qtquickcontrols2
, kwidgetsaddons
, kdeclarative
, kirigami2
, isocodes
, xkeyboardconfig
, libxkbfile
, libXdmcp
, kcmSupport ? true
}:
mkDerivation rec {
pname = "fcitx5-configtool";
version = "5.0.13";
src = fetchFromGitHub {
owner = "fcitx";
repo = pname;
rev = version;
sha256 = "sha256-sh3hd4hpqKKHdE8n5jf2v09ch2xUCCmapkp5tkeylKA=";
};
cmakeFlags = [
"-DKDE_INSTALL_USE_QT_SYS_PATHS=ON"
];
nativeBuildInputs = [
cmake
extra-cmake-modules
];
buildInputs = [
fcitx5
fcitx5-qt
qtx11extras
qtquickcontrols2
kirigami2
isocodes
xkeyboardconfig
libxkbfile
libXdmcp
] ++ lib.optionals kcmSupport [
kdeclarative
kwidgetsaddons
];
meta = with lib; {
description = "Configuration Tool for Fcitx5";
homepage = "https://github.com/fcitx/fcitx5-configtool";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ poscat ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,81 @@
{ lib, stdenv
, fetchFromGitHub
, cmake
, extra-cmake-modules
, fcitx5
, gobject-introspection
, glib
, gtk2
, gtk3
, gtk4
, fmt
, pcre
, libuuid
, libselinux
, libsepol
, libthai
, libdatrie
, libXdmcp
, libxkbcommon
, libepoxy
, dbus
, at-spi2-core
, libXtst
, withGTK2 ? false
}:
stdenv.mkDerivation rec {
pname = "fcitx5-gtk";
version = "5.0.14";
src = fetchFromGitHub {
owner = "fcitx";
repo = pname;
rev = version;
sha256 = "sha256-sByITVBgOX3YYdJN6EzDYH0+N+FqZcoJlCp70SfkKpY=";
};
cmakeFlags = [
"-DGOBJECT_INTROSPECTION_GIRDIR=share/gir-1.0"
"-DGOBJECT_INTROSPECTION_TYPELIBDIR=lib/girepository-1.0"
] ++ lib.optional (! withGTK2) "-DENABLE_GTK2_IM_MODULE=off";
buildInputs = [
glib
gtk3
gtk4
fmt
gobject-introspection
fcitx5
pcre
libuuid
libselinux
libsepol
libthai
libdatrie
libXdmcp
libxkbcommon
libepoxy
dbus
at-spi2-core
libXtst
] ++ lib.optional withGTK2 gtk2;
NIX_CFLAGS_COMPILE = lib.concatMapStringsSep " " (s: "-isystem ${s}") [
"${glib.dev}/include/gio-unix-2.0"
"${glib.dev}/include/glib-2.0"
];
nativeBuildInputs = [
cmake
extra-cmake-modules
];
meta = with lib; {
description = "Fcitx5 gtk im module and glib based dbus client library";
homepage = "https://github.com/fcitx/fcitx5-gtk";
license = licenses.lgpl21Plus;
maintainers = with maintainers; [ poscat ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,40 @@
{ lib
, stdenv
, fetchFromGitHub
, cmake
, extra-cmake-modules
, gettext
, fcitx5
, libhangul
}:
stdenv.mkDerivation rec {
pname = "fcitx5-hangul";
version = "5.0.9";
src = fetchFromGitHub {
owner = "fcitx";
repo = pname;
rev = version;
sha256 = "sha256-jT9k5QXW3fdG6s91NjFZ3lrjADy8wxf2SRiVDSnr6So=";
};
nativeBuildInputs = [
cmake
extra-cmake-modules
gettext
];
buildInputs = [
fcitx5
libhangul
];
meta = with lib; {
description = "Hangul wrapper for Fcitx5";
homepage = "https://github.com/fcitx/fcitx5-hangul";
license = licenses.lgpl21Plus;
maintainers = with maintainers; [ xrelkd ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,40 @@
{ lib, stdenv
, fetchFromGitHub
, cmake
, extra-cmake-modules
, fcitx5
, lua5_3
, luaPackage ? lua5_3
, gettext
}:
stdenv.mkDerivation rec {
pname = "fcitx5-lua";
version = "5.0.8";
src = fetchFromGitHub {
owner = "fcitx";
repo = pname;
rev = version;
sha256 = "sha256-VHGHKV5KLbfIMWLErLRNl8pOQOkYkc/f6VjZUSqluFk=";
};
nativeBuildInputs = [
cmake
extra-cmake-modules
];
buildInputs = [
fcitx5
luaPackage
gettext
];
meta = with lib; {
description = "Lua support for Fcitx 5";
homepage = "https://github.com/fcitx/fcitx5-lua";
license = licenses.lgpl21Plus;
maintainers = with maintainers; [ poscat ];
platforms = platforms.linux;
};
}

View file

@ -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.9";
src = fetchFromGitHub {
owner = "fcitx";
repo = pname;
rev = version;
sha256 = "sha256-JySEzWyPZqVrvgRA4Hc0ZSGLdS29n8uoSQsFEMK6kbs=";
};
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;
};
}

View file

@ -0,0 +1,106 @@
{ lib, clangStdenv, fetchFromGitHub, fetchurl, fetchpatch, fetchgit
, python3Packages, ninja, pkg-config, protobuf, zinnia, qt5, fcitx5
, jsoncpp, gtest, which, gtk2, unzip, abseil-cpp, breakpad }:
let
inherit (python3Packages) python gyp six;
japanese_usage_dictionary = fetchFromGitHub {
owner = "hiroyuki-komatsu";
repo = "japanese-usage-dictionary";
rev = "e5b3425575734c323e1d947009dd74709437b684";
sha256 = "0pyrpz9c8nxccwpgyr36w314mi8h132cis8ijvlqmmhqxwsi30hm";
};
zipcode_rel = "202011";
jigyosyo = fetchurl {
url = "https://osdn.net/projects/ponsfoot-aur/storage/mozc/jigyosyo-${zipcode_rel}.zip";
sha256 = "j7MkNtd4+QTi91EreVig4/OV0o5y1+KIjEJBEmLK/mY=";
};
x-ken-all = fetchurl {
url =
"https://osdn.net/projects/ponsfoot-aur/storage/mozc/x-ken-all-${zipcode_rel}.zip";
sha256 = "ExS0Cg3rs0I9IOVbZHLt8UEfk8/LmY9oAHPVVlYuTPw=";
};
in clangStdenv.mkDerivation rec {
pname = "fcitx5-mozc";
version = "2.26.4220.102";
src = fetchFromGitHub {
owner = "fcitx";
repo = "mozc";
rev = "1882e33b61673b66d63277f82b4c80ae4e506c10";
sha256 = "R+w0slVFpqtt7PIr1pyupJjRoQsABVZiMdZ9fKGKAqw=";
};
nativeBuildInputs = [ gyp ninja python pkg-config qt5.wrapQtAppsHook six which unzip ];
buildInputs = [ protobuf zinnia qt5.qtbase fcitx5 abseil-cpp jsoncpp gtest gtk2 ];
patches = [
# Support linking system abseil-cpp
(fetchpatch {
url = "https://salsa.debian.org/debian/mozc/-/raw/debian/sid/debian/patches/0007-Update-src-base-absl.gyp.patch";
sha256 = "UiS0UScDKyAusXOhc7Bg8dF8ARQQiVTylEhAOxqaZt8=";
})
];
postUnpack = ''
unzip ${x-ken-all} -d $sourceRoot/src/
unzip ${jigyosyo} -d $sourceRoot/src/
rmdir $sourceRoot/src/third_party/breakpad/
ln -s ${breakpad} $sourceRoot/src/third_party/breakpad
rmdir $sourceRoot/src/third_party/gtest/
ln -s ${gtest} $sourceRoot/src/third_party/gtest
rmdir $sourceRoot/src/third_party/gyp/
ln -s ${gyp} $sourceRoot/src/third_party/gyp
rmdir $sourceRoot/src/third_party/japanese_usage_dictionary/
ln -s ${japanese_usage_dictionary} $sourceRoot/src/third_party/japanese_usage_dictionary
'';
# Copied from https://github.com/archlinux/svntogit-community/blob/packages/fcitx5-mozc/trunk/PKGBUILD
configurePhase = ''
cd src
export GYP_DEFINES="document_dir=$out/share/doc/mozc use_libzinnia=1 use_libprotobuf=1 use_libabseil=1"
# disable fcitx4
rm unix/fcitx/fcitx.gyp
# gen zip code seed
PYTHONPATH="$PWD:$PYTHONPATH" python dictionary/gen_zip_code_seed.py --zip_code="x-ken-all.csv" --jigyosyo="JIGYOSYO.CSV" >> data/dictionary_oss/dictionary09.txt
# use libstdc++ instead of libc++
sed "/stdlib=libc++/d;/-lc++/d" -i gyp/common.gypi
# run gyp
python build_mozc.py gyp --gypdir=${gyp}/bin --server_dir=$out/lib/mozc
'';
buildPhase = ''
python build_mozc.py build -c Release \
server/server.gyp:mozc_server \
gui/gui.gyp:mozc_tool \
unix/fcitx5/fcitx5.gyp:fcitx5-mozc
'';
installPhase = ''
export PREFIX=$out
export _bldtype=Release
../scripts/install_server
install -d $out/share/licenses/fcitx5-mozc
head -n 29 server/mozc_server.cc > $out/share/licenses/fcitx5-mozc/LICENSE
install -m644 data/installer/*.html $out/share/licenses/fcitx5-mozc/
install -d $out/share/fcitx5/addon
install -d $out/share/fcitx5/inputmethod
install -d $out/lib/fcitx5
../scripts/install_fcitx5
'';
meta = with lib; {
description = "Fcitx5 Module of A Japanese Input Method for Chromium OS, Windows, Mac and Linux (the Open Source Edition of Google Japanese Input)";
homepage = "https://github.com/fcitx/mozc";
license = licenses.bsd3;
maintainers = with maintainers; [ berberman ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,53 @@
{ lib
, mkDerivation
, fetchFromGitHub
, cmake
, extra-cmake-modules
, fcitx5
, qtx11extras
, libxcb
, libXdmcp
, qtbase
}:
mkDerivation rec {
pname = "fcitx5-qt";
version = "5.0.12";
src = fetchFromGitHub {
owner = "fcitx";
repo = pname;
rev = version;
sha256 = "sha256-tK/sZa8PX+W8rZd5VH0a9nlxQ619w48//jQMTPytb+0=";
};
preConfigure = ''
substituteInPlace qt5/platforminputcontext/CMakeLists.txt \
--replace \$"{CMAKE_INSTALL_QT5PLUGINDIR}" $out/${qtbase.qtPluginPrefix}
'';
cmakeFlags = [
"-DENABLE_QT4=0"
"-DENABLE_QT6=0"
];
nativeBuildInputs = [
cmake
extra-cmake-modules
];
buildInputs = [
fcitx5
qtx11extras
libxcb
libXdmcp
];
meta = with lib; {
description = "Fcitx5 Qt Library";
homepage = "https://github.com/fcitx/fcitx5-qt";
license = with licenses; [ lgpl21Plus bsd3 ];
maintainers = with maintainers; [ poscat ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,18 @@
:100644 100644 fac4f53 aed9617 M src/rimeengine.cpp
diff --git a/src/rimeengine.cpp b/src/rimeengine.cpp
index fac4f53..aed9617 100644
--- a/src/rimeengine.cpp
+++ b/src/rimeengine.cpp
@@ -164,7 +164,10 @@ void RimeEngine::rimeStart(bool fullcheck) {
RIME_ERROR() << "Failed to create user directory: " << userDir;
}
}
- const char *sharedDataDir = RIME_DATA_DIR;
+ const char *sharedDataDir = getenv("NIX_RIME_DATA_DIR");
+ if (!sharedDataDir) {
+ sharedDataDir = RIME_DATA_DIR;
+ }
RIME_STRUCT(RimeTraits, fcitx_rime_traits);
fcitx_rime_traits.shared_data_dir = sharedDataDir;

View file

@ -0,0 +1,47 @@
{ lib, stdenv
, fetchFromGitHub
, pkg-config
, cmake
, extra-cmake-modules
, gettext
, fcitx5
, librime
}:
stdenv.mkDerivation rec {
pname = "fcitx5-rime";
version = "5.0.13";
src = fetchFromGitHub {
owner = "fcitx";
repo = pname;
rev = version;
sha256 = "sha256-/oQdBCDV5obSHw7dzdceC+zWHcNve3NDlA50GhvkK8o=";
};
cmakeFlags = [
"-DRIME_DATA_DIR=${placeholder "out"}/share/rime-data"
];
nativeBuildInputs = [
cmake
extra-cmake-modules
pkg-config
gettext
];
buildInputs = [
fcitx5
librime
];
patches = [ ./fcitx5-rime-with-nix-env-variable.patch ];
meta = with lib; {
description = "RIME support for Fcitx5";
homepage = "https://github.com/fcitx/fcitx5-rime";
license = licenses.lgpl21Plus;
maintainers = with maintainers; [ poscat ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,38 @@
{ lib, stdenv
, fetchFromGitHub
, cmake
, extra-cmake-modules
, gettext
, libime
, boost
, fcitx5
}:
stdenv.mkDerivation rec {
pname = "fcitx5-table-extra";
version = "5.0.10";
src = fetchFromGitHub {
owner = "fcitx";
repo = pname;
rev = version;
sha256 = "sha256-fKT1nCr6kAFJEdacff4qBr3uI5fvIwMDPkHVFGTQf10=";
};
nativeBuildInputs = [
cmake
extra-cmake-modules
gettext
libime
boost
fcitx5
];
meta = with lib; {
description = "Extra table for Fcitx, including Boshiamy, Zhengma, Cangjie, and Quick";
homepage = "https://github.com/fcitx/fcitx5-table-extra";
license = licenses.gpl2Only;
maintainers = with maintainers; [ poscat ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,38 @@
{ lib, stdenv
, fetchFromGitHub
, cmake
, extra-cmake-modules
, gettext
, libime
, boost
, fcitx5
}:
stdenv.mkDerivation rec {
pname = "fcitx5-table-other";
version = "5.0.9";
src = fetchFromGitHub {
owner = "fcitx";
repo = pname;
rev = version;
sha256 = "sha256-y/OY7m136VQvK75079OTFqLLR2o0NCIc5llljrJ91DU=";
};
nativeBuildInputs = [
cmake
extra-cmake-modules
gettext
libime
boost
fcitx5
];
meta = with lib; {
description = "Some other tables for Fcitx";
homepage = "https://github.com/fcitx/fcitx5-table-other";
license = licenses.gpl3Only;
maintainers = with maintainers; [ poscat ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,34 @@
{ lib
, stdenv
, fetchFromGitHub
, cmake
, extra-cmake-modules
, fcitx5
, fcitx5-qt
, gettext
, wrapQtAppsHook
}:
stdenv.mkDerivation rec {
pname = "fcitx5-unikey";
version = "5.0.9";
src = fetchFromGitHub {
owner = "fcitx";
repo = "fcitx5-unikey";
rev = version;
sha256 = "sha256-lsWMQygIdHcEuHCEvi5d0PGI1jJ42C+9ji/w0L/eadM=";
};
nativeBuildInputs = [ cmake extra-cmake-modules wrapQtAppsHook ];
buildInputs = [ fcitx5 fcitx5-qt gettext ];
meta = with lib; {
description = "Unikey engine support for Fcitx5";
homepage = "https://github.com/fcitx/fcitx5-unikey";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ berberman ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,44 @@
#!/usr/bin/env nix-shell
#!nix-shell -i python3 -p nix-update nix-prefetch-github python3Packages.requests
from nix_prefetch_github import *
import json
import requests
import subprocess
REPOS = [
"libime",
"xcb-imdkit",
"fcitx5",
"fcitx5-chewing",
"fcitx5-chinese-addons",
"fcitx5-configtool",
"fcitx5-gtk",
"fcitx5-hangul",
"fcitx5-lua",
"fcitx5-m17n",
"fcitx5-qt",
"fcitx5-rime",
"fcitx5-table-extra",
"fcitx5-table-other",
"fcitx5-unikey"
]
OWNER = "fcitx"
def get_latest_tag(repo, owner=OWNER):
r = requests.get('https://api.github.com/repos/{}/{}/tags'.format(owner,repo))
return r.json()[0].get("name")
def main():
sources = dict()
for repo in REPOS:
rev = get_latest_tag(repo)
if repo == "fcitx5-qt":
subprocess.run(["nix-update", "--commit", "--version", rev, "libsForQt5.{}".format(repo)])
else:
subprocess.run(["nix-update", "--commit", "--version", rev, repo])
if __name__ == "__main__":
main ()

View file

@ -0,0 +1,26 @@
{ symlinkJoin, makeWrapper, fcitx5, fcitx5-lua, fcitx5-configtool, fcitx5-qt, fcitx5-gtk, addons ? [] }:
symlinkJoin {
name = "fcitx5-with-addons-${fcitx5.version}";
paths = [ fcitx5 fcitx5-configtool fcitx5-lua fcitx5-qt fcitx5-gtk ] ++ addons;
nativeBuildInputs = [ makeWrapper ];
postBuild = ''
wrapProgram $out/bin/fcitx5 \
--prefix FCITX_ADDON_DIRS : "$out/lib/fcitx5" \
--suffix XDG_DATA_DIRS : "$out/share" \
--suffix PATH : "$out/bin"
desktop=share/applications/org.fcitx.Fcitx5.desktop
autostart=etc/xdg/autostart/org.fcitx.Fcitx5.desktop
rm $out/$desktop
rm $out/$autostart
cp ${fcitx5}/$desktop $out/$desktop
sed -i $out/$desktop -e "s|^Exec=.*|Exec=$out/bin/fcitx5|g"
ln -s $out/$desktop $out/$autostart
'';
meta = fcitx5.meta;
}