From: Leo Famulari <leo@famulari.name>
To: 68596@debbugs.gnu.org
Cc: glv@posteo.net
Subject: [bug#68596] [PATCH] gnu: Add viz1090.
Date: Fri, 19 Jan 2024 18:29:03 -0500 [thread overview]
Message-ID: <77b69c65826a4546659d4f2e399685e9611f0401.1705706943.git.leo@famulari.name> (raw)
* 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 <ryan@using.tech>
;;; Copyright © 2023 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; Copyright © 2023 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2024 Leo Famulari <leo@famulari.name>
;;;
;;; 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
next reply other threads:[~2024-01-19 23:45 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-01-19 23:29 Leo Famulari [this message]
2024-01-31 10:03 ` [bug#68596] [PATCH] gnu: Add viz1090 Guillaume Le Vaillant
2024-01-31 10:22 ` Guillaume Le Vaillant
2024-02-01 21:12 ` Leo Famulari
2024-02-01 21:14 ` Leo Famulari
2024-02-01 21:11 ` Leo Famulari
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=77b69c65826a4546659d4f2e399685e9611f0401.1705706943.git.leo@famulari.name \
--to=leo@famulari.name \
--cc=68596@debbugs.gnu.org \
--cc=glv@posteo.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/guix.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).