summary refs log tree commit diff
path: root/pkgs/applications/office/gnumeric
diff options
context:
space:
mode:
authorBruce Toll <4109762+tollb@users.noreply.github.com>2019-01-26 10:23:23 -0500
committerBruce Toll <4109762+tollb@users.noreply.github.com>2019-01-26 15:01:54 -0500
commit85961441eea85b37b53fcbc35d83dd5989d9db70 (patch)
tree262863185f6ccf181fedb8ef5386fb039b8a209b /pkgs/applications/office/gnumeric
parent4fb8bc8238aa0366d78bae6095676ef7e08c17b2 (diff)
gnumeric: fix wrapping
Incorporate wrapGAppsHook so that all gnumeric binaries are wrapped,
following the convention used by many gnome applications.

This addresses two issues:

1.  The packaged ssconvert, ssdiff, ssgrep, and ssindex executables
    in bin are not currently wrapped so some expected environment
    variables including XDG_DATA_DIRS and GIO_EXTRA_MODULES are not
    set. The result is many warnings on stderr when running these
    commands, e.g.

    ==================================================================
    CRITICAL **:...go_conf_add_monitor: assertion 'node || key' failed
    CRITICAL **:...go_conf_get_node: assertion 'parent || key' failed
    WARNING **:...unknown GOConfMonitor id.
    ==================================================================

2.  None of the binaries, including gnumeric, currently wrap the
    environment variable GDK_PIXBUF_MODULE_FILE. This can cause
    segfaults if an incompatible GDK_PIXBUF_MODULE_FILE is already set
    in the environment (e.g. by plasma5). This could be encountered
    running a nixos pre-19.03 gnumeric binary from a nixos 18.09 KDE
    session.
Diffstat (limited to 'pkgs/applications/office/gnumeric')
-rw-r--r--pkgs/applications/office/gnumeric/default.nix12
1 files changed, 2 insertions, 10 deletions
diff --git a/pkgs/applications/office/gnumeric/default.nix b/pkgs/applications/office/gnumeric/default.nix
index 5d0985b0ba2ea..e42777bdd0060 100644
--- a/pkgs/applications/office/gnumeric/default.nix
+++ b/pkgs/applications/office/gnumeric/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, pkgconfig, intltool, perlPackages
-, goffice, gnome3, makeWrapper, gtk3, bison, pythonPackages
+, goffice, gnome3, wrapGAppsHook, gtk3, bison, pythonPackages
 , itstool
 }:
 
@@ -16,7 +16,7 @@ in stdenv.mkDerivation rec {
 
   configureFlags = [ "--disable-component" ];
 
-  nativeBuildInputs = [ pkgconfig intltool bison itstool makeWrapper ];
+  nativeBuildInputs = [ pkgconfig intltool bison itstool wrapGAppsHook ];
 
   # ToDo: optional libgda, introspection?
   buildInputs = [
@@ -26,14 +26,6 @@ in stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
-  preFixup = ''
-    for f in "$out"/bin/gnumeric-*; do
-      wrapProgram $f \
-        --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH" \
-        ${stdenv.lib.optionalString (!stdenv.isDarwin) "--prefix GIO_EXTRA_MODULES : '${stdenv.lib.getLib gnome3.dconf}/lib/gio/modules'"}
-    done
-  '';
-
   passthru = {
     updateScript = gnome3.updateScript {
       packageName = pname;