diff --git a/pkgs/development/libraries/liblxi/default.nix b/pkgs/development/libraries/liblxi/default.nix index 1ca4043a024d..b63f3d9df0d5 100644 --- a/pkgs/development/libraries/liblxi/default.nix +++ b/pkgs/development/libraries/liblxi/default.nix @@ -1,20 +1,20 @@ { lib, stdenv, fetchFromGitHub -, pkg-config, autoreconfHook +, meson, ninja, pkg-config, cmake , libtirpc, rpcsvc-proto, avahi, libxml2 }: stdenv.mkDerivation rec { pname = "liblxi"; - version = "1.13"; + version = "1.18"; src = fetchFromGitHub { owner = "lxi-tools"; repo = "liblxi"; rev = "v${version}"; - sha256 = "129m0k2wrlgs25qkskynljddqspasla1x8iq51vmg38nhnilpqf6"; + sha256 = "sha256-2tZWIN58J6zNHG3dahNfg5eNiS8ykWFQyRSyikuzdjE="; }; - nativeBuildInputs = [ autoreconfHook pkg-config rpcsvc-proto ]; + nativeBuildInputs = [ meson ninja cmake pkg-config rpcsvc-proto ]; buildInputs = [ libtirpc avahi libxml2 ]; diff --git a/pkgs/tools/networking/lxi-tools/default.nix b/pkgs/tools/networking/lxi-tools/default.nix index 92ef7f688a5a..c71376a5021b 100644 --- a/pkgs/tools/networking/lxi-tools/default.nix +++ b/pkgs/tools/networking/lxi-tools/default.nix @@ -1,22 +1,42 @@ { lib, stdenv, fetchFromGitHub -, autoreconfHook, pkg-config -, liblxi, readline, lua +, meson, ninja, cmake, pkg-config +, liblxi, readline, lua, bash-completion +, wrapGAppsHook +, glib, gtk4, gtksourceview5, libadwaita, json-glib +, desktop-file-utils, appstream-glib +, gsettings-desktop-schemas +, withGui ? false }: stdenv.mkDerivation rec { pname = "lxi-tools"; - version = "1.21"; + version = "2.3"; src = fetchFromGitHub { owner = "lxi-tools"; repo = "lxi-tools"; rev = "v${version}"; - sha256 = "0rkp6ywsw2zv7hpbr12kba79wkcwqin7xagxxhd968rbfkfdxlwc"; + sha256 = "sha256-c53Jn/9xKsxQDsRWU2LKtNWs28AuG4t5OwYOAMxpcPA="; }; - nativeBuildInputs = [ autoreconfHook pkg-config ]; + nativeBuildInputs = [ + meson ninja cmake pkg-config + ] ++ lib.optional withGui wrapGAppsHook; - buildInputs = [ liblxi readline lua ]; + buildInputs = [ + liblxi readline lua bash-completion + ] ++ lib.optionals withGui [ + glib gtk4 gtksourceview5 libadwaita json-glib + desktop-file-utils appstream-glib + gsettings-desktop-schemas + ]; + + postUnpack = "sed -i '/meson.add_install.*$/d' source/meson.build"; + + mesonFlags = lib.optional (!withGui) "-Dgui=false"; + + postInstall = lib.optionalString withGui + "glib-compile-schemas $out/share/glib-2.0/schemas"; meta = with lib; { description = "Tool for communicating with LXI compatible instruments"; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a50f0c9093f2..fcb049f54fc0 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -30213,6 +30213,7 @@ with pkgs; lv2-cpp-tools = callPackage ../applications/audio/lv2-cpp-tools { }; lxi-tools = callPackage ../tools/networking/lxi-tools { }; + lxi-tools-gui = callPackage ../tools/networking/lxi-tools { withGui = true; }; lynx = callPackage ../applications/networking/browsers/lynx { };