Replies: 3 comments
-
Ok where to start... Please understand that the To use virtual environments, you need to have a package called I personally prefer to use
sudo apt install python3-virtualenv This will install python3 -m virtualenv env
source env/bin/activate
python3 -m pip install --upgrade pygpsclient
source env/bin/activate
python3 -m pip install --upgrade pygpsclient NB THAT'S IT! e.g. here's a (truncated) log where I install PyGPSClient version 1.5.0 and then upgrade it to the latest version 1.5.3 using pip and virtualenv: ➜ ~ python3 -m virtualenv env
created virtual environment CPython3.13.2.final.0-64 in 240ms
...
activators BashActivator,CShellActivator,FishActivator,NushellActivator,PowerShellActivator,PythonActivator
➜ ~ source env/bin/activate
(env) ➜ ~ python3 -m pip install pygpsclient==1.5.0
Collecting pygpsclient==1.5.0
Using cached pygpsclient-1.5.0-py3-none-any.whl.metadata (61 kB)
...
Successfully installed Pillow-11.1.0 certifi-2025.1.31 cffi-1.17.1 charset-normalizer-3.4.1 cryptography-44.0.2 idna-3.10 paho-mqtt-2.1.0 pycparser-2.22 pygnssutils-1.1.9 pygpsclient-1.5.0 pynmeagps-1.0.46 pyrtcm-1.1.4 pyserial-3.5 pyspartn-1.0.5 pyubx2-1.2.50 pyubxutils-1.0.2 requests-2.32.3 urllib3-2.3.0
(env) ➜ ~ deactivate
➜ ~ source env/bin/activate
(env) ➜ ~ python3 -m pip install --upgrade pygpsclient
Requirement already satisfied: pygpsclient in ./env/lib/python3.13/site-packages (1.5.0)
Collecting pygpsclient
...
Installing collected packages: pygpsclient
Attempting uninstall: pygpsclient
Found existing installation: pygpsclient 1.5.0
Uninstalling pygpsclient-1.5.0:
Successfully uninstalled pygpsclient-1.5.0
Successfully installed pygpsclient-1.5.3
(env) ➜ ~ deactivate Third-party tools like If you want to use pipx, then the install command is: pipx install pygpsclient The subsequent upgrade command is: pipx upgrade pygpsclient (NB NOT e.g. here's a log where I install PyGPSClient version 1.5.0 and then upgrade it to the latest version 1.5.3 using pipx:
BOTTOM LINE - simply follow the instructions in the PyGPSClient README and you should be fine! |
Beta Was this translation helpful? Give feedback.
-
Thank you for taking your time in substantially answering on my 'experiments' here. I followed the recommendation in README for a test.
Downloaded and unpacked the package and installed it
So I get here a second 3.13.2 in /usr/local/ besides my Debian python 3.13.2. Tried to purge the Debian python before installing the 'offical' python, but that seems not to be possible, because system data (GUI data) would also be purged. And having two python version (same! versions) on my system? That is not an idea which pleases me. So for the moment I'll leave it with the Debian python, serviced, managed and updated by the Debian team. virtualenv
works and updates. Creates two folders
Starting pygpsclient needs a script. pipenv
works and updates. Creates three folders
Starting pygpsclient needs a script. pipx
works and updates. Creates one folder
and starts direct from the terminal. For the moment I learned a lot and I'll keep my notes on this. Try for the moment with the Debian python and pipx way (I am lazy ;-) ). Thank you again for this great alternative to u-center, a software I have to switch over to Windows (I don't like) and which over the years I still have problems in getting familiar with. Best regard s from Germany - Karl |
Beta Was this translation helpful? Give feedback.
-
Bear in mind that you're coming at this purely from a Debian perspective, whereas I need to consider the many thousands of other PyGPSClient users who are using other operating systems, including the various generations of Windows, MacOS and other Linux or 'Posix' flavours. My installation instructions are intended to be 'platform agnostic', which is why I advocate native Python tools like pip or venv rather than third party tools like pipx or pipenv, as far as is practicable. While it may be relatively trivial to install e.g. pipx in Debian (if you have superuser privileges), this is NOT necessarily the case in Windows or MacOS.
The reason I recommend installing an official python.org Python is that the version of Python which comes pre-installed with some Linux distros (and some older MacOS editions) is NOT a full Python environment - it's there purely to serve any Python utilities that might be bundled with the distro, and often omits standard packages like pip and tkinter. In addition, the official version will include the latest bug fixes, security patches and performance enhancements. There's absolutely no technical reason why you can't have more than one Python environment on your machine - this is actually very common - but it can obviously cause confusion if you're not careful about which environment you're installing new packages into. Explicitly setting the appropriate $PATH(s) in your shell resource file (.bashrc or whatever) should ensure that the correct Python interpreter is referenced. This is also why the README recommends using the syntax
I would VERY STRONGLY advise against calling your virtual environment 'venv', as this risks causing confusion with the native Python venv package. If you're creating a virtual environment for pygpsclient, calling it 'pygpsclient' might be more intuitive. This is effectively what pipx does by default.
I'm unclear where you're getting this from, as it's simply not true. If you follow the README instructions for venv/virtualenv, it will create a high level directory containing /bin, /include and /lib subdirectories (pipx will do exactly the same thing). The pygpsclient executable is placed in the env/bin folder (e.g. Where pipx differs from pip is that pipx will install the pygpsclient executable into a separate ~/.local folder e.g. |
Beta Was this translation helpful? Give feedback.
-
In 2023 I installed PyGPSClient on Debian Bookworm. I am not an expert, just a user.
Works fine, but 'update' does not work. So I opened an issue on that.
#177
Closed that issue in the meantime, because that issue seems to be on my side. Sorry. ;-)
Trying to follow the advises I got, started some tests for a fresh installation of PyGPSClient in a Virtualbox VM with Debian Testing/Trixie. Advantage of doing this in a VM: After one test can reset the VM and start 'clean'.
Was pointed to https://www.geeksforgeeks.org/python-virtual-environment/
The first command here my Debian system pointed to 'pipx
I found this interesting info https://linuxtldr.com/installing-pipx/
which mentions besides 'virtualenv' and 'pipx' also 'pipenv' environment.
So I tested all 3 ways here.
virtualenv
starts the GUI
pipx
starts the GUI
pipenv
no problem here either
No idea, which one is best. Any suggestions please.
Now to 'update'.
(As I do install and run the actual version, it's a problem trying to update ....)
virtualenv
with errrors.log
pipx
with identical error message and log as virtualenv
pipenv
is different.
Which to choose and how to test?
br Karl
Beta Was this translation helpful? Give feedback.
All reactions