about summary refs log tree commit diff
path: root/pkgs/applications
diff options
context:
space:
mode:
authorGabriel Ebner <gebner@gebner.org>2021-04-03 08:11:52 +0200
committerGitHub <noreply@github.com>2021-04-03 08:11:52 +0200
commit3ab6e84b79abc45855e666fff33078189b4960c3 (patch)
tree5212aeeb6db482e9424ed9eb7fd2d02fbb88c0a8 /pkgs/applications
parent990196a38197e0fa88c7c2dc2e26c01444965e08 (diff)
parent9508fcff310fa0ec66d9e035b8d13f9eff141044 (diff)
downloadnixlib-3ab6e84b79abc45855e666fff33078189b4960c3.tar
nixlib-3ab6e84b79abc45855e666fff33078189b4960c3.tar.gz
nixlib-3ab6e84b79abc45855e666fff33078189b4960c3.tar.bz2
nixlib-3ab6e84b79abc45855e666fff33078189b4960c3.tar.lz
nixlib-3ab6e84b79abc45855e666fff33078189b4960c3.tar.xz
nixlib-3ab6e84b79abc45855e666fff33078189b4960c3.tar.zst
nixlib-3ab6e84b79abc45855e666fff33078189b4960c3.zip
Merge pull request #118327 from gebner/spnav
libspnav: remove nonstandard patches, fix segfaults
Diffstat (limited to 'pkgs/applications')
-rw-r--r--pkgs/applications/graphics/freecad/default.nix3
-rw-r--r--pkgs/applications/graphics/openscad/default.nix9
-rw-r--r--pkgs/applications/misc/blender/default.nix2
-rw-r--r--pkgs/applications/misc/spnavcfg/default.nix28
4 files changed, 39 insertions, 3 deletions
diff --git a/pkgs/applications/graphics/freecad/default.nix b/pkgs/applications/graphics/freecad/default.nix
index 473415788625..440cc7fa38df 100644
--- a/pkgs/applications/graphics/freecad/default.nix
+++ b/pkgs/applications/graphics/freecad/default.nix
@@ -1,4 +1,5 @@
 { lib
+, stdenv
 , mkDerivation
 , fetchFromGitHub
 , fetchpatch
@@ -35,7 +36,7 @@
 , scipy
 , shiboken2
 , soqt
-, spaceNavSupport ? false
+, spaceNavSupport ? stdenv.isLinux
 , swig
 , vtk
 , wrapQtAppsHook
diff --git a/pkgs/applications/graphics/openscad/default.nix b/pkgs/applications/graphics/openscad/default.nix
index 3accf2fd5904..ac41a23f8bb8 100644
--- a/pkgs/applications/graphics/openscad/default.nix
+++ b/pkgs/applications/graphics/openscad/default.nix
@@ -25,6 +25,7 @@
 , mkDerivation
 , qtmacextras
 , qmake
+, spacenavSupport ? stdenv.isLinux, libspnav
 }:
 
 mkDerivation rec {
@@ -46,9 +47,15 @@ mkDerivation rec {
     qtbase qtmultimedia qscintilla
   ] ++ lib.optionals stdenv.isLinux [ libGLU libGL ]
     ++ lib.optional stdenv.isDarwin qtmacextras
+    ++ lib.optional spacenavSupport libspnav
   ;
 
-  qmakeFlags = [ "VERSION=${version}" ];
+  qmakeFlags = [ "VERSION=${version}" ] ++
+    lib.optionals spacenavSupport [
+      "ENABLE_SPNAV=1"
+      "SPNAV_INCLUDEPATH=${libspnav}/include"
+      "SPNAV_LIBPATH=${libspnav}/lib"
+    ];
 
   # src/lexer.l:36:10: fatal error: parser.hxx: No such file or directory
   enableParallelBuilding = false; # true by default due to qmake
diff --git a/pkgs/applications/misc/blender/default.nix b/pkgs/applications/misc/blender/default.nix
index 69f0d58159e4..5df5dad519ad 100644
--- a/pkgs/applications/misc/blender/default.nix
+++ b/pkgs/applications/misc/blender/default.nix
@@ -7,7 +7,7 @@
 , jackaudioSupport ? false, libjack2
 , cudaSupport ? config.cudaSupport or false, cudatoolkit
 , colladaSupport ? true, opencollada
-, spaceNavSupport ? false, libspnav
+, spaceNavSupport ? stdenv.isLinux, libspnav
 , makeWrapper
 , pugixml, llvmPackages, SDL, Cocoa, CoreGraphics, ForceFeedback, OpenAL, OpenGL
 , embree, gmp
diff --git a/pkgs/applications/misc/spnavcfg/default.nix b/pkgs/applications/misc/spnavcfg/default.nix
new file mode 100644
index 000000000000..caeaa42192de
--- /dev/null
+++ b/pkgs/applications/misc/spnavcfg/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, lib, fetchFromGitHub, pkg-config, gtk2 }:
+
+stdenv.mkDerivation rec {
+  pname = "spnavcfg";
+  version = "0.3.1";
+
+  src = fetchFromGitHub {
+    owner = "FreeSpacenav";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "180mkdis15gxs79rr3f7hpwa1p6v81bybw37pzzdjnmqwqrc08a0";
+  };
+
+  postPatch = ''
+    sed -i s/4775/775/ Makefile.in
+  '';
+
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ gtk2 ];
+
+  meta = with lib; {
+    homepage = "http://spacenav.sourceforge.net/";
+    description = "Interactive configuration GUI for space navigator input devices";
+    license = licenses.gpl3Plus;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ gebner ];
+  };
+}