aboutsummaryrefslogtreecommitdiff
path: root/pkgs/applications/office/softmaker
diff options
context:
space:
mode:
authorDaniël de Kok <me@danieldk.eu>2020-10-17 08:12:23 +0200
committerDaniël de Kok <me@danieldk.eu>2020-10-17 08:18:07 +0200
commitc342e5a6dc98049b9ae91026fd7801a552057090 (patch)
tree86f7e16e3fac5a284dc64d0221031455f40baf2d /pkgs/applications/office/softmaker
parente3b407e555da9300d9e217cf7473f83c8f0effe4 (diff)
softmaker-office: add additional programs to PATH
These seem to be needed for the SoftMaker/FreeOffice unlock code. If they are not added to PATH, startup takes a very long time and reports many segmentation faults. Fixes #71228.
Diffstat (limited to 'pkgs/applications/office/softmaker')
-rw-r--r--pkgs/applications/office/softmaker/generic.nix17
1 files changed, 12 insertions, 5 deletions
diff --git a/pkgs/applications/office/softmaker/generic.nix b/pkgs/applications/office/softmaker/generic.nix
index c7803fa3d1d2..56f3cb74363f 100644
--- a/pkgs/applications/office/softmaker/generic.nix
+++ b/pkgs/applications/office/softmaker/generic.nix
@@ -7,6 +7,9 @@
# product unlocking.
, coreutils, libredirect
+ # Extra utilities used by the SoftMaker applications.
+, gnugrep, utillinux, which
+
, pname, version, edition, suiteName, src, archive
, ...
@@ -59,13 +62,17 @@ in stdenv.mkDerivation {
# procedure fails. This works around that by rewriting /bin/ls
# to the proper path.
#
+ # In addition, it expects some common utilities (which, whereis)
+ # to be in the path.
+ #
# SoftMaker Office restarts itself upon some operations, such
# changing the theme and unlocking. Unfortunately, we do not
# have control over its environment then and it will fail
# with an error.
- lsIntercept = ''
+ extraWrapperArgs = ''
--set LD_PRELOAD "${libredirect}/lib/libredirect.so" \
- --set NIX_REDIRECTS "/bin/ls=${coreutils}/bin/ls"
+ --set NIX_REDIRECTS "/bin/ls=${coreutils}/bin/ls" \
+ --prefix PATH : "${stdenv.lib.makeBinPath [ coreutils gnugrep utillinux which ]}"
'';
in ''
runHook preInstall
@@ -77,11 +84,11 @@ in stdenv.mkDerivation {
# their resource path.
mkdir -p $out/bin
makeWrapper $out/share/${pname}${edition}/planmaker $out/bin/${pname}-planmaker \
- ${lsIntercept}
+ ${extraWrapperArgs}
makeWrapper $out/share/${pname}${edition}/presentations $out/bin/${pname}-presentations \
- ${lsIntercept}
+ ${extraWrapperArgs}
makeWrapper $out/share/${pname}${edition}/textmaker $out/bin/${pname}-textmaker \
- ${lsIntercept}
+ ${extraWrapperArgs}
for size in 16 32 48 64 96 128 256 512 1024; do
mkdir -p $out/share/icons/hicolor/''${size}x''${size}/apps