at 22.05-pre 2.7 kB view raw
1{ lib, runCommand, makeWrapper, lndir 2, dconf, hicolor-icon-theme, ibus, librsvg, plugins ? [] 3}: 4 5let 6 name = "ibus-with-plugins-" + lib.getVersion ibus; 7 env = { 8 buildInputs = [ ibus ] ++ plugins; 9 nativeBuildInputs = [ lndir makeWrapper ]; 10 propagatedUserEnvPackages = [ hicolor-icon-theme ]; 11 paths = [ ibus ] ++ plugins; 12 inherit (ibus) meta; 13 }; 14 command = '' 15 for dir in bin etc lib libexec share; do 16 mkdir -p "$out/$dir" 17 for pkg in $paths; do 18 if [ -d "$pkg/$dir" ]; then 19 lndir -silent "$pkg/$dir" "$out/$dir" 20 fi 21 done 22 done 23 24 for prog in ibus; do 25 wrapProgram "$out/bin/$prog" \ 26 --set GDK_PIXBUF_MODULE_FILE ${librsvg.out}/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache \ 27 --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH:$out/lib/girepository-1.0" \ 28 --prefix GIO_EXTRA_MODULES : "${lib.getLib dconf}/lib/gio/modules" \ 29 --set IBUS_COMPONENT_PATH "$out/share/ibus/component/" \ 30 --set IBUS_DATAROOTDIR "$out/share" \ 31 --set IBUS_LIBEXECDIR "$out/libexec" \ 32 --set IBUS_LOCALEDIR "$out/share/locale" \ 33 --set IBUS_PREFIX "$out" \ 34 --set IBUS_TABLE_BIN_PATH "$out/bin" \ 35 --set IBUS_TABLE_DATA_DIR "$out/share" \ 36 --set IBUS_TABLE_LIB_LOCATION "$out/libexec" \ 37 --set IBUS_TABLE_LOCATION "$out/share/ibus-table" \ 38 --prefix PYTHONPATH : "$PYTHONPATH" \ 39 --prefix XDG_DATA_DIRS : "$out/share:$GSETTINGS_SCHEMAS_PATH" \ 40 --suffix XDG_DATA_DIRS : "${hicolor-icon-theme}/share" 41 done 42 43 for prog in ibus-daemon; do 44 wrapProgram "$out/bin/$prog" \ 45 --set GDK_PIXBUF_MODULE_FILE ${librsvg.out}/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache \ 46 --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH:$out/lib/girepository-1.0" \ 47 --prefix GIO_EXTRA_MODULES : "${lib.getLib dconf}/lib/gio/modules" \ 48 --set IBUS_COMPONENT_PATH "$out/share/ibus/component/" \ 49 --set IBUS_DATAROOTDIR "$out/share" \ 50 --set IBUS_LIBEXECDIR "$out/libexec" \ 51 --set IBUS_LOCALEDIR "$out/share/locale" \ 52 --set IBUS_PREFIX "$out" \ 53 --set IBUS_TABLE_BIN_PATH "$out/bin" \ 54 --set IBUS_TABLE_DATA_DIR "$out/share" \ 55 --set IBUS_TABLE_LIB_LOCATION "$out/libexec" \ 56 --set IBUS_TABLE_LOCATION "$out/share/ibus-table" \ 57 --prefix PYTHONPATH : "$PYTHONPATH" \ 58 --prefix XDG_DATA_DIRS : "$out/share:$GSETTINGS_SCHEMAS_PATH" \ 59 --suffix XDG_DATA_DIRS : "${hicolor-icon-theme}/share" \ 60 --add-flags "--cache=refresh" 61 done 62 ''; 63in 64 runCommand name env command