unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#53820] [PATCH] gnu: Add jtdx
@ 2022-02-06 14:14 Sheng Yang
  2022-02-06 14:56 ` Maxime Devos
  2022-02-06 15:05 ` Maxime Devos
  0 siblings, 2 replies; 7+ messages in thread
From: Sheng Yang @ 2022-02-06 14:14 UTC (permalink / raw)
  To: 53820


[-- Attachment #1.1: Type: text/plain, Size: 309 bytes --]

JTDX is a popular fork of WSJT-X, commonly used by ham radio operators for FT8 and other modes.

This is the first time I am submitting a patch to Guix. I have tried my best to format and test it, with the help of a few friends familiar with Guix. Feel free to modify the patch if I did something incorrectly.

[-- Attachment #1.2: Type: text/html, Size: 488 bytes --]

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-Add-jtdx.patch --]
[-- Type: text/x-patch; name="0001-gnu-Add-jtdx.patch", Size: 3492 bytes --]

From 187f08de9656d4d0beb489585dcb8ec8323a3789 Mon Sep 17 00:00:00 2001
From: Sheng Yang <styang@fastmail.com>
Date: Sun, 23 Jan 2022 21:46:27 -0600
Subject: [PATCH] gnu: Add jtdx

* gnu/packages/radio.scm (jtdx-hamlib): New variable.
  (jtdx): New variable.
---
 gnu/packages/radio.scm | 67 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 67 insertions(+)

diff --git a/gnu/packages/radio.scm b/gnu/packages/radio.scm
index e487987738..36bbe2c097 100644
--- a/gnu/packages/radio.scm
+++ b/gnu/packages/radio.scm
@@ -8,6 +8,7 @@
 ;;; Copyright © 2020, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2021 João Pedro Simas <jpsimas@gmail.com>
 ;;; Copyright © 2021 Jack Hill <jackhill@jackhill.us>
+;;; Copyright © 2022 Sheng Yang <styang@fastmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -1113,6 +1114,31 @@ (define wsjtx-hamlib
                            "--with-tcl-binding"
                            "--with-xml-support")))))
 
+(define jtdx-hamlib
+  ;; Fork of hamlib with custom patches used by jtdx.
+  (package
+    (inherit hamlib)
+    (name "jtdx-hamlib")
+    (version "2.2.158")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/Hamlib/Hamlib.git")
+             (commit "954d70c143a9a0293371d8def3a7300ce3ca68c4")))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0z89krk2vnbm7narf9kkng5cxf6wqkijz06brzcg6vazf944x4ci"))))
+    (native-inputs
+     (modify-inputs (package-native-inputs hamlib)
+       (prepend autoconf automake libtool texinfo)))
+    (arguments
+     `(#:configure-flags '("--disable-static"
+                           "--with-lua-binding"
+                           "--with-python-binding"
+                           "--with-tcl-binding"
+                           "--with-xml-support")))))
+
 (define-public tlf
   (package
     (name "tlf")
@@ -1206,6 +1232,47 @@ (define-public wsjtx
     (home-page "https://www.physics.princeton.edu/pulsar/k1jt/wsjtx.html")
     (license license:gpl3)))
 
+(define-public jtdx
+  (package
+    (name "jtdx")
+    (version "2.2.158")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/jtdx-project/jtdx")
+             (commit "158")))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1lw9q7ggh2jlasipl3v5pkbabysjr6baw15lnmg664ah3fwdrvnx"))))
+    (build-system qt-build-system)
+    (native-inputs
+     (list asciidoc gfortran pkg-config qttools ruby-asciidoctor))
+    (inputs
+     (list
+      boost
+      fftw
+      fftwf
+      jtdx-hamlib
+      libusb
+      qtbase-5
+      qtwebsockets
+      qtmultimedia
+      qtserialport))
+    (arguments
+     `(#:tests? #f)) ; No test suite
+    (synopsis "Weak-signal ham radio communication program, forked from WSJTX")
+    (description
+     "JTDX means \"JT,T10 and FT8 and FT4 modes for DXing\", it is being
+developed with main focus on the sensitivity and decoding efficiency, both, in
+overcrowded and half empty HF band conditions.
+
+It is modified WSJT-X software forked from WSJT-X r6462.  JTDX supports JT9,
+JT65, T10, FT8 and FT4 © digital modes for HF amateur radio communication,
+focused on DXing and being shaped by community of DXers.JTDX")
+    (home-page "https://www.jtdx.tech/en/")
+    (license license:gpl3)))
+
 (define-public js8call
   (package
     (inherit wsjtx)
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [bug#53820] [PATCH] gnu: Add jtdx
  2022-02-06 14:14 [bug#53820] [PATCH] gnu: Add jtdx Sheng Yang
@ 2022-02-06 14:56 ` Maxime Devos
  2022-02-06 15:02   ` Sheng Yang
  2022-02-06 15:05 ` Maxime Devos
  1 sibling, 1 reply; 7+ messages in thread
From: Maxime Devos @ 2022-02-06 14:56 UTC (permalink / raw)
  To: Sheng Yang, 53820

[-- Attachment #1: Type: text/plain, Size: 215 bytes --]

Sheng Yang schreef op zo 06-02-2022 om 08:14 [-0600]:
> +             (url "https://github.com/Hamlib/Hamlib.git")

That looks like a location of upstream to me, not the fork.

Greetings,
Maxime.

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 260 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [bug#53820] [PATCH] gnu: Add jtdx
  2022-02-06 14:56 ` Maxime Devos
@ 2022-02-06 15:02   ` Sheng Yang
  0 siblings, 0 replies; 7+ messages in thread
From: Sheng Yang @ 2022-02-06 15:02 UTC (permalink / raw)
  To: Maxime Devos, 53820

[-- Attachment #1: Type: text/plain, Size: 692 bytes --]

My fault. I somehow misunderstood the lines in the release note.
> JTDX 2.2.158 builds made with modified Hamlib, based on Hamlib commit https://github.com/Hamlib/Hamlib/commit/954d70c143a9a0293371d8def3a7300ce3ca68c4 as of December 30th, 2021

Found the true location of their fork of hamlib (https://github.com/jtdx-project/jtdxhamlib). Will update the patch when I managed to pack it.

On Sun, Feb 6, 2022, at 08:56, Maxime Devos wrote:
> Sheng Yang schreef op zo 06-02-2022 om 08:14 [-0600]:
> > +             (url "https://github.com/Hamlib/Hamlib.git")
> 
> That looks like a location of upstream to me, not the fork.
> 
> Greetings,
> Maxime.
> 
> 
> *Attachments:*
>  * signature.asc

[-- Attachment #2: Type: text/html, Size: 1423 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [bug#53820] [PATCH] gnu: Add jtdx
  2022-02-06 14:14 [bug#53820] [PATCH] gnu: Add jtdx Sheng Yang
  2022-02-06 14:56 ` Maxime Devos
@ 2022-02-06 15:05 ` Maxime Devos
  2022-02-06 15:20   ` Sheng Yang
  1 sibling, 1 reply; 7+ messages in thread
From: Maxime Devos @ 2022-02-06 15:05 UTC (permalink / raw)
  To: Sheng Yang, 53820

[-- Attachment #1: Type: text/plain, Size: 501 bytes --]

Sheng Yang schreef op zo 06-02-2022 om 08:14 [-0600]:
> +(define jtdx-hamlib
> +  ;; Fork of hamlib with custom patches used by jtdx.

Have these patches been submitted upstream?  If so, can we
add a link to a web page tracking upstreaming progress,
such that we can determine when 'jdtx-hamlib' can be removed
in favour of 'hamlib'?

Given that it is a fork, doesn't the home page, synopsis and
description need to be tweaked?

Why define and not define-public?

Greetings,
Maxime.

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 260 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [bug#53820] [PATCH] gnu: Add jtdx
  2022-02-06 15:05 ` Maxime Devos
@ 2022-02-06 15:20   ` Sheng Yang
  2022-02-06 16:22     ` Sheng Yang
  0 siblings, 1 reply; 7+ messages in thread
From: Sheng Yang @ 2022-02-06 15:20 UTC (permalink / raw)
  To: Maxime Devos, 53820

[-- Attachment #1: Type: text/plain, Size: 1428 bytes --]

> Have these patches been submitted upstream?  If so, can we
> add a link to a web page tracking upstreaming progress,
> such that we can determine when 'jdtx-hamlib' can be removed
> in favour of 'hamlib'?
I don't think those patches are submitted upstream. I checked diff between jtdx-hamlib's master with commit 954d70c143a9a0293371d8def3a7300ce3ca68c4 <https://github.com/Hamlib/Hamlib/commit/954d70c143a9a0293371d8def3a7300ce3ca68c4>, which has quite some differences. I am not a developer of either package, so I cannot tell which one/ones is necessary. As it turns out, the configure options seem a lot different from the official one. The following is in the README of jtdx-hamlib:
> $ ../src/configure --prefix=$HOME/hamlib-prefix 
> --disable-shared --enable-static 
> --without-cxx-binding --disable-winradio 
> CFLAGS="-g -O2 -fdata-sections -ffunction-sections" 
> LDFLAGS="-Wl,--gc-sections" 
While in hamlib and wsjtx-hamlib, the build configuration is:
> (arguments
>      `(#:configure-flags '("--disable-static"
>                            "--with-lua-binding"
>                            "--with-python-binding"
>                            "--with-tcl-binding"
>                            "--with-xml-support")))

> Given that it is a fork, doesn't the home page, synopsis and
> description need to be tweaked?
> 
> Why define and not define-public?
I basically followed the existing package wsjtx-hamlib.

[-- Attachment #2: Type: text/html, Size: 2577 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [bug#53820] [PATCH] gnu: Add jtdx
  2022-02-06 15:20   ` Sheng Yang
@ 2022-02-06 16:22     ` Sheng Yang
  2022-03-06 21:36       ` bug#53820: " Ludovic Courtès
  0 siblings, 1 reply; 7+ messages in thread
From: Sheng Yang @ 2022-02-06 16:22 UTC (permalink / raw)
  To: Maxime Devos, 53820


[-- Attachment #1.1: Type: text/plain, Size: 1523 bytes --]

Patch updated.

On Sun, Feb 6, 2022, at 09:20, Sheng Yang wrote:
>> Have these patches been submitted upstream?  If so, can we
>> add a link to a web page tracking upstreaming progress,
>> such that we can determine when 'jdtx-hamlib' can be removed
>> in favour of 'hamlib'?
> I don't think those patches are submitted upstream. I checked diff between jtdx-hamlib's master with commit 954d70c143a9a0293371d8def3a7300ce3ca68c4 <https://github.com/Hamlib/Hamlib/commit/954d70c143a9a0293371d8def3a7300ce3ca68c4>, which has quite some differences. I am not a developer of either package, so I cannot tell which one/ones is necessary. As it turns out, the configure options seem a lot different from the official one. The following is in the README of jtdx-hamlib:
>> $ ../src/configure --prefix=$HOME/hamlib-prefix 
>> --disable-shared --enable-static 
>> --without-cxx-binding --disable-winradio 
>> CFLAGS="-g -O2 -fdata-sections -ffunction-sections" 
>> LDFLAGS="-Wl,--gc-sections" 
> While in hamlib and wsjtx-hamlib, the build configuration is:
>> (arguments
>>      `(#:configure-flags '("--disable-static"
>>                            "--with-lua-binding"
>>                            "--with-python-binding"
>>                            "--with-tcl-binding"
>>                            "--with-xml-support")))
> 
>> Given that it is a fork, doesn't the home page, synopsis and
>> description need to be tweaked?
>> 
>> Why define and not define-public?
> I basically followed the existing package wsjtx-hamlib.



[-- Attachment #1.2: Type: text/html, Size: 2833 bytes --]

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-Add-jtdx.patch --]
[-- Type: text/x-patch; name="0001-gnu-Add-jtdx.patch", Size: 3424 bytes --]

From 4a57cd007013a8bbade90dceccba4ec85207857f Mon Sep 17 00:00:00 2001
From: Sheng Yang <yangsheng6810@gmail.com>
Date: Sun, 23 Jan 2022 21:46:27 -0600
Subject: [PATCH] gnu: Add jtdx

* gnu/packages/radio.scm (jtdx-hamlib): New variable.
  (jtdx): New variable.
---
 gnu/packages/radio.scm | 66 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 66 insertions(+)

diff --git a/gnu/packages/radio.scm b/gnu/packages/radio.scm
index e487987738..8e7a0017ad 100644
--- a/gnu/packages/radio.scm
+++ b/gnu/packages/radio.scm
@@ -8,6 +8,7 @@
 ;;; Copyright © 2020, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2021 João Pedro Simas <jpsimas@gmail.com>
 ;;; Copyright © 2021 Jack Hill <jackhill@jackhill.us>
+;;; Copyright © 2022 Sheng Yang <styang@fastmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -1113,6 +1114,30 @@ (define wsjtx-hamlib
                            "--with-tcl-binding"
                            "--with-xml-support")))))
 
+(define-public jtdx-hamlib
+  ;; Fork of hamlib with custom patches used by jtdx.
+  (package
+    (inherit hamlib)
+    (name "jtdx-hamlib")
+    (version "2.2.158")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/jtdx-project/jtdxhamlib.git")
+             (commit "158")))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0m9i5k1n6j0nvmsqcy12x2ngqzjvxxlc3jg29igh93hb7lprlkjv"))))
+    (native-inputs
+     (modify-inputs (package-native-inputs hamlib)
+       (prepend autoconf automake libtool texinfo)))
+    (arguments
+     `(#:configure-flags '("--disable-shared"
+                           "--enable-static"
+                           "--without-cxx-binding"
+                           "--disable-winradio")))))
+
 (define-public tlf
   (package
     (name "tlf")
@@ -1206,6 +1231,47 @@ (define-public wsjtx
     (home-page "https://www.physics.princeton.edu/pulsar/k1jt/wsjtx.html")
     (license license:gpl3)))
 
+(define-public jtdx
+  (package
+    (name "jtdx")
+    (version "2.2.158")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/jtdx-project/jtdx")
+             (commit "158")))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1lw9q7ggh2jlasipl3v5pkbabysjr6baw15lnmg664ah3fwdrvnx"))))
+    (build-system qt-build-system)
+    (native-inputs
+     (list asciidoc gfortran pkg-config qttools ruby-asciidoctor))
+    (inputs
+     (list
+      boost
+      fftw
+      fftwf
+      jtdx-hamlib
+      libusb
+      qtbase-5
+      qtwebsockets
+      qtmultimedia
+      qtserialport))
+    (arguments
+     `(#:tests? #f)) ; No test suite
+    (synopsis "Weak-signal ham radio communication program, forked from WSJTX")
+    (description
+     "JTDX means \"JT,T10 and FT8 and FT4 modes for DXing\", it is being
+developed with main focus on the sensitivity and decoding efficiency, both, in
+overcrowded and half empty HF band conditions.
+
+It is modified WSJT-X software forked from WSJT-X r6462.  JTDX supports JT9,
+JT65, T10, FT8 and FT4 © digital modes for HF amateur radio communication,
+focused on DXing and being shaped by community of DXers.JTDX")
+    (home-page "https://www.jtdx.tech/en/")
+    (license license:gpl3)))
+
 (define-public js8call
   (package
     (inherit wsjtx)
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* bug#53820: [PATCH] gnu: Add jtdx
  2022-02-06 16:22     ` Sheng Yang
@ 2022-03-06 21:36       ` Ludovic Courtès
  0 siblings, 0 replies; 7+ messages in thread
From: Ludovic Courtès @ 2022-03-06 21:36 UTC (permalink / raw)
  To: Sheng Yang; +Cc: Maxime Devos, 53820-done

Hi,

"Sheng Yang" <styang@fastmail.com> skribis:

> From 4a57cd007013a8bbade90dceccba4ec85207857f Mon Sep 17 00:00:00 2001
> From: Sheng Yang <yangsheng6810@gmail.com>
> Date: Sun, 23 Jan 2022 21:46:27 -0600
> Subject: [PATCH] gnu: Add jtdx
>
> * gnu/packages/radio.scm (jtdx-hamlib): New variable.
>   (jtdx): New variable.

Applied.

Thank you, and thanks Maxime!

Ludo’.




^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2022-03-06 21:37 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-02-06 14:14 [bug#53820] [PATCH] gnu: Add jtdx Sheng Yang
2022-02-06 14:56 ` Maxime Devos
2022-02-06 15:02   ` Sheng Yang
2022-02-06 15:05 ` Maxime Devos
2022-02-06 15:20   ` Sheng Yang
2022-02-06 16:22     ` Sheng Yang
2022-03-06 21:36       ` bug#53820: " Ludovic Courtès

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).