@abcd567 tested piaware 9 with beta versions of Ubuntu 24.04 LTS and fixed some issues. Wondering if anyone was brave enough to upgrade from 22.x or 23.x to the non beta version of 24.04 that just came out today?
abcd567 is testing this:
I have NOT yet tested Docker from SDR Enthusiasts · GitHub .
If you are ready to live WITHOUT MLAT, then use the bash scripts at following Github address to install latest version (currently 9.0) of piaware, dump1090-fa, dump978-fa, and piaware-web.
At the end of piaware installation process, you will get this warning:
https://github.com/abcd567a/piaware-ubuntu-debian-amd64/blob/master/README.md
Got it. Just clarifying -
So updating to Ubuntu 24.04 non docker will cause mlat not to work because mlat-client doesn’t work with Python 3.12?
And you haven’t tested docker yet. Right?
Right
Right & wrong.
I tested docker by http://www.adsb.im . This site provides detailed guide for SBC (RPi etc), but almost nill for Desktop amd64 computers.
@AhrBee was very kind to help and guid me, and with his help I suceeded to install piaware docker and dump1090 docker on Ubuntu 24 Server amd64. However I was not happy with the lack of guidance for Linux on PC from the adsb.img site, and decided to try piaware docker from SDR enthusiast on Github, but was lazy and did not do it.
Thanks! Do the developers of flight aware/piaware know that they need to enable Python 3.12 support?
I assume most OSs will upgrade their python at some point.
Yes, @obj is aware of it.
When mlat-client code was written, python used asyncore
. This continued up to python3.11, but in python3.12, asyncore
has been replaced by asyncio
. This change requires major overhaul of source code of mlat-client to make it compatible to python3.12
Piaware + dump1090-fa installed on Ubuntu 24.04 from following site:
https://github.com/sdr-enthusiasts/docker-piaware/blob/main/README.md
Click on Screenshot to See Larger Size
Thanks for the Python update. I think this will be a while before they make it python 3.12 compatible so q good reason to stay on 22.04 it’s for now
With the docker log that you boxed in red, does that mean that mlat works with docker and 24.04 via that GitHub link? Looks like it since it says mlat is enabled but I’m confused by the “no connected” line about not finding other mlat antenna. Then again you live in Canada so I assume you rarely get any mlat flights?
So maybe that’s a work around - if anyone is using 24.04 and they want to use mlat, then for now they need to install the docker version.
Right?
@rickined1
Mlat is not synchronised with other receivers because:
(1) The Ubuntu24.04 is installed in Oracle Virtual Machine on Windows 10 PC. This arrangement often gives issue of DVB-T dongle pass-through from Windows to Linux in VM, resulting in unstable clock and failure to Synchronize mlat.
(2) To test the install, I used very old (purchased in 2012) Generic DVB-T (black) with its stock mag-mount whip antenna indoors, placed on a toffee can besides the Windows PC. Very limited range and plane count.
Awesome. So the answer is in an ideal world (ie running Ubuntu 24.04 directly on a amd64 computer and using docker/flightaware/1090 combo from that GitHub link), mlat does work.
But really flightaware will need to reprogram their software to use Python 3.12 for it to natively support mlat…
This is so helpful. And making me never want to upgrade until the day after Ubuntu stops supporting 22.04 LTS. .
One more question - with the Ubuntu 24.04 / docker setup, can you easily add on 978 support as well as all of the great weiderhopf add-ons such as graphs1090, time lapse, etc?
Also if you feel multiple sites such as fr24 or adsbfi, do these need to be run within docker too?
I know docker is a container service, I just don’t know if the data is usable by things outside of the container, or if the container is a complete sandbox.
Thanks.
@abcd567 wonder if this would be do-able- seems to allow you to have different versions of python in the same setup and even switch between them based on directory.
STEP-1:
STEP-2:
IMPORTANT: Follow exactly same sequence of commands as given below
wget http://mirrors.kernel.org/ubuntu/pool/main/p/python3.11/libpython3.11-minimal_3.11.6-3_amd64.deb
sudo dpkg -i libpython3.11-minimal_3.11.6-3_amd64.deb
wget http://mirrors.kernel.org/ubuntu/pool/main/p/python3.11/python3.11-minimal_3.11.6-3_amd64.deb
sudo dpkg -i python3.11-minimal_3.11.6-3_amd64.deb
wget http://mirrors.kernel.org/ubuntu/pool/main/libn/libnsl/libnsl2_1.3.0-2build2_amd64.deb
sudo dpkg -i libnsl2_1.3.0-2build2_amd64.deb
wget http://mirrors.kernel.org/ubuntu/pool/main/p/python3.11/libpython3.11-stdlib_3.11.6-3_amd64.deb
sudo dpkg -i libpython3.11-stdlib_3.11.6-3_amd64.deb
wget http://mirrors.kernel.org/ubuntu/pool/main/p/python3.11/python3.11_3.11.6-3_amd64.deb
sudo dpkg -i python3.11_3.11.6-3_amd64.deb
RESULT OF STEP-2:
STEP-3:
Checking Installed versions, and the Default version of python3
Command to list all installed versions of python
ls /usr/bin/python*
Command to list default version of python3
python3 --version
EDIT: STEP-4 below results in failure of “sudo apt update”. Do NOT do STEP-4
### STEP-4:
Making python3.11 as default
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.11 1
update-alternatives: using /usr/bin/python3.11 to provide /usr/bin/python3 (python3) in auto mode
If you have 2 versions installed but default is still 3.12, will flightaware/piaware find and run 3.11?
Problem comes when building the piaware package from source code. Before issueing command dpkg-buildpackage -b
, I edited file debian/rules
and changed following line:
PYTHON3 := /usr/bin/$(shell py3versions -d)
To:
PYTHON3 := /usr/bin/python3.11
After above change, ran command dpkg-buildpackage -b
. The command started building the package using python3.11 (as evident from multiple presence of word “python3.11” in outputs of dpkg-buildpackage command), but after running for a while, build process was aborted, and exited on error.
So no go.
So the best option is to stay on 22.04, or a version that doesn’t use Python 3.12.
If you need 24.04, then the best option is to run it without mlat or run the docker version.
Thanks.
Why stay hooked to Ubuntu, why not use Debian?
Debian’s latest version (beta) is Debian 13, Trixie, and it still uses python 3.11
Using python3.12 instead of python3.11 seems to be typical Linux thing: “if it works, break it in the next version!”
3.11 to 3.12 seems to be a large change for just a 0.01 version difference. Unless both were supported and .12 turned off support for both.
22.04 is LTS so hopefully FA will have it fixed by 2027…
FlightAware does not seem to be keen for Ubuntu. Their main interest is Raspberry Pi OS, which is Debian based. The current latest version is 12 (Bookworm) which uses python 3.11, and next version 13 (Trixie) due next year is (yet) staying with python3.11. Under this situation FA does not need to bother for another 2 to 3 years to upgrade mlat-client to be compatible to python3.12