all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [bug#35169] [PATCH] gnu: Add urh.
@ 2019-04-06 10:10 Arun Isaac
  2019-04-06 10:22 ` Danny Milosavljevic
  2022-04-29 12:45 ` bug#35169: " Guillaume Le Vaillant
  0 siblings, 2 replies; 11+ messages in thread
From: Arun Isaac @ 2019-04-06 10:10 UTC (permalink / raw)
  To: 35169

* gnu/packages/ham-radio.scm (urh): New variable.
---
 gnu/packages/ham-radio.scm | 40 +++++++++++++++++++++++++++++++++++++-
 1 file changed, 39 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/ham-radio.scm b/gnu/packages/ham-radio.scm
index 6e91866905..16965810fc 100644
--- a/gnu/packages/ham-radio.scm
+++ b/gnu/packages/ham-radio.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2017, 2018 Arun Isaac <arunisaac@systemreboot.net>
+;;; Copyright © 2017, 2018, 2019 Arun Isaac <arunisaac@systemreboot.net>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -20,11 +20,13 @@
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
   #:use-module (guix download)
+  #:use-module (guix git-download)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages libusb)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-xyz)
+  #:use-module (gnu packages qt)
   #:use-module (gnu packages xml)
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system python))
@@ -82,3 +84,39 @@ growing list of radios across several manufacturers and allows transferring of
 memory contents between them.")
     (license (list license:gpl3+
                    license:lgpl3+)))) ; chirp/elib_intl.py
+
+(define-public urh
+  (package
+    (name "urh")
+    (version "2.5.7")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/jopohl/urh")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "110fwlj2fw8jgrsgqfkha7lx8f06w0ymh51mgpckx8a0wycznhcy"))))
+    (build-system python-build-system)
+    (inputs
+     `(("python-numpy" ,python-numpy)
+       ("python-psutil" ,python-psutil)
+       ("python-pyqt" ,python-pyqt)
+       ("python-pyzmq" ,python-pyzmq)))
+    (native-inputs
+     `(("python-cython" ,python-cython)))
+    (arguments
+     `(#:tests? #f)) ; tests require an X server
+    (home-page "https://github.com/jopohl/urh")
+    (synopsis "Investigate unknown wireless protocols")
+    (description "The Universal Radio Hacker (URH) is a software for
+investigating unknown wireless protocols.  Features include hardware
+interfaces for common Software Defined Radios, easy demodulation of signals,
+assigning participants to keep overview of your data, customizable decodings
+to crack even sophisticated encodings like CC1101 data whitening, assign
+labels to reveal the logic of the protocol, fuzzing component to find security
+leaks, modulation support to inject the data back into the system, simulation
+environment to perform stateful attacks.")
+    (license license:gpl3)))
-- 
2.21.0

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

* [bug#35169] [PATCH] gnu: Add urh.
  2019-04-06 10:10 [bug#35169] [PATCH] gnu: Add urh Arun Isaac
@ 2019-04-06 10:22 ` Danny Milosavljevic
  2019-04-09  9:24   ` Arun Isaac
                     ` (2 more replies)
  2022-04-29 12:45 ` bug#35169: " Guillaume Le Vaillant
  1 sibling, 3 replies; 11+ messages in thread
From: Danny Milosavljevic @ 2019-04-06 10:22 UTC (permalink / raw)
  To: Arun Isaac; +Cc: 35169

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

On Sat,  6 Apr 2019 15:40:33 +0530
Arun Isaac <arunisaac@systemreboot.net> wrote:

> +     `(#:tests? #f)) ; tests require an X server

urh uses Qt as GUI library, so maybe

(setenv "QT_QPA_PLATFORM" "offscreen")

would be enough (in a phase before 'check).

Otherwise make it start an X server :)

Otherwise LGTM!

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

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

* [bug#35169] [PATCH] gnu: Add urh.
  2019-04-06 10:22 ` Danny Milosavljevic
@ 2019-04-09  9:24   ` Arun Isaac
  2019-04-16 10:31   ` Arun Isaac
  2019-04-25 18:20   ` Arun Isaac
  2 siblings, 0 replies; 11+ messages in thread
From: Arun Isaac @ 2019-04-09  9:24 UTC (permalink / raw)
  To: Danny Milosavljevic; +Cc: 35169

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


>> +     `(#:tests? #f)) ; tests require an X server
>
> urh uses Qt as GUI library, so maybe
>
> (setenv "QT_QPA_PLATFORM" "offscreen")
>
> would be enough (in a phase before 'check).
>
> Otherwise make it start an X server :)

I'll work on this over the weekend and get back to you.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]

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

* [bug#35169] [PATCH] gnu: Add urh.
  2019-04-06 10:22 ` Danny Milosavljevic
  2019-04-09  9:24   ` Arun Isaac
@ 2019-04-16 10:31   ` Arun Isaac
  2019-04-25 18:20   ` Arun Isaac
  2 siblings, 0 replies; 11+ messages in thread
From: Arun Isaac @ 2019-04-16 10:31 UTC (permalink / raw)
  To: Danny Milosavljevic; +Cc: 35169

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


>> +     `(#:tests? #f)) ; tests require an X server
>
> urh uses Qt as GUI library, so maybe
>
> (setenv "QT_QPA_PLATFORM" "offscreen")

This works, but there are a lot of other failing tests. Many of them
appear to be upstream bugs. I'm trying to fix them one by one and get
this package ready.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]

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

* [bug#35169] [PATCH] gnu: Add urh.
  2019-04-06 10:22 ` Danny Milosavljevic
  2019-04-09  9:24   ` Arun Isaac
  2019-04-16 10:31   ` Arun Isaac
@ 2019-04-25 18:20   ` Arun Isaac
  2019-04-25 18:45     ` Tobias Geerinckx-Rice
  2 siblings, 1 reply; 11+ messages in thread
From: Arun Isaac @ 2019-04-25 18:20 UTC (permalink / raw)
  To: Danny Milosavljevic; +Cc: 35169


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


Finally got it working!


[-- Attachment #1.2: 0001-gnu-Add-hackrf.patch --]
[-- Type: text/x-patch, Size: 2455 bytes --]

From 81957a3ac8526eca7a27780e8c0fe1873123de53 Mon Sep 17 00:00:00 2001
From: Arun Isaac <arunisaac@systemreboot.net>
Date: Thu, 25 Apr 2019 20:32:13 +0530
Subject: [PATCH 1/2] gnu: Add hackrf.

* gnu/packages/ham-radio.scm (hackrf): New variable.
---
 gnu/packages/ham-radio.scm | 35 ++++++++++++++++++++++++++++++++++-
 1 file changed, 34 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/ham-radio.scm b/gnu/packages/ham-radio.scm
index 6e91866905..e9521032cc 100644
--- a/gnu/packages/ham-radio.scm
+++ b/gnu/packages/ham-radio.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2017, 2018 Arun Isaac <arunisaac@systemreboot.net>
+;;; Copyright © 2017, 2018, 2019 Arun Isaac <arunisaac@systemreboot.net>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -20,6 +20,7 @@
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
   #:use-module (guix download)
+  #:use-module (gnu packages algebra)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages libusb)
   #:use-module (gnu packages pkg-config)
@@ -82,3 +83,35 @@ growing list of radios across several manufacturers and allows transferring of
 memory contents between them.")
     (license (list license:gpl3+
                    license:lgpl3+)))) ; chirp/elib_intl.py
+
+(define-public hackrf
+  (package
+    (name "hackrf")
+    (version "2018.01.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://github.com/mossmann/hackrf/releases/download/v"
+                           version "/hackrf-" version ".tar.xz"))
+       (sha256
+        (base32
+         "054x08y02gfwax2yb95ajg7gdm8ab1sckcmkcy1s2bqxkb0av6x8"))))
+    (build-system cmake-build-system)
+    (inputs
+     `(("fftwf" ,fftwf)
+       ("libusb" ,libusb)))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (arguments
+     `(#:tests? #f ; no tests
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'chdir-to-source
+           (lambda _
+             (chdir "host")
+             #t)))))
+    (home-page "https://github.com/mossmann/hackrf")
+    (synopsis "Driver for HackRF, a general purpose software defined radio")
+    (description "@code{hackrf} provides drivers for HackRF, a general purpose
+software defined radio (SDR).")
+    (license license:gpl2+)))
-- 
2.21.0


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.3: 0002-gnu-Add-urh.patch --]
[-- Type: text/x-patch, Size: 4132 bytes --]

From 4693278e0b249d3edb0556d507d8eeb6ee5d2c4b Mon Sep 17 00:00:00 2001
From: Arun Isaac <arunisaac@systemreboot.net>
Date: Sat, 6 Apr 2019 14:44:44 +0530
Subject: [PATCH 2/2] gnu: Add urh.

* gnu/packages/ham-radio.scm (urh): New variable.
---
 gnu/packages/ham-radio.scm | 68 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 68 insertions(+)

diff --git a/gnu/packages/ham-radio.scm b/gnu/packages/ham-radio.scm
index e9521032cc..58a8161851 100644
--- a/gnu/packages/ham-radio.scm
+++ b/gnu/packages/ham-radio.scm
@@ -20,12 +20,15 @@
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
   #:use-module (guix download)
+  #:use-module (guix git-download)
   #:use-module (gnu packages algebra)
+  #:use-module (gnu packages check)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages libusb)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-xyz)
+  #:use-module (gnu packages qt)
   #:use-module (gnu packages xml)
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system python))
@@ -115,3 +118,68 @@ memory contents between them.")
     (description "@code{hackrf} provides drivers for HackRF, a general purpose
 software defined radio (SDR).")
     (license license:gpl2+)))
+
+(define-public urh
+  (package
+    (name "urh")
+    (version "2.5.7")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/jopohl/urh")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "110fwlj2fw8jgrsgqfkha7lx8f06w0ymh51mgpckx8a0wycznhcy"))))
+    (build-system python-build-system)
+    (inputs
+     `(("hackrf" ,hackrf)
+       ("python-numpy" ,python-numpy)
+       ("python-psutil" ,python-psutil)
+       ("python-pyqt" ,python-pyqt)
+       ("python-pyzmq" ,python-pyzmq)
+       ("rtl-sdr" ,rtl-sdr)))
+    (native-inputs
+     `(("python-cython" ,python-cython)
+       ("python-pytest" ,python-pytest)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'configure-compiler
+           (lambda _
+             ;; Use gcc as compiler
+             (substitute* "src/urh/dev/native/ExtensionHelper.py"
+               (("compiler = ccompiler\\.new_compiler\\(\\)\n" all)
+                (string-append
+                 all "    compiler.set_executables(compiler='gcc',"
+                 " compiler_so='gcc', linker_exe='gcc', linker_so='gcc -shared')\n")))
+             #t))
+         (replace 'build
+           (lambda _
+             (invoke "python" "setup.py" "build" "build_ext")
+             (invoke "python" "src/urh/cythonext/build.py")))
+         (replace 'check
+           (lambda _
+             ;; Run X server tests offscreen in headless mode
+             (setenv "QT_QPA_PLATFORM" "offscreen")
+             (setenv "HOME" "/tmp")
+             ;; Fix permissions
+             (with-directory-excursion "tests/data"
+               (for-each (lambda (file)
+                           (chmod file #o755))
+                         (list "decode.py" "encode.py")))
+             ;; Run tests
+             (invoke "pytest"))))))
+    (home-page "https://github.com/jopohl/urh")
+    (synopsis "Investigate unknown wireless protocols")
+    (description "The Universal Radio Hacker (URH) is a software for
+investigating unknown wireless protocols.  Features include hardware
+interfaces for common software defined radios, easy demodulation of signals,
+assigning participants to keep an overview of your data, customizable
+decodings to crack even sophisticated encodings like CC1101 data whitening,
+assigning labels to reveal the logic of the protocol, a fuzzing component to
+find security leaks, modulation support to inject data back into the system
+and a simulation environment to perform stateful attacks.")
+    (license license:gpl3+)))
-- 
2.21.0


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]

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

* [bug#35169] [PATCH] gnu: Add urh.
  2019-04-25 18:20   ` Arun Isaac
@ 2019-04-25 18:45     ` Tobias Geerinckx-Rice
  2019-04-26  7:00       ` Arun Isaac
  0 siblings, 1 reply; 11+ messages in thread
From: Tobias Geerinckx-Rice @ 2019-04-25 18:45 UTC (permalink / raw)
  To: 35169

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

Arun,

Arun Isaac wrote:
> +    (home-page "https://github.com/mossmann/hackrf")
> +    (synopsis "Driver for HackRF, a general purpose software 
> defined radio")
> +    (description "@code{hackrf} provides drivers for HackRF, a 
> general purpose
> +software defined radio (SDR).")

Drivers for…  Linux?  CUSE?  Something else?  (URH?)

Kind regards,

T G-R

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 227 bytes --]

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

* [bug#35169] [PATCH] gnu: Add urh.
  2019-04-25 18:45     ` Tobias Geerinckx-Rice
@ 2019-04-26  7:00       ` Arun Isaac
  2022-04-07 12:41         ` zimoun
  0 siblings, 1 reply; 11+ messages in thread
From: Arun Isaac @ 2019-04-26  7:00 UTC (permalink / raw)
  To: Tobias Geerinckx-Rice; +Cc: 35169

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


>> +    (synopsis "Driver for HackRF, a general purpose software 
>> defined radio")
>> +    (description "@code{hackrf} provides drivers for HackRF, a 
>> general purpose
>> +software defined radio (SDR).")
>
> Drivers for…  Linux?  CUSE?  Something else?  (URH?)

Actually, this package provides a library that uses libusb to interface
with the HackRF software defined radio. Shall I rewrite the synopsis and
description as follows, replacing "driver" with "library"? Or, should I
say "userspace driver" instead of "library"?

synopsis:

Interface library for the HackRF software defined radio

description:

@code{hackrf} provides a library to interface with HackRF, a general
purpose software defined radio.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]

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

* [bug#35169] [PATCH] gnu: Add urh.
  2019-04-26  7:00       ` Arun Isaac
@ 2022-04-07 12:41         ` zimoun
  2022-04-19 10:09           ` Arun Isaac
  0 siblings, 1 reply; 11+ messages in thread
From: zimoun @ 2022-04-07 12:41 UTC (permalink / raw)
  To: Arun Isaac; +Cc: Tobias Geerinckx-Rice, 35169

Hi,

Looking at old patch submission, I hit this:

        <http://issues.guix.gnu.org/issue/35169>

and I miss why it is not merged…

On Fri, 26 Apr 2019 at 12:30, Arun Isaac <arunisaac@systemreboot.net> wrote:
>>> +    (synopsis "Driver for HackRF, a general purpose software
>>> defined radio")
>>> +    (description "@code{hackrf} provides drivers for HackRF, a
>>> general purpose
>>> +software defined radio (SDR).")
>>
>> Drivers for…  Linux?  CUSE?  Something else?  (URH?)
>
> Actually, this package provides a library that uses libusb to interface
> with the HackRF software defined radio. Shall I rewrite the synopsis and
> description as follows, replacing "driver" with "library"? Or, should I
> say "userspace driver" instead of "library"?
>
> synopsis:
>
> Interface library for the HackRF software defined radio
>
> description:
>
> @code{hackrf} provides a library to interface with HackRF, a general
> purpose software defined radio.

…I mean, description and synopsis are important but they should not be a
blocker here. :-)

Arun, could you rebase and merge it?


Cheers,
simon




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

* [bug#35169] [PATCH] gnu: Add urh.
  2022-04-07 12:41         ` zimoun
@ 2022-04-19 10:09           ` Arun Isaac
  0 siblings, 0 replies; 11+ messages in thread
From: Arun Isaac @ 2022-04-19 10:09 UTC (permalink / raw)
  To: zimoun; +Cc: Tobias Geerinckx-Rice, 35169


Hi zimoun,

Sorry for the very late response! hackrf is already packaged for Guix
thanks to an unrelated commit by Christopher Howard in
79c4fb4f366cff3ad75982b4a09c6bd82e604674. urh is many new versions ahead
and my old patch no longer works. On casual inspection, I found that it
might take significantly more work to get working again. But, I'm not
using urh any longer and I'm not interested in it any more. Would it be
ok to close this issue without merging?

Regards,
Arun




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

* bug#35169: [PATCH] gnu: Add urh.
  2019-04-06 10:10 [bug#35169] [PATCH] gnu: Add urh Arun Isaac
  2019-04-06 10:22 ` Danny Milosavljevic
@ 2022-04-29 12:45 ` Guillaume Le Vaillant
  2022-05-02  5:54   ` [bug#35169] " Arun Isaac
  1 sibling, 1 reply; 11+ messages in thread
From: Guillaume Le Vaillant @ 2022-04-29 12:45 UTC (permalink / raw)
  To: Arun Isaac; +Cc: 35169-done

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

Hi Arun,

I made an updated package definition for urh based on yours and pushed
it as 653eef9b41ad74cb0e0aa10ed4ca691359b2515a.
Thanks.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 247 bytes --]

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

* [bug#35169] [PATCH] gnu: Add urh.
  2022-04-29 12:45 ` bug#35169: " Guillaume Le Vaillant
@ 2022-05-02  5:54   ` Arun Isaac
  0 siblings, 0 replies; 11+ messages in thread
From: Arun Isaac @ 2022-05-02  5:54 UTC (permalink / raw)
  To: Guillaume Le Vaillant; +Cc: 35169-done


Thanks, Guillaume!




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

end of thread, other threads:[~2022-05-02  5:56 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-04-06 10:10 [bug#35169] [PATCH] gnu: Add urh Arun Isaac
2019-04-06 10:22 ` Danny Milosavljevic
2019-04-09  9:24   ` Arun Isaac
2019-04-16 10:31   ` Arun Isaac
2019-04-25 18:20   ` Arun Isaac
2019-04-25 18:45     ` Tobias Geerinckx-Rice
2019-04-26  7:00       ` Arun Isaac
2022-04-07 12:41         ` zimoun
2022-04-19 10:09           ` Arun Isaac
2022-04-29 12:45 ` bug#35169: " Guillaume Le Vaillant
2022-05-02  5:54   ` [bug#35169] " Arun Isaac

Code repositories for project(s) associated with this external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.