summaryrefslogtreecommitdiff
path: root/sci-visualization/pythonprop
diff options
context:
space:
mode:
authorroot <root@alpha.trunkmasters.com>2026-06-12 19:09:37 -0500
committerroot <root@alpha.trunkmasters.com>2026-06-12 19:09:37 -0500
commitb590c8d7572b727d565cc0b8ff660d43569845de (patch)
tree06f7a4102ea4e845df8b66660f252920d52952f9 /sci-visualization/pythonprop
parent24f9cbfc4c34fdb6a6e03311674414e881ceab47 (diff)
downloadbaldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.tar.gz
baldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.tar.xz
baldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.zip
Adding metadata
Diffstat (limited to 'sci-visualization/pythonprop')
-rw-r--r--sci-visualization/pythonprop/Manifest1
-rw-r--r--sci-visualization/pythonprop/files/pythonprop-0.30.1-p20240217.patch169
-rw-r--r--sci-visualization/pythonprop/files/pythonprop-matplotlib3.9.patch65
-rw-r--r--sci-visualization/pythonprop/metadata.xml13
-rw-r--r--sci-visualization/pythonprop/pythonprop-0.30.1_p20240217-r1.ebuild56
5 files changed, 304 insertions, 0 deletions
diff --git a/sci-visualization/pythonprop/Manifest b/sci-visualization/pythonprop/Manifest
new file mode 100644
index 000000000000..8edeec777311
--- /dev/null
+++ b/sci-visualization/pythonprop/Manifest
@@ -0,0 +1 @@
+DIST pythonprop-0.30.1_p20240217.tar.gz 1141620 BLAKE2B 54554d1a50976aa0516e70ef6cabf8c8c8fe41dc15980d0d06defca2dbf722baa4e98dddb974ea0d6da18e3d634661c980685b89411e8de4cf1cded452bb60a1 SHA512 582442e95732c78b580eceaf8b9d4922a23e5b3c5652738b110a40e1b94f91196755fad6e00370328130acc608121961d4e449199610137a757b086b53184b43
diff --git a/sci-visualization/pythonprop/files/pythonprop-0.30.1-p20240217.patch b/sci-visualization/pythonprop/files/pythonprop-0.30.1-p20240217.patch
new file mode 100644
index 000000000000..61e26db5a736
--- /dev/null
+++ b/sci-visualization/pythonprop/files/pythonprop-0.30.1-p20240217.patch
@@ -0,0 +1,169 @@
+diff --git a/data/voacapgui.desktop.in b/data/voacapgui.desktop.in
+index 3237a87..175d7d8 100644
+--- a/data/voacapgui.desktop.in
++++ b/data/voacapgui.desktop.in
+@@ -3,4 +3,5 @@ Type=Application
+ Exec=voacapgui
+ Name=voacapgui
+ Categories=Science;HamRadio
++Keywords=amateur;ham;hf;prediction;plot;radio;voacap;
+ Icon=@PACKAGE@
+diff --git a/man/voa3DPlot.1 b/man/voa3DPlot.1
+new file mode 100644
+index 0000000..1336eea
+--- /dev/null
++++ b/man/voa3DPlot.1
+@@ -0,0 +1,36 @@
++.TH voa3DPlot 1 "FEV 2024" Linux "User Manuals"
++.SH NAME
++voa3DPlot \- Plot the contents of VOACAP output files in a 3D format
++.SH SYNOPSIS
++.B voa3DPlot [options] file
++.SH DESCRIPTION
++.B voa3DPlot
++A python script used to graphically display the contents of output files produced by VOACAP.
++.SH OPTIONS
++.IP --version
++Shows program version number and exit.
++.IP "-h, --help"
++Shows a help message and exit.
++.IP "-b band, --band=band"
++Displays a band plan indicated by 'band', an integer value from 1 to 3 (1:SWL, 2:UK AMATEUR BANDS and 3:KSA AMATEUR BANDS).
++.IP "-f max_frequency, --freqmax=max_frequency"
++Specifies the maximum frequency (MHz) to display on the Y axis.
++.IP "-g group, --group=group"
++Specifies the group(s) within a file containing multiple groups to plot. Multiple groups must be separated by commas, e.g. '-g 1,3,4' (default = 1).
++.IP "-l 'label', --label='label'"
++Specifies the text label to be printed as a main title at the top of the plot.
++.IP "-m colourmap, --cmap=colourmap"
++Specifies the colourmap to use. Supported colour maps are 'autumn', 'bone', 'cool', 'copper',', 'hot', 'hsv', 'jet', 'pink', 'spring', 'summer', 'winter' (default = 'jet').
++.IP "-o outputfile, --outfile=outputfile"
++Used to specify an output file to save the plot to.
++.IP "-q, --quiet"
++Process quietly, don't produce a graph on the screen. This only makes sense when used in conjunction with the -o option.
++.IP "-t type, --datatype=type"
++Specifies the type of image to plot. Supported image types are 0:None 1:MUFday 2:REL 3:SNR 4:S DBW (default = 1).
++.IP "-z timezone, --timezone=timezone"
++Specifies the timezone to shift the plots to.
++.SH AUTHORS
++This program was written by James Watson (M0DNS) <jimwatson at mac dot com>.
++
++This manual page was written by David da Silva Polverari <polverari@debian.org>
++for the Debian Project (but may be used by others).
+diff --git a/man/voaAreaPlot.1 b/man/voaAreaPlot.1
+index 8ddcfde..eb8c76a 100644
+--- a/man/voaAreaPlot.1
++++ b/man/voaAreaPlot.1
+@@ -46,7 +46,7 @@ POI_FILE is a text file with points of interest to plot on the map. The file is
+ .IP "-p PROJECTION, --projection=PROJECTION"
+ PROJECTION specifies the map projection. Valid values are 'cyl' (Equidistant
+ Cylindrical), 'mill' (Miller Cylindrical), gall' (Gall Stereographic),
+-'robin' (Robinson), 'vandg' (van der Grinten), 'sinu' (Sinusoidal), 'mbtfpq'
++\(aqrobin' (Robinson), 'vandg' (van der Grinten), 'sinu' (Sinusoidal), 'mbtfpq'
+ (McBryde-Thomas Flat Polar Quartic), 'eck4' (Eckert IV), 'kav7' (Kavrayskiy
+ VII), 'moll' (Mollweide), 'hammer' (Hammer).
+ .IP "-r RESOLUTION, --resolution=RESOLUTION"
+diff --git a/man/voaAreaPlotgui.1 b/man/voaAreaPlotgui.1
+new file mode 100644
+index 0000000..88d07d6
+--- /dev/null
++++ b/man/voaAreaPlotgui.1
+@@ -0,0 +1,13 @@
++.TH voaAreaPlotgui 1 "FEV 2024" Linux "User Manuals"
++.SH NAME
++voaAreaPlotgui \- Graphical frontend to the voaAreaPlot application
++.SH SYNOPSIS
++.B voaAreaPlotgui file
++.SH DESCRIPTION
++.B voaAreaPlotgui
++is a graphical user interface to the voaAreaPlot application. It plots the file contents according to the parameters set on the user interface.
++.SH AUTHORS
++This program was written by James Watson (M0DNS) <jimwatson at mac dot com>.
++
++This manual page was written by David da Silva Polverari <polverari@debian.org>
++for the Debian Project (but may be used by others).
+diff --git a/man/voaP2PPlotgui.1 b/man/voaP2PPlotgui.1
+new file mode 100644
+index 0000000..457a6a0
+--- /dev/null
++++ b/man/voaP2PPlotgui.1
+@@ -0,0 +1,13 @@
++.TH voaP2PPlotgui 1 "FEV 2024" Linux "User Manuals"
++.SH NAME
++voaP2PPlotgui \- Graphical frontend to the voaP2PPlot application
++.SH SYNOPSIS
++.B voaP2PPlotgui file
++.SH DESCRIPTION
++.B voaP2PPlotgui
++is a graphical user interface to the voaP2PPlot application. It plots the file contents according to the parameters set on the user interface.
++.SH AUTHORS
++This program was written by James Watson (M0DNS) <jimwatson at mac dot com>.
++
++This manual page was written by David da Silva Polverari <polverari@debian.org>
++for the Debian Project (but may be used by others).
+diff --git a/man/voacapgui.1 b/man/voacapgui.1
+new file mode 100644
+index 0000000..31b12eb
+--- /dev/null
++++ b/man/voacapgui.1
+@@ -0,0 +1,13 @@
++.TH voacapgui 1 "FEV 2024" Linux "User Manuals"
++.SH NAME
++voacapgui \- An input GUI for voacapl
++.SH SYNOPSIS
++.B voacapgui
++.SH DESCRIPTION
++.B voacapgui
++is a graphical user interface frontend for \fBvoacapl\fP. It generates voacap input files from user input data and plots the resulting predictions.
++.SH AUTHORS
++This program was written by James Watson (M0DNS) <jimwatson at mac dot com>.
++
++This manual page was written by David da Silva Polverari <polverari@debian.org>
++for the Debian Project (but may be used by others).
+diff --git a/src/pythonprop/voaAreaPlot.py b/src/pythonprop/voaAreaPlot.py
+index a0bd789..01f5d86 100644
+--- a/src/pythonprop/voaAreaPlot.py
++++ b/src/pythonprop/voaAreaPlot.py
+@@ -114,6 +114,9 @@ class VOAAreaPlot:
+
+ self.datadir = datadir
+
++ # set backend during initialization to avoid switching error
++ matplotlib.use('GTK3Agg')
++
+ try:
+ plot_parameters = VOAFile((in_file))
+ plot_parameters.parse_file()
+@@ -146,7 +149,10 @@ class VOAAreaPlot:
+ # sys.exit(1)
+
+ portland = ListedColormap(["#0C3383", "#0b599b","#0a7fb4","#57a18f","#bec255","#f2c438","#f2a638","#ef8235","#e4502a","#d91e1e"])
+- plt.register_cmap(name='portland', cmap=portland)
++ try:
++ plt.register_cmap(name='portland', cmap=portland)
++ except ValueError:
++ print("Portland colormap is already registered")
+ colMap = color_map
+
+ projection = ccrs.PlateCarree()
+diff --git a/src/pythonprop/voaP2PPlot.py b/src/pythonprop/voaP2PPlot.py
+index faf87e6..7255667 100644
+--- a/src/pythonprop/voaP2PPlot.py
++++ b/src/pythonprop/voaP2PPlot.py
+@@ -136,8 +136,15 @@ class VOAP2PPlot:
+
+ self.image_defs = self.IMG_TYPE_DICT[self.data_type]
+ self.user_bands = user_bands
++
++ # set backend during initialization to avoid switching error
++ matplotlib.use('GTK3Agg')
++
+ portland = ListedColormap(["#0C3383", "#0b599b","#0a7fb4","#57a18f","#bec255","#f2c438","#f2a638","#ef8235","#e4502a","#d91e1e"])
+- matplotlib.cm.register_cmap(name='portland', cmap=portland)
++ try:
++ matplotlib.cm.register_cmap(name='portland', cmap=portland)
++ except ValueError:
++ print("Portland colormap is already registered")
+
+ if plot_groups[0]=='a':
+ num_grp = self.df.get_number_of_groups()
diff --git a/sci-visualization/pythonprop/files/pythonprop-matplotlib3.9.patch b/sci-visualization/pythonprop/files/pythonprop-matplotlib3.9.patch
new file mode 100644
index 000000000000..4cea6f50d4ee
--- /dev/null
+++ b/sci-visualization/pythonprop/files/pythonprop-matplotlib3.9.patch
@@ -0,0 +1,65 @@
+--- a/src/pythonprop/voaAreaPlot.py
++++ b/src/pythonprop/voaAreaPlot.py
+@@ -148,15 +148,15 @@ class VOAAreaPlot:
+ # print "-180 < Latitude < 180.0, -90 < Longitude < 90"
+ # sys.exit(1)
+
+- portland = ListedColormap(["#0C3383", "#0b599b","#0a7fb4","#57a18f","#bec255","#f2c438","#f2a638","#ef8235","#e4502a","#d91e1e"])
++ portland = ListedColormap(["#0C3383","#0b599b","#0a7fb4","#57a18f","#bec255","#f2c438","#f2a638","#ef8235","#e4502a","#d91e1e"], name="portland")
+ try:
+- plt.register_cmap(name='portland', cmap=portland)
++ matplotlib.colormaps.register(cmap=portland)
+ except ValueError:
+ print("Portland colormap is already registered")
+ colMap = color_map
+
+ projection = ccrs.PlateCarree()
+- axes_class = (GeoAxes,dict(map_projection=projection))
++ axes_class = (GeoAxes,dict(projection=projection))
+
+ number_of_subplots = len(vg_files)
+
+@@ -208,7 +208,7 @@ class VOAAreaPlot:
+ cbar_mode='single',
+ cbar_pad=0.2,
+ cbar_size='3%',
+- label_mode='')
++ label_mode='L')
+
+ self.main_title_label = fig.suptitle(str(self.image_defs['title']), fontsize=self.main_title_fontsize)
+
+@@ -292,7 +292,7 @@ class VOAAreaPlot:
+ ax.plot([xpt],[ypt],'ro')
+ ax.text(xpt+100000,ypt+100000,location.get_name())
+ """
+- gl = ax.gridlines(crs=projection, draw_labels=True,
++ gl = ax.gridlines(crs=projection, draw_labels=["bottom", "left"],
+ linewidth=1, color='black', alpha=0.75)
+ gl.xlabels_top = False
+ gl.xlabels_bottom = False
+diff --git a/src/pythonprop/voaP2PPlot.py b/src/pythonprop/voaP2PPlot.py
+index 7255667..4a3ff05 100644
+--- a/src/pythonprop/voaP2PPlot.py
++++ b/src/pythonprop/voaP2PPlot.py
+@@ -140,9 +140,10 @@ class VOAP2PPlot:
+ # set backend during initialization to avoid switching error
+ matplotlib.use('GTK3Agg')
+
+- portland = ListedColormap(["#0C3383", "#0b599b","#0a7fb4","#57a18f","#bec255","#f2c438","#f2a638","#ef8235","#e4502a","#d91e1e"])
++ portland = ListedColormap(["#0C3383", "#0b599b","#0a7fb4","#57a18f","#bec255","#f2c438","#f2a638","#ef8235","#e4502a","#d91e1e"],
++name="portland")
+ try:
+- matplotlib.cm.register_cmap(name='portland', cmap=portland)
++ matplotlib.colormaps.register(cmap=portland)
+ except ValueError:
+ print("Portland colormap is already registered")
+
+@@ -203,7 +204,7 @@ class VOAP2PPlot:
+ cbar_mode='single',
+ cbar_pad=0.2,
+ cbar_size='3%',
+- label_mode='')
++ label_mode='L')
+
+ self.main_title_label = fig.suptitle(plot_label+str(self.image_defs['title']), fontsize=self.main_title_fontsize)
+
diff --git a/sci-visualization/pythonprop/metadata.xml b/sci-visualization/pythonprop/metadata.xml
new file mode 100644
index 000000000000..15504ffa94c4
--- /dev/null
+++ b/sci-visualization/pythonprop/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>tomjbe@gentoo.org</email>
+ <name>Thomas Beierlein</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>sci-electronics@gentoo.org</email>
+ <name>Gentoo Electronics Project</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/sci-visualization/pythonprop/pythonprop-0.30.1_p20240217-r1.ebuild b/sci-visualization/pythonprop/pythonprop-0.30.1_p20240217-r1.ebuild
new file mode 100644
index 000000000000..16aafeddaf49
--- /dev/null
+++ b/sci-visualization/pythonprop/pythonprop-0.30.1_p20240217-r1.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit autotools python-single-r1
+
+MY_PV=$(ver_cut 1-3)
+
+DESCRIPTION="Scripts to prepare and plot VOACAP propagation predictions"
+HOMEPAGE="https://www.qsl.net/h/hz1jw/pythonprop"
+SRC_URI="https://github.com/jawatson/${PN}/archive/v${MY_PV}/${PN}-${MY_PV}.tar.gz -> ${P}.tar.gz"
+
+S="${WORKDIR}/${PN}-${MY_PV}"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep '
+ dev-python/pygobject:3[${PYTHON_USEDEP}]
+ dev-python/matplotlib[${PYTHON_USEDEP}]
+ dev-python/scipy[${PYTHON_USEDEP}]
+ ')
+ dev-python/cairocffi
+ sci-libs/cartopy[${PYTHON_SINGLE_USEDEP}]
+ sci-electronics/voacapl
+"
+DEPEND="${RDEPEND}
+ app-text/yelp-tools
+"
+
+PATCHES=( "${FILESDIR}/${PN}-0.30.1-p20240217.patch"
+ "${FILESDIR}/${PN}-matplotlib3.9.patch" )
+
+src_prepare() {
+ default
+
+ # drop building *.pdf files
+ sed -i -e "s#docs/user/help##g" Makefile.am || die
+ # do not call update_destop_database here
+ sed -ie "s/UPDATE_DESKTOP = /UPDATE_DESKTOP = # /g" data/Makefile.am || die
+ # fix Desktop Entry
+ sed -ie "s/HamRadio/HamRadio;/g" data/voacapgui.desktop.in || die
+ eautoreconf
+}
+
+src_install() {
+ default
+ python_optimize
+}