From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1.migadu.com ([2001:41d0:403:58f0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms8.migadu.com with LMTPS id CKlNEIkJq2XzPAEA62LTzQ:P1 (envelope-from ) for ; Sat, 20 Jan 2024 00:45:13 +0100 Received: from aspmx1.migadu.com ([2001:41d0:403:58f0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1.migadu.com with LMTPS id CKlNEIkJq2XzPAEA62LTzQ (envelope-from ) for ; Sat, 20 Jan 2024 00:45:13 +0100 X-Envelope-To: larch@yhetil.org Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=famulari.name header.s=mesmtp header.b="j 3Yfs8z"; dkim=fail ("headers rsa verify failed") header.d=messagingengine.com header.s=fm3 header.b=LAmruZJz; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org"; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1705707913; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:resent-cc: resent-from:resent-sender:resent-message-id:list-id:list-help: list-unsubscribe:list-subscribe:list-post:dkim-signature; bh=iMClPkyv7zJ5zPFJuMfoIBctaEzC8OdHwMatrpZD49w=; b=ZkO/ca02wIUAcq+XDfeqVL7xTyYwzmLFwMeVVhjaIUyFFCeOkWSPvagPxqZCrnuA3RKOMW VhJv/yXhdBC6J+oTn1BdaKg81+yp013GbuLNyeFVTleE0d/eWmA3LyD1zRNJlFHx0RBwkJ vBhf9/noE/Sf+1XvWh34PgP/4Tm9dRW7EiOs68UXaLfgSkE2IbJ6RxK4F77Z/fncsgJfoW neT05QcR3abddOI25dA4Tu7TmcSf17BoklOOH2c40V/KlEvlv6YxxX4GSJeoM85g4Mmo5F q5CbGaZC8gR22w3rIhtOe2pRkSSX29x3TNjb4iEVyWbdhHqI3tZYznMtg6nAsw== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=famulari.name header.s=mesmtp header.b="j 3Yfs8z"; dkim=fail ("headers rsa verify failed") header.d=messagingengine.com header.s=fm3 header.b=LAmruZJz; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org"; dmarc=none ARC-Seal: i=1; s=key1; d=yhetil.org; t=1705707913; a=rsa-sha256; cv=none; b=hCyAwX1YXCqvI6fEp26/qa3Onhe0GTiPyeXoHo9860vHGQKVLx/n2q403aWaKLg4M8IZzT U+Ghs5DJLXG9Ilhfsm3Nl96iQpy9ET63mWjsNCkk0ZEGp+uIMWnZypiGuabeQpPoTcFwit yRBOkanyhXq1f0VHNd62x4hFwf0bAyOHeBiJkNXKxAcmtxGTFFfxIOP7zdcOKL2OPVaZLQ 3aC1gPsXRBquMx8hGb7/5w68TzHA4jf1OCvCKJjsRkVJ/eogjPXOkNJp027OKJADAgxHru iGhB1xoNT8vAi17YzsPUiCmJuBBo1XeCmexMxvtgtQALVbr+VvtqVFv5wcQctw== Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id C42F641836 for ; Sat, 20 Jan 2024 00:45:12 +0100 (CET) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rQyJR-0005zp-IO; Fri, 19 Jan 2024 18:30:15 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rQyJK-0005zN-Cv for guix-patches@gnu.org; Fri, 19 Jan 2024 18:30:08 -0500 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rQyJE-0003Ik-LN for guix-patches@gnu.org; Fri, 19 Jan 2024 18:30:04 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rQyJG-0001gH-Su for guix-patches@gnu.org; Fri, 19 Jan 2024 18:30:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#68596] [PATCH] gnu: Add viz1090. Resent-From: Leo Famulari Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 19 Jan 2024 23:30:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 68596 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 68596@debbugs.gnu.org Cc: glv@posteo.net X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.17057069716388 (code B ref -1); Fri, 19 Jan 2024 23:30:02 +0000 Received: (at submit) by debbugs.gnu.org; 19 Jan 2024 23:29:31 +0000 Received: from localhost ([127.0.0.1]:60415 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rQyIk-0001ey-HL for submit@debbugs.gnu.org; Fri, 19 Jan 2024 18:29:31 -0500 Received: from lists.gnu.org ([2001:470:142::17]:33140) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rQyIh-0001ed-Um for submit@debbugs.gnu.org; Fri, 19 Jan 2024 18:29:28 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rQyIZ-0005vb-P4 for guix-patches@gnu.org; Fri, 19 Jan 2024 18:29:19 -0500 Received: from out2-smtp.messagingengine.com ([66.111.4.26]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rQyIX-0002tI-9F for guix-patches@gnu.org; Fri, 19 Jan 2024 18:29:19 -0500 Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailout.nyi.internal (Postfix) with ESMTP id 39C515C0111; Fri, 19 Jan 2024 18:29:14 -0500 (EST) Received: from mailfrontend1 ([10.202.2.162]) by compute3.internal (MEProxy); Fri, 19 Jan 2024 18:29:14 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=famulari.name; h=cc:cc:content-transfer-encoding:content-type:content-type :date:date:from:from:in-reply-to:message-id:mime-version :reply-to:subject:subject:to:to; s=mesmtp; t=1705706954; x= 1705793354; bh=iMClPkyv7zJ5zPFJuMfoIBctaEzC8OdHwMatrpZD49w=; b=j 3Yfs8zAM2Rkh2DmJjya9Au5GrcR8w6IW4gQcIMMEM9Ou+b7aVNRab2C3R2PDHUMh 2E/oDxaokFeW72khnxuCEwHmqCN1Zdrtg2Bvnr5W9dQbQp7U5Q6iWpR3gGdKHIlZ fGm6PRpvfBasBe1CogeTTEF5VTk5QPEpBtLOWi76yA= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:message-id:mime-version:reply-to:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm3; t=1705706954; x=1705793354; bh=iMClPkyv7zJ5z PFJuMfoIBctaEzC8OdHwMatrpZD49w=; b=LAmruZJziiTXqhATndYcJXAvylp0b y+jOC7Btg+OV6mJT00hZy2AQJUKN9RUGyCPma9hBbRzpwbAYficfwCQOHVWM3aG2 Fnskd8WgM1sdTSqBMaQhwYbhx3cpmXqLwXnammj9gCSoqmBLtzAEPXsNQOqLc7A+ 2SOLk0yKW+yqNUW2tLsih/L9MZUAmrTq0S0pZGIPJdnMf7vD/dBv6DB6VdSFI1tH /ql3eh0KrgM3nhuUi9pKcVtpxrzT+b7FshaK1NFFgJ2yylr52k4Y07fF94Gr4ta0 SxMy9aHloi9xWPpoiD1mGbM1K4ol9xK+0+y6rGGIiJixP/kh2yt7oWgRA== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrvdekuddgudduucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucenucfjughrpefhvfevufffkffogggtgfesthekre dtredtjeenucfhrhhomhepnfgvohcuhfgrmhhulhgrrhhiuceolhgvohesfhgrmhhulhgr rhhirdhnrghmvgeqnecuggftrfgrthhtvghrnhepueeiteegheekueejvdekgeehvdeihe fgvdeuhedtgfeftddtgfelvdfhffdtueetnecuffhomhgrihhnpehgihhthhhusgdrtgho mhdprghrtghhihhvvgdrohhrghdpnhgrthhurhgrlhgvrghrthhhuggrthgrrdgtohhmpd grrhgtghhishdrtghomhenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgr ihhlfhhrohhmpehlvghosehfrghmuhhlrghrihdrnhgrmhgv X-ME-Proxy: Feedback-ID: i819c4023:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri, 19 Jan 2024 18:29:13 -0500 (EST) From: Leo Famulari Date: Fri, 19 Jan 2024 18:29:03 -0500 Message-ID: <77b69c65826a4546659d4f2e399685e9611f0401.1705706943.git.leo@famulari.name> X-Mailer: git-send-email 2.41.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Received-SPF: pass client-ip=66.111.4.26; envelope-from=leo@famulari.name; helo=out2-smtp.messagingengine.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: guix-patches-bounces+larch=yhetil.org@gnu.org X-Migadu-Flow: FLOW_IN X-Migadu-Country: US X-Migadu-Spam-Score: -1.77 X-Migadu-Queue-Id: C42F641836 X-Spam-Score: -1.77 X-Migadu-Scanner: mx11.migadu.com X-TUID: 3EIN3/LCbDCG * gnu/packages/radio.scm (viz1090): New variable. Change-Id: I1bee79df0906075728d0faee80eb0ccbbdb368dc --- gnu/packages/radio.scm | 141 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 141 insertions(+) diff --git a/gnu/packages/radio.scm b/gnu/packages/radio.scm index f34511b352..f8b10e7061 100644 --- a/gnu/packages/radio.scm +++ b/gnu/packages/radio.scm @@ -14,6 +14,7 @@ ;;; Copyright © 2022 Ryan Tolboom ;;; Copyright © 2023 Sharlatan Hellseher ;;; Copyright © 2023 Efraim Flashner +;;; Copyright © 2024 Leo Famulari ;;; ;;; This file is part of GNU Guix. ;;; @@ -1890,6 +1891,146 @@ (define-public dump1090 (home-page "https://github.com/flightaware/dump1090") (license license:gpl2+))) +(define-public viz1090 + (let ((commit "ec055e1220f897b393f033a4cee02771c69dadc3") + (revision "0")) + (package + (name "viz1090") + ;; There are no "releases" of this program yet. + (version (git-version "0.0.0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://www.github.com/nmatsuda/viz1090") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0gksr6dsaa4rffwrfcbhhnclmj5yabrv0dc8mb8q7hmbv8znd232")))) + (build-system gnu-build-system) + (arguments + (list + #:tests? #f ; No test suite + #:make-flags + #~(list (string-append "CXXFLAGS=-I" + #$(this-package-input "sdl-union") + "/include/SDL2") + (string-append "CC=" #+(cc-for-target))) + #:phases + #~(modify-phases %standard-phases + (delete 'configure) ; No ./configure script + (add-before 'build 'build-map-data + (lambda _ + (let* ((share (string-append #$output "/share/viz1090"))) + ;; Disable the build-time maps downloader and adjust the + ;; decompression procedure accordingly. + (substitute* "getmap.sh" + (("wget") "#wget") + (("unzip.*") + (string-append + "unzip " #$(this-package-native-input "political-maps") " && \n" + "unzip " #$(this-package-native-input "population-maps") " && \n" + "unzip " #$(this-package-native-input "airports-map") " && \n" + "unzip " #$(this-package-native-input "arcgis-data") " && \n"))) + ;; Adjust the run-time paths of the map data + (substitute* "Map.cpp" + (("mapdata.bin") + (string-append share "/mapdata.bin")) + (("airportdata.bin") + (string-append share "/airportdata.bin")) + (("\\\(\"mapnames") + (string-append "\(\"" share "/mapnames")) + (("\\\(\"airportnames") + (string-append "\(\"" share "/airportnames"))) + (invoke "./getmap.sh")))) + (add-before 'build 'patch-font-path + (lambda _ + (substitute* "View.cpp" + (("font\\/") + (string-append #$output "/font/"))))) + (replace 'install ; No install target + (lambda* (#:key outputs #:allow-other-keys) + (let* ((bin (string-append #$output "/bin")) + (share (string-append #$output "/share/viz1090")) + (doc (string-append share "-" #$(package-version this-package) "/doc")) + (fonts (string-append #$output "/font"))) + (install-file "viz1090" bin) + (install-file "mapdata.bin" share) + (install-file "airportdata.bin" share) + (install-file "mapnames" share) + (install-file "airportnames" share) + (install-file "README.md" doc) + (mkdir fonts) + (copy-recursively "font" fonts))))))) + (native-inputs + `(("political-maps" + ;; version 5.1.1 of this data + ;; The upstream site does not version the URL for the most recent + ;; release, so we store them on archive.org to create a stable URL. + ;; See 'getmap.sh' in the viz1090 source distribution. + ,(origin + (method url-fetch) + (uri + "https://archive.org/download/ne_10m_admin_1_states_provinces/ne_10m_admin_1_states_provinces.zip") + ;"https://www.naturalearthdata.com/http//www.naturalearthdata.com/download/10m/cultural/ne_10m_admin_1_states_provinces.zip") + (sha256 + (base32 + "019bp9ccna1xxrk3c1af6k6pjcb7jvf0l8a6jj7ha8vk6ck9gigg")))) + ("population-maps" + ;; version 5.1.2 of this data + ;; The upstream site does not version the URL for the most recent + ;; release, so we store them on archive.org to create a stable URL. + ;; See 'getmap.sh' in the viz1090 source distribution. + ,(origin + (method url-fetch) + (uri + "https://archive.org/download/ne_10m_populated_places/ne_10m_populated_places.zip") + ;"https://www.naturalearthdata.com/http//www.naturalearthdata.com/download/10m/cultural/ne_10m_populated_places.zip") + (sha256 + (base32 + "0yqxqkydzlwylh2j6fidqc57sdd4h2wrk8qd87h069ixy239256d")))) + ("airports-map" + ;; version 5.0.0 of this data + ;; The upstream site does not version the URL for the most recent + ;; release, so we store them on archive.org to create a stable URL. + ;; See 'getmap.sh' in the viz1090 source distribution. + ,(origin + (method url-fetch) + (uri + "https://archive.org/download/ne_10m_airports/ne_10m_airports.zip") + ;"https://www.naturalearthdata.com/http//www.naturalearthdata.com/download/10m/cultural/ne_10m_airports.zip") + (sha256 + (base32 + "1cvxgp141i7jy9fd49xxfz3g2k07szh745zd3l9lq7kynrf377m2")))) + ("arcgis-data" + ;; See 'getmap.sh' in the viz1090 source distribution. + ,(origin + (method url-fetch) + (uri + "https://opendata.arcgis.com/datasets/4d8fa46181aa470d809776c57a8ab1f6_0.zip") + (sha256 + (base32 + "1aqa7dc3xp1mcz7zm3v5m2qjdkzgyzgzlif4cvqsba2l2flc3v74")))) + ;; For building the map data + ("unzip" ,unzip) + ("python" ,python) + ("python-numpy" ,python-numpy) + ("python-tqdm" ,python-tqdm))) + (inputs + (list gdal + rtl-sdr + (sdl-union (list sdl2 sdl2-ttf sdl2-gfx)) + python-fiona + python-shapely + python-requests)) + (synopsis "Visualizer for dump1090 ADS-B data") + (description "Viz1090 provides a visual map-based display of +@acronym{ADS-B, Automatic Dependent Surveillance–Broadcast} data that is +broadcast from airborne aircraft. It reads data provided by @code{dump1090} as +described in @file{README.md} to show nearby aircraft on a map.") + (home-page "https://github.com/nmatsuda/viz1090") + (license license:bsd-2)))) + (define-public rtl-433 (package (name "rtl-433") base-commit: f7c0ccb1866b559dc2ce0c538d10a150822824c8 -- 2.41.0