From 2bee789a47eb61d17945d6cb87700c9719ebe887 Mon Sep 17 00:00:00 2001 From: Guillaume Le Vaillant Date: Thu, 7 May 2020 16:48:49 +0200 Subject: [PATCH] gnu: rtl-sdr: Install udev rules. * gnu/packages/radio.scm (rtl-sdr)[arguments]: Add '-DINSTALL_UDEV_RULES=ON' to configure-flags and add a 'fix-paths' phase to put the udev rules in the right place. [description]: Indicate how to add the udev rules to the system configuration. --- gnu/packages/radio.scm | 29 ++++++++++++++++++++++++++--- 1 file changed, 26 insertions(+), 3 deletions(-) diff --git a/gnu/packages/radio.scm b/gnu/packages/radio.scm index 229597b7d5..7fc6c4bf2f 100644 --- a/gnu/packages/radio.scm +++ b/gnu/packages/radio.scm @@ -123,13 +123,36 @@ (define-public rtl-sdr (native-inputs `(("pkg-config" ,pkg-config))) (arguments - `(#:configure-flags '("-DDETACH_KERNEL_DRIVER=ON") - #:tests? #f)) ; No tests + `(#:configure-flags '("-DDETACH_KERNEL_DRIVER=ON" + "-DINSTALL_UDEV_RULES=ON") + #:tests? #f ; No tests + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-paths + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "CMakeLists.txt" + (("DESTINATION \"/etc/") + (string-append "DESTINATION \"" + (assoc-ref outputs "out") + "/etc/"))) + #t))))) (home-page "https://osmocom.org/projects/sdr/wiki/rtl-sdr") (synopsis "Software defined radio driver for Realtek RTL2832U") (description "DVB-T dongles based on the Realtek RTL2832U can be used as a cheap software defined radio, since the chip allows transferring the raw I/Q -samples to the host. @code{rtl-sdr} provides drivers for this purpose.") +samples to the host. @code{rtl-sdr} provides drivers for this purpose. + +To install the rtl-sdr udev rules, you must add this package in the +configuration of the udev system service. E.g.: + +@lisp +(services + (modify-services %desktop-services + (udev-service-type config => + (udev-configuration (inherit config) + (rules (cons rtl-sdr + (udev-configuration-rules config))))))) +@end lisp") (license license:gpl2+))) (define-public chirp