summary refs log tree commit diff
diff options
context:
space:
mode:
authorMajiir Paktu <majiir@nabaal.net>2022-08-10 18:18:30 -0400
committerMajiir Paktu <majiir@nabaal.net>2022-11-04 14:14:51 -0400
commit76ac62dcdcb77e7e15040846753844b3f4d98206 (patch)
treeac6b1e4f80ed40ddb25e34aff2b967078cf112d9
parent7744e47b09f1fd6f65f0ed3b9f4bb321922ae424 (diff)
downloadnixpkgs-76ac62dcdcb77e7e15040846753844b3f4d98206.tar
nixpkgs-76ac62dcdcb77e7e15040846753844b3f4d98206.tar.gz
nixpkgs-76ac62dcdcb77e7e15040846753844b3f4d98206.tar.bz2
nixpkgs-76ac62dcdcb77e7e15040846753844b3f4d98206.tar.lz
nixpkgs-76ac62dcdcb77e7e15040846753844b3f4d98206.tar.xz
nixpkgs-76ac62dcdcb77e7e15040846753844b3f4d98206.tar.zst
nixpkgs-76ac62dcdcb77e7e15040846753844b3f4d98206.zip
nut: fix search modes not finding dynamic libs
-rw-r--r--pkgs/applications/misc/nut/default.nix14
-rw-r--r--pkgs/applications/misc/nut/hardcode-paths.patch13
2 files changed, 21 insertions, 6 deletions
diff --git a/pkgs/applications/misc/nut/default.nix b/pkgs/applications/misc/nut/default.nix
index e0e196ac143..4a3025cec55 100644
--- a/pkgs/applications/misc/nut/default.nix
+++ b/pkgs/applications/misc/nut/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, pkg-config, neon, libusb-compat-0_1, openssl, udev, avahi, freeipmi
+{ lib, stdenv, fetchurl, substituteAll, pkg-config, neon, libusb-compat-0_1, openssl, udev, avahi, freeipmi
 , libtool, makeWrapper, autoreconfHook, fetchpatch
 }:
 
@@ -17,6 +17,13 @@ stdenv.mkDerivation rec {
       url = "https://github.com/networkupstools/nut/commit/612c05efb3c3b243da603a3a050993281888b6e3.patch";
       sha256 = "0jdbii1z5sqyv24286j5px65j7b3gp8zk3ahbph83pig6g46m3hs";
     })
+    (substituteAll {
+      src = ./hardcode-paths.patch;
+      avahi = "${avahi}/lib";
+      freeipmi = "${freeipmi}/lib";
+      libusb = "${libusb-compat-0_1}/lib";
+      neon = "${neon}/lib";
+    })
   ];
 
   buildInputs = [ neon libusb-compat-0_1 openssl udev avahi freeipmi ];
@@ -38,11 +45,6 @@ stdenv.mkDerivation rec {
 
   NIX_CFLAGS_COMPILE = [ "-std=c++14" ];
 
-  postInstall = ''
-    wrapProgram $out/bin/nut-scanner --prefix LD_LIBRARY_PATH : \
-      "$out/lib:${neon}/lib:${libusb-compat-0_1.out}/lib:${avahi}/lib:${freeipmi}/lib"
-  '';
-
   meta = with lib; {
     description = "Network UPS Tools";
     longDescription = ''
diff --git a/pkgs/applications/misc/nut/hardcode-paths.patch b/pkgs/applications/misc/nut/hardcode-paths.patch
new file mode 100644
index 00000000000..db6d68471ce
--- /dev/null
+++ b/pkgs/applications/misc/nut/hardcode-paths.patch
@@ -0,0 +1,13 @@
+--- a/tools/nut-scanner/nutscan-init.c
++++ b/tools/nut-scanner/nutscan-init.c
+@@ -44,6 +44,10 @@ int nutscan_load_upsclient_library(const char *libname_path);
+ 
+ /* FIXME: would be good to get more from /etc/ld.so.conf[.d] */
+ char * search_paths[] = {
++	"@avahi@",
++	"@freeipmi@",
++	"@libusb@",
++	"@neon@",
+ 	LIBDIR,
+ 	"/usr/lib64",
+ 	"/lib64",