summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGuillaume Le Vaillant <glv@posteo.net>2020-04-10 14:48:46 +0200
committerGuillaume Le Vaillant <glv@posteo.net>2020-04-10 14:48:46 +0200
commit93299e61273a6bc7e15b3ca7b6f88f15f93a8f95 (patch)
treea9b79ac9772d243e6e7f2dc35dc743575853c728
parentd90286ed5467bb7a0d50aabf252cf7fda78e97dc (diff)
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.
-rw-r--r--gnu/packages/ham-radio.scm25
1 files 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