[PATCH 0/9] Add sdrangel

  • Done
  • quality assurance status badge
Details
3 participants
  • Guillaume Le Vaillant
  • Leo Famulari
  • Maxime Devos
Owner
unassigned
Submitted by
Guillaume Le Vaillant
Severity
normal
G
G
Guillaume Le Vaillant wrote on 4 May 2021 10:46
(address . guix-patches@gnu.org)
87czu6rimc.fsf@yamatai
Here's a patch series adding sdrangel and its dependencies.
Please tell me if you see things to fix before I push it.

Also, the dsdcc library doesn't have all its features as I didn't
compile it with mbelib support because of the following warning in the
"Readme.md" file:

Toggle snippet (9 lines)
While DSDcc is intended to be patent-free, `mbelib` that it uses
describes functions that may be covered by one or more U.S. patents
owned by DVSI Inc. The source code itself should not be infringing as it
merely describes possible methods of implementation. Compiling or using
`mbelib` may infringe on patents rights in your jurisdiction and/or
require licensing. It is unknown if DVSI will sell licenses for software
that uses `mbelib`.

Even if mbelib is free software, I guess the U.S. patent on the
AMBE standard [1] prevents it from being included in Guix.
What do you think?

-----BEGIN PGP SIGNATURE-----

iIUEAREKAC0WIQTLxZxm7Ce5cXlAaz5r6CCK3yH+PwUCYJEJ+w8cZ2x2QHBvc3Rl
by5uZXQACgkQa+ggit8h/j9CtQEAgIaOmIsR4UprqbdR9JShQsLTFCcWhTOn4Bza
BVipmCYA/1oyOidWPUq4GP2ObTmQBGX4i2Icb18vMzNKAMK9l/yI
=PXwd
-----END PGP SIGNATURE-----

G
G
Guillaume Le Vaillant wrote on 4 May 2021 10:56
[PATCH 1/9] gnu: Add csdr.
(address . 48217@debbugs.gnu.org)(name . Guillaume Le Vaillant)(address . glv@posteo.net)
20210504085705.5298-1-glv@posteo.net
* gnu/packages/radio.scm (csdr): New variable.
---
gnu/packages/radio.scm | 54 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 54 insertions(+)

Toggle diff (64 lines)
diff --git a/gnu/packages/radio.scm b/gnu/packages/radio.scm
index e6d5ef0203..382fdf85e3 100644
--- a/gnu/packages/radio.scm
+++ b/gnu/packages/radio.scm
@@ -1575,3 +1575,57 @@ receiver.")
"@code{welle.io} is a Digital Audio Broadcasting (DAB and DAB+) software
defined radio with support for rtl-sdr.")
(license license:gpl2+)))
+
+(define-public csdr
+ ;; No release since 2017, use commit directly.
+ (let ((commit "6ef2a74206887155290a54c7117636f66742f858")
+ (revision "1"))
+ (package
+ (name "csdr")
+ (version (git-version "0.15" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/ha7ilm/csdr")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0ic35130lf66lk3wawgc5bcg711l7chv9al1hzdc1xrmq9qf9hri"))))
+ (build-system gnu-build-system)
+ (inputs
+ `(("fftwf" ,fftwf)))
+ (arguments
+ `(#:make-flags
+ (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
+ "PARSEVECT=no")
+ #:tests? #f ; No check phase
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'configure
+ (lambda* (#:key outputs #:allow-other-keys)
+ (substitute* "Makefile"
+ (("PARAMS_MISC = -Wno-unused-result" all)
+ ;; The 'validate-runpath' phase fails without this.
+ (string-append
+ all " -Wl,-rpath=" (assoc-ref outputs "out") "/lib"))
+ (("PARAMS_SIMD =.*")
+ ;; Disable to make reproducibility and cross-compilation work.
+ "")
+ (("gcc ")
+ ,(string-append (cc-for-target) " "))
+ (("g\\+\\+ ")
+ ,(string-append (cxx-for-target) " ")))))
+ (add-before 'install 'make-installation-directories
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (mkdir-p (string-append out "/bin"))
+ (mkdir-p (string-append out "/lib"))))))))
+ (home-page "https://github.com/ha7ilm/csdr")
+ (synopsis "DSP for software defined radio")
+ (description
+ "This package includes the @code{libcsdr} library of
+@acronym{DSP, Digital Signal Processing} functions for
+@acronym{SDRs, Software Defined Radios}, and the @code{csdr} command line
+program that can be used to build simple signal processing flow graphs.")
+ (license license:gpl3+))))
--
2.31.1
G
G
Guillaume Le Vaillant wrote on 4 May 2021 10:56
[PATCH 2/9] gnu: Add serialdv.
(address . 48217@debbugs.gnu.org)(name . Guillaume Le Vaillant)(address . glv@posteo.net)
20210504085705.5298-2-glv@posteo.net
* gnu/packages/radio.scm (serialdv): New variable.
---
gnu/packages/radio.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)

Toggle diff (33 lines)
diff --git a/gnu/packages/radio.scm b/gnu/packages/radio.scm
index 382fdf85e3..63088394bf 100644
--- a/gnu/packages/radio.scm
+++ b/gnu/packages/radio.scm
@@ -1629,3 +1629,26 @@ defined radio with support for rtl-sdr.")
@acronym{SDRs, Software Defined Radios}, and the @code{csdr} command line
program that can be used to build simple signal processing flow graphs.")
(license license:gpl3+))))
+
+(define-public serialdv
+ (package
+ (name "serialdv")
+ (version "1.1.4")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/f4exb/serialDV")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0d88h2wjhf79nisiv96bq522hkbknzm88wsv0q9k33mzmrwnrx93"))))
+ (build-system cmake-build-system)
+ (arguments
+ `(#:tests? #f)) ; No test suite.
+ (home-page "https://github.com/f4exb/serialDV")
+ (synopsis "Audio interface for AMBE3000 based devices")
+ (description
+ "SerialDV is a minimal interface to encode and decode audio with AMBE3000
+based devices in packet mode over a serial link.")
+ (license license:gpl3+)))
--
2.31.1
G
G
Guillaume Le Vaillant wrote on 4 May 2021 10:57
[PATCH 4/9] gnu: Add cm256cc.
(address . 48217@debbugs.gnu.org)(name . Guillaume Le Vaillant)(address . glv@posteo.net)
20210504085705.5298-4-glv@posteo.net
* gnu/packages/radio.scm (cm256cc): New variable.
---
gnu/packages/radio.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (39 lines)
diff --git a/gnu/packages/radio.scm b/gnu/packages/radio.scm
index 02a1822072..b4c38ba255 100644
--- a/gnu/packages/radio.scm
+++ b/gnu/packages/radio.scm
@@ -1637,3 +1637,32 @@ program that can be used to build simple signal processing flow graphs.")
"SerialDV is a minimal interface to encode and decode audio with AMBE3000
based devices in packet mode over a serial link.")
(license license:gpl3+)))
+
+(define-public cm256cc
+ (package
+ (name "cm256cc")
+ (version "1.1.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/f4exb/cm256cc")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1n9v7g6d370263bgqrjv38s9aq5953rzy7jvd8i30xq6aram9djg"))))
+ (build-system cmake-build-system)
+ (arguments
+ ;; Disable some SIMD features for reproducibility.
+ `(#:configure-flags '("-DENABLE_DISTRIBUTION=1")
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ (invoke "./cm256_test"))))))
+ (home-page "https://github.com/f4exb/cm256cc")
+ (synopsis "Cauchy MDS Block Erasure Codec")
+ (description
+ "This is a C++ library implementing fast GF(256) Cauchy MDS Block Erasure
+Codec.")
+ (license license:gpl3+)))
--
2.31.1
G
G
Guillaume Le Vaillant wrote on 4 May 2021 10:56
[PATCH 3/9] gnu: aptdec: Update to 1.7-1.5f91799.
(address . 48217@debbugs.gnu.org)(name . Guillaume Le Vaillant)(address . glv@posteo.net)
20210504085705.5298-3-glv@posteo.net
* gnu/packages/radio.scm (aptdec): Update to 1.7-1.5f91799.
[build-system]: Switch to cmake-build-system.
[arguments]: Remove 'make-flags". Remove custom 'configure' and 'install'
phases.
---
gnu/packages/radio.scm | 65 ++++++++++++++++--------------------------
1 file changed, 25 insertions(+), 40 deletions(-)

Toggle diff (82 lines)
diff --git a/gnu/packages/radio.scm b/gnu/packages/radio.scm
index 63088394bf..02a1822072 100644
--- a/gnu/packages/radio.scm
+++ b/gnu/packages/radio.scm
@@ -246,50 +246,35 @@ memory contents between them.")
license:lgpl3+)))) ; chirp/elib_intl.py
(define-public aptdec
- (package
- (name "aptdec")
- (version "1.7")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/Xerbo/aptdec")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1hf0zb51qc6fyhdjxyij1n3vgwnw3cwksc3r11szbhkml14qjnzk"))))
- (build-system gnu-build-system)
- (inputs
- `(("libpng" ,libpng)
- ("libsndfile" ,libsndfile)))
- (arguments
- `(#:make-flags
- (list
- (string-append "CC="
- (if ,(%current-target-system)
- (string-append (assoc-ref %build-inputs "cross-gcc")
- "/bin/" ,(%current-target-system) "-gcc")
- "gcc"))
- (string-append "PREFIX=" %output)
- (string-append "RPM_BUILD_ROOT=" %output))
- #:tests? #f ; no tests
- #:phases
- (modify-phases %standard-phases
- (delete 'configure)
- (replace 'install
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (install-file "atpdec" (string-append out "/bin")))
- #t)))))
- (home-page "https://github.com/Xerbo/aptdec")
- (synopsis "NOAA Automatic Picture Transmission (APT) decoder")
- (description "Aptdec decodes Automatic Picture Transmission (APT) images.
+ ;; No release since 2013, use commit directly.
+ (let ((commit "5f91799637d93dfe7791caa7e9a6683050c4f8f3")
+ (revision "1"))
+ (package
+ (name "aptdec")
+ (version (git-version "1.7" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Xerbo/aptdec")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0i7vkjjrq392gs9qaibr7j3v4hijqqg8458dn21dwh16ncrvr9bp"))))
+ (build-system cmake-build-system)
+ (inputs
+ `(("libpng" ,libpng)
+ ("libsndfile" ,libsndfile)))
+ (arguments
+ `(#:tests? #f)) ; no tests
+ (home-page "https://github.com/Xerbo/aptdec")
+ (synopsis "NOAA Automatic Picture Transmission (APT) decoder")
+ (description "Aptdec decodes Automatic Picture Transmission (APT) images.
These are medium resolution images of the Earth transmitted by, among other
satellites, the POES NOAA weather satellite series. These transmissions are
on a frequency of 137 MHz. They can be received using an inexpensive antenna
and a dedicated receiver.")
- (license license:gpl2+)))
+ (license license:gpl2+))))
(define-public redsea
(package
--
2.31.1
G
G
Guillaume Le Vaillant wrote on 4 May 2021 10:57
[PATCH 5/9] gnu: Add libdab.
(address . 48217@debbugs.gnu.org)(name . Guillaume Le Vaillant)(address . glv@posteo.net)
20210504085705.5298-5-glv@posteo.net
* gnu/packages/radio.scm (libdab): New variable.
---
gnu/packages/radio.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)

Toggle diff (44 lines)
diff --git a/gnu/packages/radio.scm b/gnu/packages/radio.scm
index b4c38ba255..abcd972e03 100644
--- a/gnu/packages/radio.scm
+++ b/gnu/packages/radio.scm
@@ -1666,3 +1666,37 @@ based devices in packet mode over a serial link.")
"This is a C++ library implementing fast GF(256) Cauchy MDS Block Erasure
Codec.")
(license license:gpl3+)))
+
+(define-public libdab
+ ;; No release since 2017, use commit directly.
+ (let ((commit "b578d02eda60f613d35bab5d762ae7c9a27758d8")
+ (revision "1"))
+ (package
+ (name "libdab")
+ (version (git-version "0.8" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/JvanKatwijk/dab-cmdline")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0j339kx3n2plgfw7ikpp7b81h5n68wmsgflwljbh2sy8j62faik9"))))
+ (build-system cmake-build-system)
+ (inputs
+ `(("faad2" ,faad2)
+ ("fftwf" ,fftwf)
+ ("zlib" ,zlib)))
+ (arguments
+ `(#:tests? #f ; No test suite.
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'enter-sources-directory
+ (lambda _
+ (chdir "library"))))))
+ (home-page "https://github.com/JvanKatwijk/dab-cmdline")
+ (synopsis "DAB decoding library")
+ (description "This is a library to decode @acronym{DAB/DAB+, Digital
+Audio Broadcasting}.")
+ (license license:gpl2+))))
--
2.31.1
G
G
Guillaume Le Vaillant wrote on 4 May 2021 10:57
[PATCH 6/9] gnu: Add sgp4.
(address . 48217@debbugs.gnu.org)(name . Guillaume Le Vaillant)(address . glv@posteo.net)
20210504085705.5298-6-glv@posteo.net
* gnu/packages/astronomy.scm (sgp4): New variable.
---
gnu/packages/astronomy.scm | 35 ++++++++++++++++++++++++++++++++++-
1 file changed, 34 insertions(+), 1 deletion(-)

Toggle diff (55 lines)
diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm
index 85164e7262..dfcf144545 100644
--- a/gnu/packages/astronomy.scm
+++ b/gnu/packages/astronomy.scm
@@ -4,7 +4,7 @@
;;; Copyright © 2018, 2019, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2019 by Amar Singh <nly@disroot.org>
;;; Copyright © 2020 R Veera Kumar <vkor@vkten.in>
-;;; Copyright © 2020 Guillaume Le Vaillant <glv@posteo.net>
+;;; Copyright © 2020, 2021 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2021 Sharlatan Hellseher <sharlatanus@gmail.com>
;;;
;;; This file is part of GNU Guix.
@@ -792,6 +792,39 @@ provide you with detailed information about each pass.")
(home-page "http://gpredict.oz9aec.net/index.php")
(license license:gpl2+)))
+(define-public sgp4
+ ;; No tagged releases, use commit directly.
+ (let ((commit "ca9d4d97af4ee62461de6f13e0c85d1dc6000040")
+ (revision "1"))
+ (package
+ (name "sgp4")
+ (version (git-version "0.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/dnwrnr/sgp4")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1xwfa6papmd2qz5w0hwzvijmzvp9np8dlw3q3qz4bmsippzjv8p7"))))
+ (build-system cmake-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ ;; Tests fails, probably because of a few "(e <= -0.001)" errors.
+ ;; Or maybe this is not the right way to run the tests?
+ ;; (invoke "runtest/runtest")
+ #t)))))
+ (home-page "https://github.com/dnwrnr/sgp4")
+ (synopsis "Simplified perturbations models library")
+ (description
+ "This is a library implementing the simplified perturbations model.
+It can be used to calculate the trajectory of satellites.")
+ (license license:asl2.0))))
+
(define-public indi
(package
(name "indi")
--
2.31.1
G
G
Guillaume Le Vaillant wrote on 4 May 2021 10:57
[PATCH 7/9] gnu: Add sdrangel.
(address . 48217@debbugs.gnu.org)(name . Guillaume Le Vaillant)(address . glv@posteo.net)
20210504085705.5298-7-glv@posteo.net
* gnu/packages/radio.scm (sdrangel): New variable.
---
gnu/packages/radio.scm | 68 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 68 insertions(+)

Toggle diff (95 lines)
diff --git a/gnu/packages/radio.scm b/gnu/packages/radio.scm
index abcd972e03..203183786c 100644
--- a/gnu/packages/radio.scm
+++ b/gnu/packages/radio.scm
@@ -31,6 +31,7 @@
#:use-module (guix utils)
#:use-module (gnu packages admin)
#:use-module (gnu packages algebra)
+ #:use-module (gnu packages astronomy)
#:use-module (gnu packages audio)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
@@ -52,9 +53,11 @@
#:use-module (gnu packages gnome)
#:use-module (gnu packages golang)
#:use-module (gnu packages gps)
+ #:use-module (gnu packages graphviz)
#:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk)
#:use-module (gnu packages image)
+ #:use-module (gnu packages image-processing)
#:use-module (gnu packages javascript)
#:use-module (gnu packages libusb)
#:use-module (gnu packages linux)
@@ -1700,3 +1703,68 @@ Codec.")
(description "This is a library to decode @acronym{DAB/DAB+, Digital
Audio Broadcasting}.")
(license license:gpl2+))))
+
+(define-public sdrangel
+ (package
+ (name "sdrangel")
+ (version "6.10.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/f4exb/sdrangel")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0dpymjpg1x7yyrlhh8sdmf5l7il9ymx32zcpm78wwrw3df4q1w3m"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("doxygen" ,doxygen)
+ ("graphviz" ,graphviz)
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("airspyhf" ,airspyhf)
+ ("alsa-lib" ,alsa-lib)
+ ("aptdec" ,aptdec)
+ ("boost" ,boost)
+ ("cm256cc" ,cm256cc)
+ ("codec2" ,codec2)
+ ("faad2" ,faad2)
+ ("ffmpeg" ,ffmpeg)
+ ("fftwf" ,fftwf)
+ ("hackrf" ,hackrf)
+ ("libdab" ,libdab)
+ ("libusb" ,libusb)
+ ("libxml2" ,libxml2)
+ ("opencv" ,opencv)
+ ("opus" ,opus)
+ ("pulseaudio" ,pulseaudio)
+ ("qtbase" ,qtbase)
+ ("qtcharts" ,qtcharts)
+ ("qtdeclarative" ,qtdeclarative)
+ ("qtlocation" ,qtlocation)
+ ("qtmultimedia" ,qtmultimedia)
+ ("qtserialport" ,qtserialport)
+ ("qtspeech" ,qtspeech)
+ ("qtwebsockets" ,qtwebsockets)
+ ("rtl-sdr" ,rtl-sdr)
+ ("serialdv" ,serialdv)
+ ("sgp4" ,sgp4)
+ ("zlib" ,zlib)))
+ (arguments
+ `(#:tests? #f ; No test suite.
+ #:configure-flags
+ (list (string-append "-DAPT_DIR="
+ (assoc-ref %build-inputs "aptdec"))
+ (string-append "-DDAB_DIR="
+ (assoc-ref %build-inputs "libdab"))
+ (string-append "-DSERIALDV_DIR="
+ (assoc-ref %build-inputs "serialdv"))
+ (string-append "-DSGP4_DIR="
+ (assoc-ref %build-inputs "sgp4")))))
+ (home-page "https://github.com/f4exb/sdrangel/wiki")
+ (synopsis "Software defined radio")
+ (description
+ "SDRangel is a Qt software defined radio and signal analyzer frontend for
+various hardware.")
+ (license license:gpl3+)))
--
2.31.1
G
G
Guillaume Le Vaillant wrote on 4 May 2021 10:57
[PATCH 8/9] gnu: Add dsdcc.
(address . 48217@debbugs.gnu.org)(name . Guillaume Le Vaillant)(address . glv@posteo.net)
20210504085705.5298-8-glv@posteo.net
* gnu/packages/radio.scm (dsdcc): New variable.
---
gnu/packages/radio.scm | 32 ++++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+)

Toggle diff (45 lines)
diff --git a/gnu/packages/radio.scm b/gnu/packages/radio.scm
index 203183786c..85373e0b5b 100644
--- a/gnu/packages/radio.scm
+++ b/gnu/packages/radio.scm
@@ -1704,6 +1704,38 @@ Codec.")
Audio Broadcasting}.")
(license license:gpl2+))))
+(define-public dsdcc
+ (package
+ (name "dsdcc")
+ (version "1.9.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/f4exb/dsdcc")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0jgzpv4d6ckd0sdq6438rjh3m6knj6gx63627fajch74hxrvclzj"))))
+ (build-system cmake-build-system)
+ (inputs
+ `(("serialdv" ,serialdv)))
+ (arguments
+ `(#:tests? #f ; No test suite.
+ #:configure-flags
+ (list (string-append "-DLIBSERIALDV_INCLUDE_DIR="
+ (assoc-ref %build-inputs "serialdv")
+ "/include/serialdv")
+ (string-append "-DLIBSERIALDV_LIBRARY="
+ (assoc-ref %build-inputs "serialdv")
+ "/lib/libserialdv.so"))))
+ (home-page "https://github.com/f4exb/dsdcc")
+ (synopsis "Digital speech decoder")
+ (description
+ "This package provides a library and a program to decode several digital
+voice formats.")
+ (license license:gpl3+)))
+
(define-public sdrangel
(package
(name "sdrangel")
--
2.31.1
G
G
Guillaume Le Vaillant wrote on 4 May 2021 10:57
[PATCH 9/9] gnu: sdrangel: Add dsdcc support.
(address . 48217@debbugs.gnu.org)(name . Guillaume Le Vaillant)(address . glv@posteo.net)
20210504085705.5298-9-glv@posteo.net
* gnu/packages/radio.scm (sdrangel)[inputs]: Add dsdcc. Remove libxml2.
[arguments]: Update 'configure-flags'.
---
gnu/packages/radio.scm | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

Toggle diff (30 lines)
diff --git a/gnu/packages/radio.scm b/gnu/packages/radio.scm
index 85373e0b5b..a9c7447ec0 100644
--- a/gnu/packages/radio.scm
+++ b/gnu/packages/radio.scm
@@ -1761,13 +1761,13 @@ voice formats.")
("boost" ,boost)
("cm256cc" ,cm256cc)
("codec2" ,codec2)
+ ("dsdcc" ,dsdcc)
("faad2" ,faad2)
("ffmpeg" ,ffmpeg)
("fftwf" ,fftwf)
("hackrf" ,hackrf)
("libdab" ,libdab)
("libusb" ,libusb)
- ("libxml2" ,libxml2)
("opencv" ,opencv)
("opus" ,opus)
("pulseaudio" ,pulseaudio)
@@ -1790,6 +1790,8 @@ voice formats.")
(assoc-ref %build-inputs "aptdec"))
(string-append "-DDAB_DIR="
(assoc-ref %build-inputs "libdab"))
+ (string-append "-DDSDCC_DIR="
+ (assoc-ref %build-inputs "dsdcc"))
(string-append "-DSERIALDV_DIR="
(assoc-ref %build-inputs "serialdv"))
(string-append "-DSGP4_DIR="
--
2.31.1
L
L
Leo Famulari wrote on 4 May 2021 18:38
Re: [bug#48217] [PATCH 0/9] Add sdrangel
(name . Guillaume Le Vaillant)(address . glv@posteo.net)(address . 48217@debbugs.gnu.org)
YJF4hg8wm9yC+LKI@jasmine.lan
On Tue, May 04, 2021 at 08:46:51AM +0000, Guillaume Le Vaillant wrote:
Toggle quote (14 lines)
> --8<---------------cut here---------------start------------->8---
> While DSDcc is intended to be patent-free, `mbelib` that it uses
> describes functions that may be covered by one or more U.S. patents
> owned by DVSI Inc. The source code itself should not be infringing as it
> merely describes possible methods of implementation. Compiling or using
> `mbelib` may infringe on patents rights in your jurisdiction and/or
> require licensing. It is unknown if DVSI will sell licenses for software
> that uses `mbelib`.
> --8<---------------cut here---------------end--------------->8---
>
> Even if mbelib is free software, I guess the U.S. patent on the
> AMBE standard [1] prevents it from being included in Guix.
> What do you think?

I don't that these patents prevent inclusion. At least, we've never
worked that way in the past.

The question of whether or not a program / package "may be covered by
one or more U.S. patents" is not something that can be known until you
get sued by a patent owner and lose the case (or settle it). It applies
to literally every piece of software.

Basically, if you are making a lot of money with software, then you will
learn which patents you have used, based on the lawsuits filed against
you.

I'm no expert but that's my understanding.
-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEsFFZSPHn08G5gDigJkb6MLrKfwgFAmCReIYACgkQJkb6MLrK
fwidvw/+KvlDW5jwCoey5XOH+rpkmaifn/DgGyttAyJxK3cYvvbaAdpJlO3Ct1u2
3fnNiyehmbKipUo7/jwtl5z2Hld90pK7Q2b9Cb22xDI5ZO5tQQXhT2QzMfP9DJ58
Tkt7ZtBFMF9nk6Xz5R5KuLiMdoq2QlIiaJZ0cTzN9jvf0iKX0Q8hQZ6pX/jgpSeJ
RUn28ddO9asf0cGarWmQIDuf5b+ebPYjP3bt5yT3YOkxvD0pHov0oU1Sv+WLmsA8
DoNk4oiX6XYeBjGqgiYQj+Xon2dUUg9J1b2mlSAQszk8INqEXS/liBkMqE2Kq7Ls
lCJSeTMceN1N/MOquZV7aD7Ri8SBUHdJHmw94W8YZ9ODuE7VO6wPlWJbo/Q4Sn11
uTBAiyOyzKQ65GNOJ/iiLbJkZxZ3lpnCKOO2PQup3yceiFqVKGukfAASnvVewhW8
nrvodG8o2bn1NyaXILo3J8cBcLAXWxqbHgs47/ydroPAjblwHSs5vUt5i3HH5VGc
MMZYZVwTmHzlQQ8K/cVq1PlUkS5gjwkdfngkwISN75M5Op8/O1+qab8J1CP7AkMu
vkaucyayvU8akqqgSQ+mq1EaVOzG+Hbod+mwgERvHfwn+RiaMNUvvw65Fsk0C4Z6
0KJiQvOzN00GawLZZWP+zWy37btSFYYyr9+DbSaDAeo+Z/LIuf0=
=umki
-----END PGP SIGNATURE-----


L
L
Leo Famulari wrote on 4 May 2021 18:39
Re: [bug#48217] [PATCH 9/9] gnu: sdrangel: Add dsdcc support.
(name . Guillaume Le Vaillant)(address . glv@posteo.net)(address . 48217@debbugs.gnu.org)
YJF4zOldFzQpuPDw@jasmine.lan
On Tue, May 04, 2021 at 08:57:05AM +0000, Guillaume Le Vaillant wrote:
Toggle quote (3 lines)
> * gnu/packages/radio.scm (sdrangel)[inputs]: Add dsdcc. Remove libxml2.
> [arguments]: Update 'configure-flags'.

If you / we decide to package sdrangel with dsdcc support, let's do it
in a single commit that adds sdrangel with dsdcc support.
L
L
Leo Famulari wrote on 4 May 2021 22:00
Re: [bug#48217] [PATCH 1/9] gnu: Add csdr.
(name . Guillaume Le Vaillant)(address . glv@posteo.net)(address . 48217@debbugs.gnu.org)
YJGn4QXBA43cLypE@jasmine.lan
On Tue, May 04, 2021 at 08:56:57AM +0000, Guillaume Le Vaillant wrote:
Toggle quote (5 lines)
> * gnu/packages/radio.scm (csdr): New variable.
> + `(#:make-flags
> + (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
> + "PARSEVECT=no")

Can you document this parameter in a code comment?
L
L
Leo Famulari wrote on 4 May 2021 22:02
Re: [bug#48217] [PATCH 9/9] gnu: sdrangel: Add dsdcc support.
(name . Guillaume Le Vaillant)(address . glv@posteo.net)(address . 48217@debbugs.gnu.org)
YJGoYiuObA4fuH6Q@jasmine.lan
On Tue, May 04, 2021 at 08:57:05AM +0000, Guillaume Le Vaillant wrote:
Toggle quote (3 lines)
> * gnu/packages/radio.scm (sdrangel)[inputs]: Add dsdcc. Remove libxml2.
> [arguments]: Update 'configure-flags'.

Also, why remove libxml2 in this commit?

Is it not required in patch 7/9?
G
G
Guillaume Le Vaillant wrote on 4 May 2021 23:34
Re: [bug#48217] [PATCH 1/9] gnu: Add csdr.
(name . Leo Famulari)(address . leo@famulari.name)(address . 48217@debbugs.gnu.org)
871ramchf0.fsf@yamatai
Leo Famulari <leo@famulari.name> skribis:

Toggle quote (8 lines)
> On Tue, May 04, 2021 at 08:56:57AM +0000, Guillaume Le Vaillant wrote:
>> * gnu/packages/radio.scm (csdr): New variable.
>> + `(#:make-flags
>> + (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
>> + "PARSEVECT=no")
>
> Can you document this parameter in a code comment?

Yes, I'll add a comment.
For info, when 'PARSEVECT' is 'yes', after compiling the program a table
indicating which functions are optimized with SIMD instructions and
which are not is printed. As we don't do anything of this info
and it brings python2 in the dependencies, I disabled it.
-----BEGIN PGP SIGNATURE-----

iIUEAREKAC0WIQTLxZxm7Ce5cXlAaz5r6CCK3yH+PwUCYJG90w8cZ2x2QHBvc3Rl
by5uZXQACgkQa+ggit8h/j8HdwD+JlOYSu0n9jl1ri0+3xs7UGRF2oVyUFUgfW/F
AxnFRTwA/1k2hMrHcjIpwtGFmzX1KrjnyWs3XTUI56rjAQ0vsfee
=pN8H
-----END PGP SIGNATURE-----

G
G
Guillaume Le Vaillant wrote on 4 May 2021 23:48
Re: [bug#48217] [PATCH 9/9] gnu: sdrangel: Add dsdcc support.
(name . Leo Famulari)(address . leo@famulari.name)(address . 48217@debbugs.gnu.org)
87y2cub26z.fsf@yamatai
Leo Famulari <leo@famulari.name> skribis:

Toggle quote (8 lines)
> On Tue, May 04, 2021 at 08:57:05AM +0000, Guillaume Le Vaillant wrote:
>> * gnu/packages/radio.scm (sdrangel)[inputs]: Add dsdcc. Remove libxml2.
>> [arguments]: Update 'configure-flags'.
>
> Also, why remove libxml2 in this commit?
>
> Is it not required in patch 7/9?

Although it is listed as dependency in upstream's wiki, I realized that
the 'configure' phase was not trying to find it, and the package builds
fine without it.

In the final version of the patch series, I'll put patch 8 after 6, and
merge patches 7 and 9 after patch 8.
I guess I'll also insert a patch adding mbelib for dsdcc, unless someone
as an objection.
-----BEGIN PGP SIGNATURE-----

iIUEAREKAC0WIQTLxZxm7Ce5cXlAaz5r6CCK3yH+PwUCYJHBJA8cZ2x2QHBvc3Rl
by5uZXQACgkQa+ggit8h/j9NHwD/Sc2QIoPGW05fOp5jZ31DCprzMQn8WxWHzMo6
fKOsK+EA+wTVWvnp2aQYEkoEhWbmKWXUSQAuXzeuZOu/+3qrLU+H
=LD2J
-----END PGP SIGNATURE-----

G
G
Guillaume Le Vaillant wrote on 5 May 2021 10:48
[PATCH v2 1/9] gnu: Add csdr.
(address . 48217@debbugs.gnu.org)(name . Guillaume Le Vaillant)(address . glv@posteo.net)
20210505084824.22275-1-glv@posteo.net
* gnu/packages/radio.scm (csdr): New variable.
---
gnu/packages/radio.scm | 55 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 55 insertions(+)

Toggle diff (65 lines)
diff --git a/gnu/packages/radio.scm b/gnu/packages/radio.scm
index e6d5ef0203..5329a75794 100644
--- a/gnu/packages/radio.scm
+++ b/gnu/packages/radio.scm
@@ -1575,3 +1575,58 @@ receiver.")
"@code{welle.io} is a Digital Audio Broadcasting (DAB and DAB+) software
defined radio with support for rtl-sdr.")
(license license:gpl2+)))
+
+(define-public csdr
+ ;; No release since 2017, use commit directly.
+ (let ((commit "6ef2a74206887155290a54c7117636f66742f858")
+ (revision "1"))
+ (package
+ (name "csdr")
+ (version (git-version "0.15" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/ha7ilm/csdr")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0ic35130lf66lk3wawgc5bcg711l7chv9al1hzdc1xrmq9qf9hri"))))
+ (build-system gnu-build-system)
+ (inputs
+ `(("fftwf" ,fftwf)))
+ (arguments
+ `(#:make-flags
+ (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
+ ;; Don't print summary of SIMD optimized functions.
+ "PARSEVECT=no")
+ #:tests? #f ; No check phase
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'configure
+ (lambda* (#:key outputs #:allow-other-keys)
+ (substitute* "Makefile"
+ (("PARAMS_MISC = -Wno-unused-result" all)
+ ;; The 'validate-runpath' phase fails without this.
+ (string-append
+ all " -Wl,-rpath=" (assoc-ref outputs "out") "/lib"))
+ (("PARAMS_SIMD =.*")
+ ;; Disable to make reproducibility and cross-compilation work.
+ "")
+ (("gcc ")
+ ,(string-append (cc-for-target) " "))
+ (("g\\+\\+ ")
+ ,(string-append (cxx-for-target) " ")))))
+ (add-before 'install 'make-installation-directories
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (mkdir-p (string-append out "/bin"))
+ (mkdir-p (string-append out "/lib"))))))))
+ (home-page "https://github.com/ha7ilm/csdr")
+ (synopsis "DSP for software defined radio")
+ (description
+ "This package includes the @code{libcsdr} library of
+@acronym{DSP, Digital Signal Processing} functions for
+@acronym{SDRs, Software Defined Radios}, and the @code{csdr} command line
+program that can be used to build simple signal processing flow graphs.")
+ (license license:gpl3+))))
--
2.31.1
G
G
Guillaume Le Vaillant wrote on 5 May 2021 10:48
[PATCH v2 2/9] gnu: Add serialdv.
(address . 48217@debbugs.gnu.org)(name . Guillaume Le Vaillant)(address . glv@posteo.net)
20210505084824.22275-2-glv@posteo.net
* gnu/packages/radio.scm (serialdv): New variable.
---
gnu/packages/radio.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)

Toggle diff (33 lines)
diff --git a/gnu/packages/radio.scm b/gnu/packages/radio.scm
index 5329a75794..910f63959a 100644
--- a/gnu/packages/radio.scm
+++ b/gnu/packages/radio.scm
@@ -1630,3 +1630,26 @@ defined radio with support for rtl-sdr.")
@acronym{SDRs, Software Defined Radios}, and the @code{csdr} command line
program that can be used to build simple signal processing flow graphs.")
(license license:gpl3+))))
+
+(define-public serialdv
+ (package
+ (name "serialdv")
+ (version "1.1.4")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/f4exb/serialDV")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0d88h2wjhf79nisiv96bq522hkbknzm88wsv0q9k33mzmrwnrx93"))))
+ (build-system cmake-build-system)
+ (arguments
+ `(#:tests? #f)) ; No test suite.
+ (home-page "https://github.com/f4exb/serialDV")
+ (synopsis "Audio interface for AMBE3000 based devices")
+ (description
+ "SerialDV is a minimal interface to encode and decode audio with AMBE3000
+based devices in packet mode over a serial link.")
+ (license license:gpl3+)))
--
2.31.1
G
G
Guillaume Le Vaillant wrote on 5 May 2021 10:48
[PATCH v2 3/9] gnu: aptdec: Update to 1.7-1.5f91799.
(address . 48217@debbugs.gnu.org)(name . Guillaume Le Vaillant)(address . glv@posteo.net)
20210505084824.22275-3-glv@posteo.net
* gnu/packages/radio.scm (aptdec): Update to 1.7-1.5f91799.
[build-system]: Switch to cmake-build-system.
[arguments]: Remove 'make-flags". Remove custom 'configure' and 'install'
phases.
---
gnu/packages/radio.scm | 65 ++++++++++++++++--------------------------
1 file changed, 25 insertions(+), 40 deletions(-)

Toggle diff (82 lines)
diff --git a/gnu/packages/radio.scm b/gnu/packages/radio.scm
index 910f63959a..73f0d03e01 100644
--- a/gnu/packages/radio.scm
+++ b/gnu/packages/radio.scm
@@ -246,50 +246,35 @@ memory contents between them.")
license:lgpl3+)))) ; chirp/elib_intl.py
(define-public aptdec
- (package
- (name "aptdec")
- (version "1.7")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/Xerbo/aptdec")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1hf0zb51qc6fyhdjxyij1n3vgwnw3cwksc3r11szbhkml14qjnzk"))))
- (build-system gnu-build-system)
- (inputs
- `(("libpng" ,libpng)
- ("libsndfile" ,libsndfile)))
- (arguments
- `(#:make-flags
- (list
- (string-append "CC="
- (if ,(%current-target-system)
- (string-append (assoc-ref %build-inputs "cross-gcc")
- "/bin/" ,(%current-target-system) "-gcc")
- "gcc"))
- (string-append "PREFIX=" %output)
- (string-append "RPM_BUILD_ROOT=" %output))
- #:tests? #f ; no tests
- #:phases
- (modify-phases %standard-phases
- (delete 'configure)
- (replace 'install
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (install-file "atpdec" (string-append out "/bin")))
- #t)))))
- (home-page "https://github.com/Xerbo/aptdec")
- (synopsis "NOAA Automatic Picture Transmission (APT) decoder")
- (description "Aptdec decodes Automatic Picture Transmission (APT) images.
+ ;; No release since 2013, use commit directly.
+ (let ((commit "5f91799637d93dfe7791caa7e9a6683050c4f8f3")
+ (revision "1"))
+ (package
+ (name "aptdec")
+ (version (git-version "1.7" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Xerbo/aptdec")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0i7vkjjrq392gs9qaibr7j3v4hijqqg8458dn21dwh16ncrvr9bp"))))
+ (build-system cmake-build-system)
+ (inputs
+ `(("libpng" ,libpng)
+ ("libsndfile" ,libsndfile)))
+ (arguments
+ `(#:tests? #f)) ; no tests
+ (home-page "https://github.com/Xerbo/aptdec")
+ (synopsis "NOAA Automatic Picture Transmission (APT) decoder")
+ (description "Aptdec decodes Automatic Picture Transmission (APT) images.
These are medium resolution images of the Earth transmitted by, among other
satellites, the POES NOAA weather satellite series. These transmissions are
on a frequency of 137 MHz. They can be received using an inexpensive antenna
and a dedicated receiver.")
- (license license:gpl2+)))
+ (license license:gpl2+))))
(define-public redsea
(package
--
2.31.1
G
G
Guillaume Le Vaillant wrote on 5 May 2021 10:48
[PATCH v2 5/9] gnu: Add libdab.
(address . 48217@debbugs.gnu.org)(name . Guillaume Le Vaillant)(address . glv@posteo.net)
20210505084824.22275-5-glv@posteo.net
* gnu/packages/radio.scm (libdab): New variable.
---
gnu/packages/radio.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)

Toggle diff (44 lines)
diff --git a/gnu/packages/radio.scm b/gnu/packages/radio.scm
index 8a75ab5551..deb22a78fd 100644
--- a/gnu/packages/radio.scm
+++ b/gnu/packages/radio.scm
@@ -1667,3 +1667,37 @@ based devices in packet mode over a serial link.")
"This is a C++ library implementing fast GF(256) Cauchy MDS Block Erasure
Codec.")
(license license:gpl3+)))
+
+(define-public libdab
+ ;; No release since 2017, use commit directly.
+ (let ((commit "b578d02eda60f613d35bab5d762ae7c9a27758d8")
+ (revision "1"))
+ (package
+ (name "libdab")
+ (version (git-version "0.8" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/JvanKatwijk/dab-cmdline")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0j339kx3n2plgfw7ikpp7b81h5n68wmsgflwljbh2sy8j62faik9"))))
+ (build-system cmake-build-system)
+ (inputs
+ `(("faad2" ,faad2)
+ ("fftwf" ,fftwf)
+ ("zlib" ,zlib)))
+ (arguments
+ `(#:tests? #f ; No test suite.
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'enter-sources-directory
+ (lambda _
+ (chdir "library"))))))
+ (home-page "https://github.com/JvanKatwijk/dab-cmdline")
+ (synopsis "DAB decoding library")
+ (description "This is a library to decode @acronym{DAB/DAB+, Digital
+Audio Broadcasting}.")
+ (license license:gpl2+))))
--
2.31.1
G
G
Guillaume Le Vaillant wrote on 5 May 2021 10:48
[PATCH v2 4/9] gnu: Add cm256cc.
(address . 48217@debbugs.gnu.org)(name . Guillaume Le Vaillant)(address . glv@posteo.net)
20210505084824.22275-4-glv@posteo.net
* gnu/packages/radio.scm (cm256cc): New variable.
---
gnu/packages/radio.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (39 lines)
diff --git a/gnu/packages/radio.scm b/gnu/packages/radio.scm
index 73f0d03e01..8a75ab5551 100644
--- a/gnu/packages/radio.scm
+++ b/gnu/packages/radio.scm
@@ -1638,3 +1638,32 @@ program that can be used to build simple signal processing flow graphs.")
"SerialDV is a minimal interface to encode and decode audio with AMBE3000
based devices in packet mode over a serial link.")
(license license:gpl3+)))
+
+(define-public cm256cc
+ (package
+ (name "cm256cc")
+ (version "1.1.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/f4exb/cm256cc")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1n9v7g6d370263bgqrjv38s9aq5953rzy7jvd8i30xq6aram9djg"))))
+ (build-system cmake-build-system)
+ (arguments
+ ;; Disable some SIMD features for reproducibility.
+ `(#:configure-flags '("-DENABLE_DISTRIBUTION=1")
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ (invoke "./cm256_test"))))))
+ (home-page "https://github.com/f4exb/cm256cc")
+ (synopsis "Cauchy MDS Block Erasure Codec")
+ (description
+ "This is a C++ library implementing fast GF(256) Cauchy MDS Block Erasure
+Codec.")
+ (license license:gpl3+)))
--
2.31.1
G
G
Guillaume Le Vaillant wrote on 5 May 2021 10:48
[PATCH v2 6/9] gnu: Add sgp4.
(address . 48217@debbugs.gnu.org)(name . Guillaume Le Vaillant)(address . glv@posteo.net)
20210505084824.22275-6-glv@posteo.net
* gnu/packages/astronomy.scm (sgp4): New variable.
---
gnu/packages/astronomy.scm | 35 ++++++++++++++++++++++++++++++++++-
1 file changed, 34 insertions(+), 1 deletion(-)

Toggle diff (55 lines)
diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm
index c7d27a58d3..6d1c4ddfe6 100644
--- a/gnu/packages/astronomy.scm
+++ b/gnu/packages/astronomy.scm
@@ -4,7 +4,7 @@
;;; Copyright © 2018, 2019, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2019 by Amar Singh <nly@disroot.org>
;;; Copyright © 2020 R Veera Kumar <vkor@vkten.in>
-;;; Copyright © 2020 Guillaume Le Vaillant <glv@posteo.net>
+;;; Copyright © 2020, 2021 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2021 Sharlatan Hellseher <sharlatanus@gmail.com>
;;;
;;; This file is part of GNU Guix.
@@ -792,6 +792,39 @@ provide you with detailed information about each pass.")
(home-page "http://gpredict.oz9aec.net/index.php")
(license license:gpl2+)))
+(define-public sgp4
+ ;; No tagged releases, use commit directly.
+ (let ((commit "ca9d4d97af4ee62461de6f13e0c85d1dc6000040")
+ (revision "1"))
+ (package
+ (name "sgp4")
+ (version (git-version "0.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/dnwrnr/sgp4")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1xwfa6papmd2qz5w0hwzvijmzvp9np8dlw3q3qz4bmsippzjv8p7"))))
+ (build-system cmake-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ ;; Tests fails, probably because of a few "(e <= -0.001)" errors.
+ ;; Or maybe this is not the right way to run the tests?
+ ;; (invoke "runtest/runtest")
+ #t)))))
+ (home-page "https://github.com/dnwrnr/sgp4")
+ (synopsis "Simplified perturbations models library")
+ (description
+ "This is a library implementing the simplified perturbations model.
+It can be used to calculate the trajectory of satellites.")
+ (license license:asl2.0))))
+
(define-public indi
(package
(name "indi")
--
2.31.1
G
G
Guillaume Le Vaillant wrote on 5 May 2021 10:48
[PATCH v2 7/9] gnu: Add mbelib.
(address . 48217@debbugs.gnu.org)(name . Guillaume Le Vaillant)(address . glv@posteo.net)
20210505084824.22275-7-glv@posteo.net
* gnu/packages/audio.scm (mbelib): New variable.
---
gnu/packages/audio.scm | 27 ++++++++++++++++++++++++++-
1 file changed, 26 insertions(+), 1 deletion(-)

Toggle diff (47 lines)
diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index da67f78fd0..d8e4be37fa 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -29,7 +29,7 @@
;;; Copyright © 2019 Hartmt Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2019, 2021 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
-;;; Copyright © 2020 Guillaume Le Vaillant <glv@posteo.net>
+;;; Copyright © 2020, 2021 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2020 Jonathan Frederickson <jonathan@terracrypt.net>
;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
@@ -5036,6 +5036,31 @@ digital radio.")
(home-page "https://www.rowetel.com/?page_id=452")
(license license:lgpl2.1)))
+(define-public mbelib
+ ;; No release since 2016, use commit directly.
+ (let ((commit "9a04ed5c78176a9965f3d43f7aa1b1f5330e771f")
+ (revision "1"))
+ (package
+ (name "mbelib")
+ (version "1.3.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/szechyjs/mbelib")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0a7xmf87xnjzm5b437j2vnwv39x0ascja1j04c5wj6xs1529gw8h"))))
+ (build-system cmake-build-system)
+ (home-page "https://github.com/szechyjs/mbelib")
+ (synopsis "P25 Phase 1 and ProVoice vocoder")
+ (description
+ "The mbelib library provides support for the 7200x4400 bit/s codec used
+in P25 Phase 1, the 7100x4400 bit/s codec used in ProVoice and the @emph{Half
+Rate} 3600x2250 bit/s vocoder used in various radio systems.")
+ (license license:bsd-0))))
+
(define-public ableton-link
(package
(name "ableton-link")
--
2.31.1
G
G
Guillaume Le Vaillant wrote on 5 May 2021 10:48
[PATCH v2 8/9] gnu: Add dsdcc.
(address . 48217@debbugs.gnu.org)(name . Guillaume Le Vaillant)(address . glv@posteo.net)
20210505084824.22275-8-glv@posteo.net
* gnu/packages/radio.scm (dsdcc): New variable.
---
gnu/packages/radio.scm | 40 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)

Toggle diff (50 lines)
diff --git a/gnu/packages/radio.scm b/gnu/packages/radio.scm
index deb22a78fd..1a8f21bfab 100644
--- a/gnu/packages/radio.scm
+++ b/gnu/packages/radio.scm
@@ -1701,3 +1701,43 @@ Codec.")
(description "This is a library to decode @acronym{DAB/DAB+, Digital
Audio Broadcasting}.")
(license license:gpl2+))))
+
+(define-public dsdcc
+ (package
+ (name "dsdcc")
+ (version "1.9.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/f4exb/dsdcc")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0jgzpv4d6ckd0sdq6438rjh3m6knj6gx63627fajch74hxrvclzj"))))
+ (build-system cmake-build-system)
+ (inputs
+ `(("mbelib" ,mbelib)
+ ("serialdv" ,serialdv)))
+ (arguments
+ `(#:tests? #f ; No test suite.
+ #:configure-flags
+ (list "-DUSE_MBELIB=ON"
+ (string-append "-DLIBMBE_INCLUDE_DIR="
+ (assoc-ref %build-inputs "mbelib")
+ "/include")
+ (string-append "-DLIBMBE_LIBRARY="
+ (assoc-ref %build-inputs "mbelib")
+ "/lib/libmbe.so")
+ (string-append "-DLIBSERIALDV_INCLUDE_DIR="
+ (assoc-ref %build-inputs "serialdv")
+ "/include/serialdv")
+ (string-append "-DLIBSERIALDV_LIBRARY="
+ (assoc-ref %build-inputs "serialdv")
+ "/lib/libserialdv.so"))))
+ (home-page "https://github.com/f4exb/dsdcc")
+ (synopsis "Digital speech decoder")
+ (description
+ "This package provides a library and a program to decode several digital
+voice formats.")
+ (license license:gpl3+)))
--
2.31.1
G
G
Guillaume Le Vaillant wrote on 5 May 2021 10:48
[PATCH v2 9/9] gnu: Add sdrangel.
(address . 48217@debbugs.gnu.org)(name . Guillaume Le Vaillant)(address . glv@posteo.net)
20210505084824.22275-9-glv@posteo.net
* gnu/packages/radio.scm (sdrangel): New variable.
---
gnu/packages/radio.scm | 73 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 73 insertions(+)

Toggle diff (100 lines)
diff --git a/gnu/packages/radio.scm b/gnu/packages/radio.scm
index 1a8f21bfab..909e086a68 100644
--- a/gnu/packages/radio.scm
+++ b/gnu/packages/radio.scm
@@ -31,6 +31,7 @@
#:use-module (guix utils)
#:use-module (gnu packages admin)
#:use-module (gnu packages algebra)
+ #:use-module (gnu packages astronomy)
#:use-module (gnu packages audio)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
@@ -52,9 +53,11 @@
#:use-module (gnu packages gnome)
#:use-module (gnu packages golang)
#:use-module (gnu packages gps)
+ #:use-module (gnu packages graphviz)
#:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk)
#:use-module (gnu packages image)
+ #:use-module (gnu packages image-processing)
#:use-module (gnu packages javascript)
#:use-module (gnu packages libusb)
#:use-module (gnu packages linux)
@@ -1741,3 +1744,73 @@ Audio Broadcasting}.")
"This package provides a library and a program to decode several digital
voice formats.")
(license license:gpl3+)))
+
+(define-public sdrangel
+ (package
+ (name "sdrangel")
+ (version "6.10.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/f4exb/sdrangel")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0dpymjpg1x7yyrlhh8sdmf5l7il9ymx32zcpm78wwrw3df4q1w3m"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("doxygen" ,doxygen)
+ ("graphviz" ,graphviz)
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("airspyhf" ,airspyhf)
+ ("alsa-lib" ,alsa-lib)
+ ("aptdec" ,aptdec)
+ ("boost" ,boost)
+ ("cm256cc" ,cm256cc)
+ ("codec2" ,codec2)
+ ("dsdcc" ,dsdcc)
+ ("faad2" ,faad2)
+ ("ffmpeg" ,ffmpeg)
+ ("fftwf" ,fftwf)
+ ("hackrf" ,hackrf)
+ ("libdab" ,libdab)
+ ("libusb" ,libusb)
+ ("mbelib" ,mbelib)
+ ("opencv" ,opencv)
+ ("opus" ,opus)
+ ("pulseaudio" ,pulseaudio)
+ ("qtbase" ,qtbase)
+ ("qtcharts" ,qtcharts)
+ ("qtdeclarative" ,qtdeclarative)
+ ("qtlocation" ,qtlocation)
+ ("qtmultimedia" ,qtmultimedia)
+ ("qtserialport" ,qtserialport)
+ ("qtspeech" ,qtspeech)
+ ("qtwebsockets" ,qtwebsockets)
+ ("rtl-sdr" ,rtl-sdr)
+ ("serialdv" ,serialdv)
+ ("sgp4" ,sgp4)
+ ("zlib" ,zlib)))
+ (arguments
+ `(#:tests? #f ; No test suite.
+ #:configure-flags
+ (list (string-append "-DAPT_DIR="
+ (assoc-ref %build-inputs "aptdec"))
+ (string-append "-DDAB_DIR="
+ (assoc-ref %build-inputs "libdab"))
+ (string-append "-DDSDCC_DIR="
+ (assoc-ref %build-inputs "dsdcc"))
+ (string-append "-DMBE_DIR="
+ (assoc-ref %build-inputs "mbelib"))
+ (string-append "-DSERIALDV_DIR="
+ (assoc-ref %build-inputs "serialdv"))
+ (string-append "-DSGP4_DIR="
+ (assoc-ref %build-inputs "sgp4")))))
+ (home-page "https://github.com/f4exb/sdrangel/wiki")
+ (synopsis "Software defined radio")
+ (description
+ "SDRangel is a Qt software defined radio and signal analyzer frontend for
+various hardware.")
+ (license license:gpl3+)))
--
2.31.1
M
M
Maxime Devos wrote on 5 May 2021 13:22
Re: [bug#48217] [PATCH v2 4/9] gnu: Add cm256cc.
86c848bacc44a44b99271bcbdfcd87b0db8fa7de.camel@telenet.be
Guillaume Le Vaillant schreef op wo 05-05-2021 om 08:48 [+0000]:
Toggle quote (6 lines)
> * gnu/packages/radio.scm (cm256cc): New variable.
> [...]
> + (replace 'check
> + (lambda _
> + (invoke "./cm256_test"))))))

I would make this something like

Toggle quote (4 lines)
> + (lambda (#:key tests? #:allow-other-keys)
> + (when tests?
> + (invoke "./cm256_test")))

Then "guix build --without-tests=cm256cc cm256cc" can be used
for building "cm256cc" without tests, and the "cm256_test"
binary won't be invoked when cross-compiling.

(I assume it is a binary.)

For testing cross-compilation to aarch64-linux-gnu:
./pre-inst-env guix build --target=aarch64-linux-gnu cm256cc

Greetings,
Maxime.
-----BEGIN PGP SIGNATURE-----

iI0EABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYJJ//hccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7tv/AQCqsKgKOgvs0O+1q5np2+jXK5sV
V4Mr+S0ZQ3Q5OPThowEA8TMRLY5xRJpVjwsnmCQB5dkJ0LZDdwl9fyjQxqGdhwk=
=XW9G
-----END PGP SIGNATURE-----


G
G
Guillaume Le Vaillant wrote on 5 May 2021 15:37
(name . Maxime Devos)(address . maximedevos@telenet.be)(address . 48217@debbugs.gnu.org)
87tunh47zz.fsf@yamatai
Maxime Devos <maximedevos@telenet.be> skribis:

Toggle quote (17 lines)
> Guillaume Le Vaillant schreef op wo 05-05-2021 om 08:48 [+0000]:
>> * gnu/packages/radio.scm (cm256cc): New variable.
>> [...]
>> + (replace 'check
>> + (lambda _
>> + (invoke "./cm256_test"))))))
>
> I would make this something like
>
>> + (lambda (#:key tests? #:allow-other-keys)
>> + (when tests?
>> + (invoke "./cm256_test")))
>
> Then "guix build --without-tests=cm256cc cm256cc" can be used
> for building "cm256cc" without tests, and the "cm256_test"
> binary won't be invoked when cross-compiling.

Ok, I'll add that.
Thanks.
-----BEGIN PGP SIGNATURE-----

iIUEAREKAC0WIQTLxZxm7Ce5cXlAaz5r6CCK3yH+PwUCYJKfgA8cZ2x2QHBvc3Rl
by5uZXQACgkQa+ggit8h/j/9cQEAgO/NUyiaVmmhZlV4bYf/TXxAGE27oyXletpj
kxW1R/EBAKcFg0nKyQ7oyTDA20eqk2jG7GlqCaT/kvMnbcn2dcEb
=eB9N
-----END PGP SIGNATURE-----

G
G
Guillaume Le Vaillant wrote on 7 May 2021 18:48
Re: [bug#48217] [PATCH 0/9] Add sdrangel
(address . 48217-done@debbugs.gnu.org)(name . Guillaume Le Vaillant)(address . glv@posteo.net)
87r1ii7amc.fsf@kitej
Patches pushed as 86a6749fbb0f3235fb5ee975d2288997aecd8409 and following.
Closing.
-----BEGIN PGP SIGNATURE-----

iIUEAREKAC0WIQTLxZxm7Ce5cXlAaz5r6CCK3yH+PwUCYJVvew8cZ2x2QHBvc3Rl
by5uZXQACgkQa+ggit8h/j+IVQEAk3lOV5EBjT5tjyiyIq3xNe+M/ER4Z2L0iRtO
OBPCBwUA/jN8mKlOP3CHKgZ2vIWD8kBguN+4OGRNLL6teyfjrS9W
=S1wn
-----END PGP SIGNATURE-----

Closed
L
L
Leo Famulari wrote on 8 May 2021 04:32
Re: bug#48217: [PATCH 0/9] Add sdrangel
YJX4V4+us2QefibK@jasmine.lan
On Fri, May 07, 2021 at 04:48:59PM +0000, Guillaume Le Vaillant wrote:
Toggle quote (3 lines)
> Patches pushed as 86a6749fbb0f3235fb5ee975d2288997aecd8409 and following.
> Closing.

Thanks! I'm looking forward to trying it out.
?