From patchwork Fri Jan 19 23:29:03 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Leo Famulari X-Patchwork-Id: 59161 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 9C21527BBEA; Fri, 19 Jan 2024 23:30:40 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-3.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H5,RCVD_IN_MSPIKE_WL, SPF_HELO_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id AE5CC27BBE2 for ; Fri, 19 Jan 2024 23:30:36 +0000 (GMT) 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 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+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/radio.scm (viz1090): New variable. Change-Id: I1bee79df0906075728d0faee80eb0ccbbdb368dc --- gnu/packages/radio.scm | 141 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 141 insertions(+) base-commit: f7c0ccb1866b559dc2ce0c538d10a150822824c8 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")