diff options
author | Elis Hirwing <elis@hirwing.se> | 2019-02-09 19:45:09 +0100 |
---|---|---|
committer | Elis Hirwing <elis@hirwing.se> | 2019-02-09 21:40:00 +0100 |
commit | d2c7a42d6cc9bae7228b4b752a00dc8985d0c31c (patch) | |
tree | 2864c3fb3938a629cbf84a6319a39f61a1fa0283 /pkgs/applications/radio/rtl-sdr | |
parent | 620d16f1fbdab2f646422cbbe15959496a30fb57 (diff) |
rtl-sdr: Move from misc to radio
Diffstat (limited to 'pkgs/applications/radio/rtl-sdr')
-rw-r--r-- | pkgs/applications/radio/rtl-sdr/default.nix | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/pkgs/applications/radio/rtl-sdr/default.nix b/pkgs/applications/radio/rtl-sdr/default.nix new file mode 100644 index 0000000000000..aedc847ee69f5 --- /dev/null +++ b/pkgs/applications/radio/rtl-sdr/default.nix @@ -0,0 +1,37 @@ +{ stdenv, lib, fetchpatch, fetchgit, cmake, pkgconfig, libusb1 }: + +stdenv.mkDerivation rec { + name = "rtl-sdr-${version}"; + version = "0.6.0"; + + src = fetchgit { + url = "git://git.osmocom.org/rtl-sdr.git"; + rev = "refs/tags/${version}"; + sha256 = "0lmvsnb4xw4hmz6zs0z5ilsah5hjz29g1s0050n59fllskqr3b8k"; + }; + + nativeBuildInputs = [ pkgconfig ]; + buildInputs = [ cmake libusb1 ]; + + # TODO: get these fixes upstream: + # * Building with -DINSTALL_UDEV_RULES=ON tries to install udev rules to + # /etc/udev/rules.d/, and there is no option to install elsewhere. So install + # rules manually. + # * Propagate libusb-1.0 dependency in pkg-config file. + postInstall = stdenv.lib.optionalString stdenv.isLinux '' + mkdir -p "$out/etc/udev/rules.d/" + cp ../rtl-sdr.rules "$out/etc/udev/rules.d/99-rtl-sdr.rules" + + pcfile="$out"/lib/pkgconfig/librtlsdr.pc + grep -q "Requires:" "$pcfile" && { echo "Upstream has added 'Requires:' in $(basename "$pcfile"); update nix expression."; exit 1; } + echo "Requires: libusb-1.0" >> "$pcfile" + ''; + + meta = with stdenv.lib; { + description = "Turns your Realtek RTL2832 based DVB dongle into a SDR receiver"; + homepage = http://sdr.osmocom.org/trac/wiki/rtl-sdr; + license = licenses.gpl2Plus; + platforms = platforms.linux ++ platforms.darwin; + maintainers = [ maintainers.bjornfor ]; + }; +} |