not1mm 24.4.26__tar.gz → 24.5.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {not1mm-24.4.26 → not1mm-24.5.1}/PKG-INFO +57 -50
- {not1mm-24.4.26 → not1mm-24.5.1}/README.md +56 -49
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/__main__.py +55 -150
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/bandmap.py +28 -81
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/checkwindow.py +23 -35
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/configuration.ui +5 -5
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/lib/cat_interface.py +28 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/lib/cwinterface.py +18 -6
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/lib/settings.py +6 -1
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/lib/version.py +1 -1
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/logwindow.py +37 -50
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/radio.py +9 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/vfo.py +26 -38
- not1mm-24.5.1/not1mm/voice_keying.py +100 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm.egg-info/PKG-INFO +57 -50
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm.egg-info/SOURCES.txt +1 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/pyproject.toml +1 -1
- {not1mm-24.4.26 → not1mm-24.5.1}/LICENSE +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/__init__.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/JetBrainsMono-Regular.ttf +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/MASTER.SCP +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/about.ui +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/alpha bravo charlie delta.txt +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/bandmap.ui +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/check.png +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/checkwindow.ui +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/contests.sql +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/cty.json +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/cwmacros.txt +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/donors.html +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/editcontact.ui +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/editmacro.ui +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/greendot.png +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/k6gte-not1mm.desktop +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/k6gte.not1mm-128.png +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/k6gte.not1mm-32.png +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/k6gte.not1mm-64.png +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/logwindow.ui +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/logwindowx.ui +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/main.ui +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/new_contest.ui +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/not1mm.html +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/opon.ui +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/0.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/1.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/2.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/3.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/4.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/5.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/6.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/7.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/73.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/8.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/9.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/a.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/again.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/b.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/c.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/contest.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/cq.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/d.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/e.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/f.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/g.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/h.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/i.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/j.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/k.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/k6gte.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/l.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/m.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/mynumber.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/n.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/nil.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/o.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/p.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/q.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/r.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/roger.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/s.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/space.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/t.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/thankyou.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/thankyouqrz.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/u.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/v.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/w.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/x.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/y.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/yourcall.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/phonetics/z.wav +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/pickcontest.ui +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/radio_green.png +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/radio_grey.png +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/radio_red.png +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/reddot.png +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/settings.ui +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/ssbmacros.txt +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/data/vfo.ui +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/fsutils.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/lib/__init__.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/lib/about.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/lib/database.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/lib/edit_contact.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/lib/edit_macro.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/lib/edit_opon.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/lib/edit_station.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/lib/ft8_watcher.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/lib/ham_utility.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/lib/lookup.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/lib/multicast.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/lib/n1mm.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/lib/new_contest.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/lib/plugin_common.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/lib/select_contest.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/lib/super_check_partial.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/lib/versiontest.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/10_10_fall_cw.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/10_10_spring_cw.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/10_10_summer_phone.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/10_10_winter_phone.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/__init__.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/arrl_10m.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/arrl_dx_cw.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/arrl_dx_ssb.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/arrl_field_day.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/arrl_rtty_ru.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/arrl_ss_cw.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/arrl_ss_phone.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/arrl_vhf_jan.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/arrl_vhf_jun.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/arrl_vhf_sep.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/canada_day.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/cq_160_cw.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/cq_160_ssb.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/cq_wpx_cw.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/cq_wpx_ssb.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/cq_ww_cw.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/cq_ww_ssb.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/cwt.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/general_logging.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/iaru_hf.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/jidx_cw.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/jidx_ph.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/naqp_cw.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/naqp_ssb.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/phone_weekly_test.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/stew_perry_topband.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm/plugins/winter_field_day.py +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm.egg-info/dependency_links.txt +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm.egg-info/entry_points.txt +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm.egg-info/requires.txt +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/not1mm.egg-info/top_level.txt +0 -0
- {not1mm-24.4.26 → not1mm-24.5.1}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: not1mm
|
3
|
-
Version: 24.
|
3
|
+
Version: 24.5.1
|
4
4
|
Summary: NOT1MM Logger
|
5
5
|
Author-email: Michael Bridak <michael.bridak@gmail.com>
|
6
6
|
Project-URL: Homepage, https://github.com/mbridak/not1mm
|
@@ -31,6 +31,7 @@ Requires-Dist: appdata
|
|
31
31
|
Requires-Dist: Levenshtein
|
32
32
|
|
33
33
|
# Not1MM
|
34
|
+
<!-- markdownlint-disable MD001 MD033 -->
|
34
35
|
|
35
36
|

|
36
37
|
|
@@ -55,16 +56,16 @@ Requires-Dist: Levenshtein
|
|
55
56
|
- [Common installation recipes for Ubuntu and Fedora](#common-installation-recipes-for-ubuntu-and-fedora)
|
56
57
|
- [Ubuntu 22.04 LTS](#ubuntu-2204-lts)
|
57
58
|
- [Ubuntu 23.04](#ubuntu-2304)
|
58
|
-
- [Ubuntu 24.04](#ubuntu-2404)
|
59
|
+
- [Ubuntu 24.04 LTS](#ubuntu-2404-lts)
|
59
60
|
- [Fedora 38 \& 39](#fedora-38--39)
|
60
61
|
- [Fedora 40](#fedora-40)
|
61
62
|
- [Python, PyPI, pip and pipx](#python-pypi-pip-and-pipx)
|
62
63
|
- [Bootstrapping pipx](#bootstrapping-pipx)
|
63
64
|
- [Installing with pipx](#installing-with-pipx)
|
65
|
+
- [Installing from GitHub source](#installing-from-github-source)
|
64
66
|
- [After the install](#after-the-install)
|
65
67
|
- [You may or may not get a warning message like](#you-may-or-may-not-get-a-warning-message-like)
|
66
68
|
- [Or this fan favorite](#or-this-fan-favorite)
|
67
|
-
- [Installing from GitHub source](#installing-from-github-source)
|
68
69
|
- [Various data file locations](#various-data-file-locations)
|
69
70
|
- [Data](#data)
|
70
71
|
- [Config](#config)
|
@@ -179,22 +180,7 @@ I wish to thank those who've contributed to the project.
|
|
179
180
|
|
180
181
|
## Recent Changes
|
181
182
|
|
182
|
-
- [24-
|
183
|
-
- [24-4-25] Limited loop in radio.py, reducing clock cycles used. Moved Log window to the top of the logger.
|
184
|
-
- [24-4-24] Placed CAT control into a thread so disconnecting the radio wouldn't lock up the interface.
|
185
|
-
- [24-4-17] Trap OSError if no sound device. Stop fsutils/appdata from creating useless .not1mm and .username folder structures on Linux platforms.
|
186
|
-
- [24-4-15] checkwindow.py Tighter results. Changed the call selection to use a single click.
|
187
|
-
- [24-4-9-4] Check for portaudio instead of crash boom. Removed empty dockwidget. Tested on Plasma 6.
|
188
|
-
- [24-4-9-3] Ugh. It's not a real day unless you forget to test.
|
189
|
-
- [24-4-9-2] Put back the floatable dock widgets, 'cause Wayland strikes again.
|
190
|
-
- [24-4-9-1] Removed DockWidgetFloatable from the dock widgets since my wee brain can't figure out how to add a dragable window frame to them once they are floating. Added a minimum size for the VFO LCD digits. Defaulted bandmap window to the right.
|
191
|
-
- [24-4-9] Fixed Checkwindow not showing calls from logged contacts.
|
192
|
-
- [24-4-7] Added FT8Watcher class to prep for FT8 support.
|
193
|
-
- [24-4-4-1] Made docking widgets open state persistent.
|
194
|
-
- [24-4-4] Added per-contest echange hint when adding new contest.
|
195
|
-
- [24-4-2] Migrated to PyQt6. I'm sure there are broken things.
|
196
|
-
- [24-4-1-2] Added color text indicators to the Check Partial window. Poached the code from @kyleboyle. Thanks! Fixed the Log, VFO and Check Partial windows to be actual docking widgets. Refocus call field after double clicking on item in the check partial window.
|
197
|
-
- [24-4-1] Removed some un-needed loops and widgets from the check window. Fixed docking to the left side.
|
183
|
+
- [24-5-1] Moved the voice keying into it's own thread.
|
198
184
|
|
199
185
|
See [CHANGELOG.md](CHANGELOG.md) for prior changes.
|
200
186
|
|
@@ -217,6 +203,10 @@ through your distribution's package manager before continuing.
|
|
217
203
|
I've taken the time to install some common Linux distributions into a VM and
|
218
204
|
noted the minimum steps needed to install not1mm.
|
219
205
|
|
206
|
+
<details>
|
207
|
+
|
208
|
+
<summary><b>Ubuntu 22.04 LTS, 23.04 and 24.04 LTS</b></summary>
|
209
|
+
|
220
210
|
#### Ubuntu 22.04 LTS
|
221
211
|
|
222
212
|
```bash
|
@@ -236,7 +226,7 @@ pipx install not1mm
|
|
236
226
|
pipx ensurepath
|
237
227
|
```
|
238
228
|
|
239
|
-
#### Ubuntu 24.04
|
229
|
+
#### Ubuntu 24.04 LTS
|
240
230
|
|
241
231
|
```bash
|
242
232
|
sudo apt update
|
@@ -246,6 +236,12 @@ pip install --break-system-packages not1mm
|
|
246
236
|
source .profile
|
247
237
|
```
|
248
238
|
|
239
|
+
</details>
|
240
|
+
|
241
|
+
<details>
|
242
|
+
|
243
|
+
<summary><b>Fedora 38, 39 and 40</b></summary>
|
244
|
+
|
249
245
|
#### Fedora 38 & 39
|
250
246
|
|
251
247
|
```bash
|
@@ -262,6 +258,9 @@ sudo dnf install python3-pip python3-pyqt6 portaudio
|
|
262
258
|
pip install not1mm
|
263
259
|
```
|
264
260
|
|
261
|
+
</details>
|
262
|
+
<br>
|
263
|
+
|
265
264
|
You can now open a new terminal and type not1mm. On it's first run, it may or
|
266
265
|
may not install a lovely non AI generated icon, which you can later click on to
|
267
266
|
launch the application.
|
@@ -313,6 +312,40 @@ If you need to later update not1mm, you can do so with:
|
|
313
312
|
pipx upgrade not1mm
|
314
313
|
```
|
315
314
|
|
315
|
+
<details>
|
316
|
+
<summary><b>Installing from GitHub source.</b></summary>
|
317
|
+
|
318
|
+
### Installing from GitHub source
|
319
|
+
|
320
|
+
Since this is packaged for PyPI, if you want to work on your own source branch,
|
321
|
+
after cloning from github you would:
|
322
|
+
|
323
|
+
```bash
|
324
|
+
pip install --upgrade pip
|
325
|
+
pip install setuptools
|
326
|
+
pip install build
|
327
|
+
source rebuild.sh
|
328
|
+
```
|
329
|
+
|
330
|
+
from the root directory. This installs a build chain and a local editable copy
|
331
|
+
of not1mm.
|
332
|
+
|
333
|
+
There's two ways to launch the program from the local editable copy.
|
334
|
+
|
335
|
+
You can either be in the root of the source directory and type:
|
336
|
+
|
337
|
+
```bash
|
338
|
+
python not1mm
|
339
|
+
```
|
340
|
+
|
341
|
+
or be in some other directory and just type:
|
342
|
+
|
343
|
+
```bash
|
344
|
+
not1mm
|
345
|
+
```
|
346
|
+
|
347
|
+
</details>
|
348
|
+
|
316
349
|
## After the install
|
317
350
|
|
318
351
|
You can now open a new terminal and type `not1mm`. On it's first run, it may or
|
@@ -344,35 +377,6 @@ For a more permanent solution you can place the line
|
|
344
377
|
`export QT_QPA_PLATFORM=wayland` in your home directories .bashrc file. Then
|
345
378
|
after logging out and back in you should be able to launch it normally.
|
346
379
|
|
347
|
-
### Installing from GitHub source
|
348
|
-
|
349
|
-
Since this is packaged for PyPI, if you want to work on your own source branch,
|
350
|
-
after cloning from github you would:
|
351
|
-
|
352
|
-
```bash
|
353
|
-
pip install --upgrade pip
|
354
|
-
pip install setuptools
|
355
|
-
pip install build
|
356
|
-
source rebuild.sh
|
357
|
-
```
|
358
|
-
|
359
|
-
from the root directory. This installs a build chain and a local editable copy
|
360
|
-
of not1mm.
|
361
|
-
|
362
|
-
There's two ways to launch the program from the local editable copy.
|
363
|
-
|
364
|
-
You can either be in the root of the source directory and type:
|
365
|
-
|
366
|
-
```bash
|
367
|
-
python not1mm
|
368
|
-
```
|
369
|
-
|
370
|
-
or be in some other directory and just type:
|
371
|
-
|
372
|
-
```bash
|
373
|
-
not1mm
|
374
|
-
```
|
375
|
-
|
376
380
|
## Various data file locations
|
377
381
|
|
378
382
|
### Data
|
@@ -482,7 +486,10 @@ onscreen icon for CAT status. Green good, Red bad, Grey neither.
|
|
482
486
|
|
483
487
|
Under the `CW` TAB, There are three options. `cwdaemon`, which normally uses IP
|
484
488
|
`127.0.0.1` and port `6789`. `pywinkeyer` which normally uses IP `127.0.0.1` and
|
485
|
-
|
489
|
+
`CAT` which if your radio supports it, sends Morse characters via rigctld. As far
|
490
|
+
as I can tell rigctld does not support setting the radios internal keyer speed. So
|
491
|
+
the CW speed control widget will not be functional and you'd need to control the
|
492
|
+
keyer speed thru the radios interface.
|
486
493
|
|
487
494
|
### Cluster
|
488
495
|
|
@@ -1,4 +1,5 @@
|
|
1
1
|
# Not1MM
|
2
|
+
<!-- markdownlint-disable MD001 MD033 -->
|
2
3
|
|
3
4
|

|
4
5
|
|
@@ -23,16 +24,16 @@
|
|
23
24
|
- [Common installation recipes for Ubuntu and Fedora](#common-installation-recipes-for-ubuntu-and-fedora)
|
24
25
|
- [Ubuntu 22.04 LTS](#ubuntu-2204-lts)
|
25
26
|
- [Ubuntu 23.04](#ubuntu-2304)
|
26
|
-
- [Ubuntu 24.04](#ubuntu-2404)
|
27
|
+
- [Ubuntu 24.04 LTS](#ubuntu-2404-lts)
|
27
28
|
- [Fedora 38 \& 39](#fedora-38--39)
|
28
29
|
- [Fedora 40](#fedora-40)
|
29
30
|
- [Python, PyPI, pip and pipx](#python-pypi-pip-and-pipx)
|
30
31
|
- [Bootstrapping pipx](#bootstrapping-pipx)
|
31
32
|
- [Installing with pipx](#installing-with-pipx)
|
33
|
+
- [Installing from GitHub source](#installing-from-github-source)
|
32
34
|
- [After the install](#after-the-install)
|
33
35
|
- [You may or may not get a warning message like](#you-may-or-may-not-get-a-warning-message-like)
|
34
36
|
- [Or this fan favorite](#or-this-fan-favorite)
|
35
|
-
- [Installing from GitHub source](#installing-from-github-source)
|
36
37
|
- [Various data file locations](#various-data-file-locations)
|
37
38
|
- [Data](#data)
|
38
39
|
- [Config](#config)
|
@@ -147,22 +148,7 @@ I wish to thank those who've contributed to the project.
|
|
147
148
|
|
148
149
|
## Recent Changes
|
149
150
|
|
150
|
-
- [24-
|
151
|
-
- [24-4-25] Limited loop in radio.py, reducing clock cycles used. Moved Log window to the top of the logger.
|
152
|
-
- [24-4-24] Placed CAT control into a thread so disconnecting the radio wouldn't lock up the interface.
|
153
|
-
- [24-4-17] Trap OSError if no sound device. Stop fsutils/appdata from creating useless .not1mm and .username folder structures on Linux platforms.
|
154
|
-
- [24-4-15] checkwindow.py Tighter results. Changed the call selection to use a single click.
|
155
|
-
- [24-4-9-4] Check for portaudio instead of crash boom. Removed empty dockwidget. Tested on Plasma 6.
|
156
|
-
- [24-4-9-3] Ugh. It's not a real day unless you forget to test.
|
157
|
-
- [24-4-9-2] Put back the floatable dock widgets, 'cause Wayland strikes again.
|
158
|
-
- [24-4-9-1] Removed DockWidgetFloatable from the dock widgets since my wee brain can't figure out how to add a dragable window frame to them once they are floating. Added a minimum size for the VFO LCD digits. Defaulted bandmap window to the right.
|
159
|
-
- [24-4-9] Fixed Checkwindow not showing calls from logged contacts.
|
160
|
-
- [24-4-7] Added FT8Watcher class to prep for FT8 support.
|
161
|
-
- [24-4-4-1] Made docking widgets open state persistent.
|
162
|
-
- [24-4-4] Added per-contest echange hint when adding new contest.
|
163
|
-
- [24-4-2] Migrated to PyQt6. I'm sure there are broken things.
|
164
|
-
- [24-4-1-2] Added color text indicators to the Check Partial window. Poached the code from @kyleboyle. Thanks! Fixed the Log, VFO and Check Partial windows to be actual docking widgets. Refocus call field after double clicking on item in the check partial window.
|
165
|
-
- [24-4-1] Removed some un-needed loops and widgets from the check window. Fixed docking to the left side.
|
151
|
+
- [24-5-1] Moved the voice keying into it's own thread.
|
166
152
|
|
167
153
|
See [CHANGELOG.md](CHANGELOG.md) for prior changes.
|
168
154
|
|
@@ -185,6 +171,10 @@ through your distribution's package manager before continuing.
|
|
185
171
|
I've taken the time to install some common Linux distributions into a VM and
|
186
172
|
noted the minimum steps needed to install not1mm.
|
187
173
|
|
174
|
+
<details>
|
175
|
+
|
176
|
+
<summary><b>Ubuntu 22.04 LTS, 23.04 and 24.04 LTS</b></summary>
|
177
|
+
|
188
178
|
#### Ubuntu 22.04 LTS
|
189
179
|
|
190
180
|
```bash
|
@@ -204,7 +194,7 @@ pipx install not1mm
|
|
204
194
|
pipx ensurepath
|
205
195
|
```
|
206
196
|
|
207
|
-
#### Ubuntu 24.04
|
197
|
+
#### Ubuntu 24.04 LTS
|
208
198
|
|
209
199
|
```bash
|
210
200
|
sudo apt update
|
@@ -214,6 +204,12 @@ pip install --break-system-packages not1mm
|
|
214
204
|
source .profile
|
215
205
|
```
|
216
206
|
|
207
|
+
</details>
|
208
|
+
|
209
|
+
<details>
|
210
|
+
|
211
|
+
<summary><b>Fedora 38, 39 and 40</b></summary>
|
212
|
+
|
217
213
|
#### Fedora 38 & 39
|
218
214
|
|
219
215
|
```bash
|
@@ -230,6 +226,9 @@ sudo dnf install python3-pip python3-pyqt6 portaudio
|
|
230
226
|
pip install not1mm
|
231
227
|
```
|
232
228
|
|
229
|
+
</details>
|
230
|
+
<br>
|
231
|
+
|
233
232
|
You can now open a new terminal and type not1mm. On it's first run, it may or
|
234
233
|
may not install a lovely non AI generated icon, which you can later click on to
|
235
234
|
launch the application.
|
@@ -281,6 +280,40 @@ If you need to later update not1mm, you can do so with:
|
|
281
280
|
pipx upgrade not1mm
|
282
281
|
```
|
283
282
|
|
283
|
+
<details>
|
284
|
+
<summary><b>Installing from GitHub source.</b></summary>
|
285
|
+
|
286
|
+
### Installing from GitHub source
|
287
|
+
|
288
|
+
Since this is packaged for PyPI, if you want to work on your own source branch,
|
289
|
+
after cloning from github you would:
|
290
|
+
|
291
|
+
```bash
|
292
|
+
pip install --upgrade pip
|
293
|
+
pip install setuptools
|
294
|
+
pip install build
|
295
|
+
source rebuild.sh
|
296
|
+
```
|
297
|
+
|
298
|
+
from the root directory. This installs a build chain and a local editable copy
|
299
|
+
of not1mm.
|
300
|
+
|
301
|
+
There's two ways to launch the program from the local editable copy.
|
302
|
+
|
303
|
+
You can either be in the root of the source directory and type:
|
304
|
+
|
305
|
+
```bash
|
306
|
+
python not1mm
|
307
|
+
```
|
308
|
+
|
309
|
+
or be in some other directory and just type:
|
310
|
+
|
311
|
+
```bash
|
312
|
+
not1mm
|
313
|
+
```
|
314
|
+
|
315
|
+
</details>
|
316
|
+
|
284
317
|
## After the install
|
285
318
|
|
286
319
|
You can now open a new terminal and type `not1mm`. On it's first run, it may or
|
@@ -312,35 +345,6 @@ For a more permanent solution you can place the line
|
|
312
345
|
`export QT_QPA_PLATFORM=wayland` in your home directories .bashrc file. Then
|
313
346
|
after logging out and back in you should be able to launch it normally.
|
314
347
|
|
315
|
-
### Installing from GitHub source
|
316
|
-
|
317
|
-
Since this is packaged for PyPI, if you want to work on your own source branch,
|
318
|
-
after cloning from github you would:
|
319
|
-
|
320
|
-
```bash
|
321
|
-
pip install --upgrade pip
|
322
|
-
pip install setuptools
|
323
|
-
pip install build
|
324
|
-
source rebuild.sh
|
325
|
-
```
|
326
|
-
|
327
|
-
from the root directory. This installs a build chain and a local editable copy
|
328
|
-
of not1mm.
|
329
|
-
|
330
|
-
There's two ways to launch the program from the local editable copy.
|
331
|
-
|
332
|
-
You can either be in the root of the source directory and type:
|
333
|
-
|
334
|
-
```bash
|
335
|
-
python not1mm
|
336
|
-
```
|
337
|
-
|
338
|
-
or be in some other directory and just type:
|
339
|
-
|
340
|
-
```bash
|
341
|
-
not1mm
|
342
|
-
```
|
343
|
-
|
344
348
|
## Various data file locations
|
345
349
|
|
346
350
|
### Data
|
@@ -450,7 +454,10 @@ onscreen icon for CAT status. Green good, Red bad, Grey neither.
|
|
450
454
|
|
451
455
|
Under the `CW` TAB, There are three options. `cwdaemon`, which normally uses IP
|
452
456
|
`127.0.0.1` and port `6789`. `pywinkeyer` which normally uses IP `127.0.0.1` and
|
453
|
-
|
457
|
+
`CAT` which if your radio supports it, sends Morse characters via rigctld. As far
|
458
|
+
as I can tell rigctld does not support setting the radios internal keyer speed. So
|
459
|
+
the CW speed control widget will not be functional and you'd need to control the
|
460
|
+
keyer speed thru the radios interface.
|
454
461
|
|
455
462
|
### Cluster
|
456
463
|
|