Merge pull request #232244 from wineee/wps-clear

wpsoffice: don't need wrapGAppsHook nor wrapQtAppsHook & use autoPatchelfIgnoreMissingDeps

authored by

Nick Cao and committed by
GitHub
b31c968f 3ee719e7

+28 -31
+28 -31
pkgs/applications/office/wpsoffice/default.nix
··· 2 2 , stdenv 3 3 , fetchurl 4 4 , dpkg 5 - , wrapGAppsHook 6 - , wrapQtAppsHook 7 5 , autoPatchelfHook 8 6 , alsa-lib 7 + , at-spi2-core 9 8 , libtool 9 + , libxkbcommon 10 10 , nspr 11 11 , mesa 12 12 , libtiff 13 - , cups 14 13 , udev 14 + , gtk3 15 + , qtbase 15 16 , xorg 17 + , cups 16 18 , pango 17 - , makeWrapper 18 19 , useChineseVersion ? false 19 20 }: 20 21 ··· 33 34 unpackCmd = "dpkg -x $src ."; 34 35 sourceRoot = "."; 35 36 36 - postUnpack = '' 37 - # distribution is missing libkappessframework.so, so we should not let 38 - # autoPatchelfHook fail on the following dead libraries 39 - rm -r opt/kingsoft/wps-office/office6/addons/pdfbatchcompression 40 - 41 - # Remove the following libraries because they depend on qt4 42 - rm -r opt/kingsoft/wps-office/office6/{librpcetapi.so,librpcwpsapi.so,librpcwppapi.so,libavdevice.so.58.10.100,libmediacoder.so} 43 - rm -r opt/kingsoft/wps-office/office6/addons/wppcapturer/libwppcapturer.so 44 - rm -r opt/kingsoft/wps-office/office6/addons/wppencoder/libwppencoder.so 45 - ''; 46 - 47 - nativeBuildInputs = [ dpkg wrapGAppsHook wrapQtAppsHook makeWrapper autoPatchelfHook ]; 37 + nativeBuildInputs = [ 38 + dpkg 39 + autoPatchelfHook 40 + ]; 48 41 49 42 buildInputs = [ 50 43 alsa-lib 51 - xorg.libXdamage 52 - xorg.libXtst 44 + at-spi2-core 53 45 libtool 46 + libxkbcommon 54 47 nspr 55 48 mesa 56 49 libtiff 57 50 udev 51 + gtk3 52 + qtbase 53 + xorg.libXdamage 54 + xorg.libXtst 55 + xorg.libXv 58 56 ]; 59 57 58 + dontWrapQtApps = true; 59 + 60 60 runtimeDependencies = map lib.getLib [ 61 61 cups 62 62 pango 63 + ]; 64 + 65 + autoPatchelfIgnoreMissingDeps = [ 66 + # distribution is missing libkappessframework.so 67 + "libkappessframework.so" 68 + # qt4 support is deprecated 69 + "libQtCore.so.4" 70 + "libQtNetwork.so.4" 71 + "libQtXml.so.4" 63 72 ]; 64 73 65 74 installPhase = '' ··· 79 88 runHook postInstall 80 89 ''; 81 90 82 - dontWrapQtApps = true; 83 - dontWrapGApps = true; 84 - 85 91 preFixup = '' 86 92 # The following libraries need libtiff.so.5, but nixpkgs provides libtiff.so.6 87 - patchelf --replace-needed libtiff.so.5 libtiff.so $out/opt/kingsoft/wps-office/office6/{libpdfmain.so,libqpdfpaint.so,qt/plugins/imageformats/libqtiff.so} 93 + patchelf --replace-needed libtiff.so.5 libtiff.so $out/opt/kingsoft/wps-office/office6/{libpdfmain.so,libqpdfpaint.so,qt/plugins/imageformats/libqtiff.so,addons/pdfbatchcompression/libpdfbatchcompressionapp.so} 88 94 # dlopen dependency 89 95 patchelf --add-needed libudev.so.1 $out/opt/kingsoft/wps-office/office6/addons/cef/libcef.so 90 - ''; 91 - 92 - postFixup = '' 93 - for f in "$out"/bin/*; do 94 - echo "Wrapping $f" 95 - wrapProgram "$f" \ 96 - "''${gappsWrapperArgs[@]}" \ 97 - "''${qtWrapperArgs[@]}" 98 - done 99 96 ''; 100 97 101 98 meta = with lib; {