From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([209.51.188.92]:47674) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hJizY-0007bS-Pu for guix-patches@gnu.org; Thu, 25 Apr 2019 14:21:06 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hJizX-0006Q7-7d for guix-patches@gnu.org; Thu, 25 Apr 2019 14:21:04 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:45765) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hJizW-0006N4-8i for guix-patches@gnu.org; Thu, 25 Apr 2019 14:21:03 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1hJizW-00024N-37 for guix-patches@gnu.org; Thu, 25 Apr 2019 14:21:02 -0400 Subject: [bug#35169] [PATCH] gnu: Add urh. Resent-Message-ID: From: Arun Isaac In-Reply-To: <20190406122240.2a140630@scratchpost.org> References: <20190406101033.24342-1-arunisaac@systemreboot.net> <20190406122240.2a140630@scratchpost.org> Date: Thu, 25 Apr 2019 23:50:21 +0530 Message-ID: MIME-Version: 1.0 Content-Type: multipart/signed; boundary="==-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: Danny Milosavljevic Cc: 35169@debbugs.gnu.org --==-=-= Content-Type: multipart/mixed; boundary="=-=-=" --=-=-= Content-Type: text/plain Finally got it working! --=-=-= Content-Type: text/x-patch; charset=utf-8 Content-Disposition: inline; filename=0001-gnu-Add-hackrf.patch Content-Transfer-Encoding: quoted-printable From=2081957a3ac8526eca7a27780e8c0fe1873123de53 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Thu, 25 Apr 2019 20:32:13 +0530 Subject: [PATCH 1/2] gnu: Add hackrf. * gnu/packages/ham-radio.scm (hackrf): New variable. =2D-- 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 =2D-- a/gnu/packages/ham-radio.scm +++ b/gnu/packages/ham-radio.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU =2D;;; Copyright =C2=A9 2017, 2018 Arun Isaac +;;; Copyright =C2=A9 2017, 2018, 2019 Arun Isaac ;;; ;;; 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/do= wnload/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 pur= pose +software defined radio (SDR).") + (license license:gpl2+))) =2D-=20 2.21.0 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0002-gnu-Add-urh.patch Content-Transfer-Encoding: quoted-printable From=204693278e0b249d3edb0556d507d8eeb6ee5d2c4b Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Sat, 6 Apr 2019 14:44:44 +0530 Subject: [PATCH 2/2] gnu: Add urh. * gnu/packages/ham-radio.scm (urh): New variable. =2D-- 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 =2D-- 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 pur= pose 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 =3D ccompiler\\.new_compiler\\(\\)\n" all) + (string-append + all " compiler.set_executables(compiler=3D'gcc'," + " compiler_so=3D'gcc', linker_exe=3D'gcc', linker_so=3D'g= cc -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 signal= s, +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+))) =2D-=20 2.21.0 --=-=-=-- --==-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEf3MDQ/Lwnzx3v3nTLiXui2GAK7MFAlzB+mUACgkQLiXui2GA K7ODRgf9HBwmmPhoz1h7+qMqet8HseEPr32PaVI447yAF3VTKADZkLkDzO7an6+6 BPZJI0RbEDhZIvmhFqObsqUyj4ynE+r2MCP9tehrps4xWnPxUKxmCcLkMJz6KFl9 CMFJGEJCuLgNECl0bSe38okbRNJu2nGWeh9sRrockjkDMYKgG7I3wjn+3kgPfDA6 Wvt0REGTgqkIOQD+CczbxhkD4PekCLVt7mNGj1D3ZAXRKsYPdiF/O6qwErVFX28K HMi51aiB4fpKW0sEutcivkiu7g5jhRTPhP+15aXCzC1KB/3Bc7HVkd8A0XM7xsxW gdo7Gp3sL7mrelcWfXtqa/YePIh5SA== =NsMQ -----END PGP SIGNATURE----- --==-=-=--