From 93299e61273a6bc7e15b3ca7b6f88f15f93a8f95 Mon Sep 17 00:00:00 2001 From: Guillaume Le Vaillant Date: Fri, 10 Apr 2020 14:48:46 +0200 Subject: gnu: gnuradio: Fix gnuradio-companion GUI not showing. * gnu/packages/ham-radio.scm (gnuradio)[arguments]: Add 'wrap-glib-or-gtk' and 'wrap-with-GI_TYPELIB_PATH' phases. --- gnu/packages/ham-radio.scm | 25 +++++++++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ham-radio.scm b/gnu/packages/ham-radio.scm index 0758617176..56a9719414 100644 --- a/gnu/packages/ham-radio.scm +++ b/gnu/packages/ham-radio.scm @@ -58,6 +58,7 @@ #:use-module (gnu packages xml) #:use-module (gnu packages xorg) #:use-module (guix build-system cmake) + #:use-module (guix build-system glib-or-gtk) #:use-module (guix build-system gnu) #:use-module (guix build-system python) #:use-module (guix build-system qt)) @@ -260,9 +261,12 @@ used by RDS Spy, and audio files containing @dfn{multiplex} signals (MPX).") ("zeromq" ,zeromq))) (arguments `(#:modules ((guix build cmake-build-system) + ((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:) ((guix build python-build-system) #:prefix python:) - (guix build utils)) + (guix build utils) + (ice-9 match)) #:imported-modules (,@%cmake-build-system-modules + (guix build glib-or-gtk-build-system) (guix build python-build-system)) #:phases (modify-phases %standard-phases @@ -293,7 +297,24 @@ used by RDS Spy, and audio files containing @dfn{multiplex} signals (MPX).") (setenv "DISPLAY" ":1") #t)) (add-after 'install 'wrap-python - (assoc-ref python:%standard-phases 'wrap))))) + (assoc-ref python:%standard-phases 'wrap)) + (add-after 'wrap-python 'wrap-glib-or-gtk + (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap)) + (add-after 'wrap-glib-or-gtk 'wrap-with-GI_TYPELIB_PATH + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (paths (map (match-lambda + ((output . directory) + (let ((girepodir (string-append + directory + "/lib/girepository-1.0"))) + (if (file-exists? girepodir) + girepodir + #f)))) + inputs))) + (wrap-program (string-append out "/bin/gnuradio-companion") + `("GI_TYPELIB_PATH" ":" prefix ,(filter identity paths)))) + #t))))) (synopsis "Toolkit for software-defined radios") (description "GNU Radio is a development toolkit that provides signal processing blocks -- cgit v1.2.3