PiAware on Ubuntu 18.10

I installed piaware-repository_3.6.3_all.deb in Ubuntu Cosmic, but the command

sudo apt update failed saying that

N: Omitting the use of the configured file “piaware / binary-i386 / Packages” since the repository “http://flightaware.com/adsb/piaware/files/packages stretch InRelease” does not support the “i386” architecture
N: Omitting the use of the configured file “piaware / binary-amd64 / Packages” since the repository “http://flightaware.com/adsb/piaware/files/packages stretch InRelease” does not support the architecture “amd64”

Packages are only provided for the armhf architecture. (Raspberry Pi)

You will need to compile the software from source, these are the 2 git repositories you will need, build instructions are listed on the git websites of the 2 projects.
(GitHub - flightaware/piaware_builder: Debian package builder for piaware)
(GitHub - flightaware/dump1090: Dump1090 is a simple Mode S decoder for RTLSDR devices)

@obj any chance to get packets for amd64 added to your repository?

Or use the scripts found in this thread:

These will install dump1090 as well as piaware.

Suggest you look at the comments from the past few months to get it to work on recent Ubuntu (abcd567 did a write-up of the changes required).

Perhaps compiling from source is easier :grinning:

The script just does the compilation for you so actually the same problems apply :slight_smile:

My post linked below says it is for installation of OS + dump1090-fa + Piaware on a USB flash Pen-drive, but the commands to install dump1090-fa and Piaware are equally valid for installation on Hard Drive:

https://discussions.flightaware.com/t/anyone-working-with-the-new-x86-raspbian/43712/104

There is only one problem: the Piaware builder code has been provided for following flavours of Debian & Ubuntu:

  • wheezy
  • jessie
  • stretch
  • xenial
  • bionic

It does not cover Cosmic.

Suggested workaround for Cosmic (untested)

In the manual method I have posted for Piaware, instead of using the line:
CODENAME=(`lsb_release -sc`)

(The above command will set the value of variable CODENAME to the actual version, which in this case is “cosmic”).

You may try deceiving it by replacing above line by:
CODENAME=“xenial”

or by:
CODENAME=“bionic”

Screenshot of Github page for source code of Piaware:

I think for version 18.10, you should use
CODENAME=“bionic”

as “cosmic” (18.10) is just next to “bionic” (18.04) in terms of sequence of issue number, and should be practically same for the purpose of building Piaware package.

FAILED ATTEMPT IF GENUINE NAME “COSMIC” IS USED

abcd@ubuntu1810:~/piaware_builder$ CODENAME=(`lsb_release -sc`)
abcd@ubuntu1810:~/piaware_builder$ echo ${CODENAME}
cosmic

abcd@ubuntu1810:~/piaware_builder$ ./sensible-build.sh ${CODENAME}
unknown build distribution cosmic
syntax: ./sensible-build.sh <wheezy|jessie|stretch|xenial|bionic>

WORKAROUND

Use: CODENAME=“bionic”
Instead of: CODENAME=(`lsb_release -sc`)

abcd@ubuntu1810:~/piaware_builder$ CODENAME="bionic"
abcd@ubuntu1810:~/piaware_builder$ echo ${CODENAME}
bionic

abcd@ubuntu1810:~/piaware_builder$ ./sensible-build.sh ${CODENAME}
Retrieving v3.6.3 from https://github.com/flightaware/piaware.git
Cloning into './package-bionic/piaware'...
remote: Enumerating objects: 3418, done.
remote: Total 3418 (delta 0), reused 0 (delta 0), pack-reused 3418
Receiving objects: 100% (3418/3418), 906.93 KiB | 3.67 MiB/s, done.
..... .... .... .....
..... .... .... .....
..... .... .... .....
Retrieving cxfreeze
2018-12-28 05:30:38 URL:https://files.pythonhosted.org/packages/5f/16/eab51d6571dfec2554248cb027c51babd04d97f594ab6359e0707361297d/cx_Freeze-5.1.1.tar.gz [61381/61381] -> "-" [1]
Updating changelog for bionic (18.04) build
Ok, package is ready to be built in ./package-bionic
run 'dpkg-buildpackage -b' there (or move it to a Pi and do so there, or use pbuilder, etc)

.
.

abcd@ubuntu1810:~/piaware_builder$ cd package-${CODENAME}
abcd@ubuntu1810:~/piaware_builder/package-bionic$ dpkg-buildpackage -b
dpkg-buildpackage: info: source package piaware
dpkg-buildpackage: info: source version 3.6.3~ubuntu1804+1
dpkg-buildpackage: info: source distribution bionic
dpkg-buildpackage: info: source changed by FlightAware build automation <adsb-devs@flightaware.com>
dpkg-buildpackage: info: host architecture amd64
 dpkg-source --before-build package-bionic
 fakeroot debian/rules clean
dh clean --with=systemd
   debian/rules override_dh_auto_clean
make[1]: Entering directory '/home/abcd/piaware_builder/package-bionic'
..... .... .... .....
..... .... .... .....
..... .... .... .....
   dh_builddeb
	dpkg-deb --build debian/piaware ..
dpkg-deb: building package 'piaware' in '../piaware_3.6.3~ubuntu1804+1_amd64.deb'.
..... .... .... .....
..... .... .... .....
..... .... .... .....
abcd@ubuntu1810:~/piaware_builder/package-bionic$ ls ../
bionic       package-bionic                                README.md
changelog    piaware_3.6.3~ubuntu1804+1_amd64.buildinfo    sensible-build.sh
common       piaware_3.6.3~ubuntu1804+1_amd64.changes      stretch
Jenkinsfile  piaware_3.6.3~ubuntu1804+1_amd64.deb          wheezy
jessie       piaware-dbgsym_3.6.3~ubuntu1804+1_amd64.ddeb  xenial


abcd@ubuntu1810:~/piaware_builder/package-bionic$ cd ../
abcd@ubuntu1810:~/piaware_builder$ sudo dpkg -i piaware_*.deb
Selecting previously unselected package piaware.
(Reading database ... 142153 files and directories currently installed.)
Preparing to unpack piaware_3.6.3~ubuntu1804+1_amd64.deb ...
Unpacking piaware (3.6.3~ubuntu1804+1) ...
Setting up piaware (3.6.3~ubuntu1804+1) ...
Created symlink /etc/systemd/system/default.target.wants/piaware.service → /lib/systemd/system/piaware.service.
Created symlink /etc/systemd/system/piaware.service.wants/generate-pirehose-cert.service → /lib/systemd/system/generate-pirehose-cert.service.
Processing triggers for libc-bin (2.28-0ubuntu1) ...
Processing triggers for systemd (239-7ubuntu10) ...
Processing triggers for rsyslog (8.32.0-1ubuntu5) ...
Processing triggers for man-db (2.8.4-2) ...

.
.

abcd@ubuntu1810:~/piaware_builder$ sudo systemctl status piaware

● piaware.service - FlightAware ADS-B uploader
   Loaded: loaded (/lib/systemd/system/piaware.service; enabled; vendor preset:
   Active: active (running) since Fri 2018-12-28 05:36:17 EST; 1min 1s ago
     Docs: https://flightaware.com/adsb/piaware/
 Main PID: 14402 (piaware)
    Tasks: 3 (limit: 2339)
   Memory: 8.7M
   CGroup: /system.slice/piaware.service
           ├─14402 /usr/bin/piaware -p /run/piaware/piaware.pid -plainlog -stat
           └─14525 /usr/lib/piaware/helpers/faup1090 --net-bo-ipaddr localhost 

Dec 28 05:36:25 ubuntu1810 sudo[14510]:  piaware : TTY=unknown ; PWD=/ ; USER=ro
Dec 28 05:36:25 ubuntu1810 sudo[14510]: pam_unix(sudo:session): session opened f
Dec 28 05:36:25 ubuntu1810 sudo[14510]: pam_unix(sudo:session): session closed f
Dec 28 05:36:25 ubuntu1810 piaware[14402]: ADS-B data program 'dump1090-fa' is l
Dec 28 05:36:25 ubuntu1810 piaware[14402]: Starting faup1090: /usr/lib/piaware/h
Dec 28 05:36:25 ubuntu1810 piaware[14402]: Started faup1090 (pid 14525) to conne
Dec 28 05:36:25 ubuntu1810 piaware[14402]: logged in to FlightAware as user gues
Dec 28 05:36:25 ubuntu1810 piaware[14402]: my feeder ID is 8ff016a6-ac6c-4d52-a0
Dec 28 05:36:25 ubuntu1810 piaware[14402]: piaware received a message from dump1
Dec 28 05:36:55 ubuntu1810 piaware[14402]: 1 msgs recv'd from dump1090-fa; 1 msg

I’ve been debating it but it would need to be more specific than “amd64” since the dependencies vary by distribution+version (much like we already have separate packages for Raspbian wheezy, jessie, and stretch on armhf)

Oh meh. Yeah i see the problem.

It’s not too many people who want it i guess.

1 Like

Fully agree.

The best way is to either use JProchazka’s script, or in case it has still unresolved bugs, use totally manual method to know exactly which step has the problem.

Other than cpu architecture problem, another problem is that Ubuntu & Debian have many versions & codenames, which are not covered in “piaware_builder”. The OP of this thread has Ubuntu 18.10, and its codename is “cosmic”, which is not covered in piaware_builder/sensible-build.sh. This will result in failure of JP’s script as well as manual method I have posted here.

Today morning I could successfully install Piaware on Ubuntu 18.10 Cosmic by cheating :slight_smile: the build script to make it think the distro is “bionic”.

Instead of detecting codename by command CODENAME=(`lsb_release -sc`), I used CODENAME=“bionic”. Please see this post for details.

SCREENSHOT OF PIAWARE & DUMP1090-FA RUNNING ON UBUNTU 18.10 “COSMIC”

CLICK ON SCREENSHOT TO SEE LARGER SIZE
CLICK AGAIN TO SEE FULL SIZE

1 Like

Catching up is hard to do. Still trailing behind you, reading everything, and trying. My Linux lite is running but not live. Working through some old pc unique issues and trying to create the persistent, bootable image now.

@anon69157259
Whatever is written in current thread is specific to Ubuntu 18.10 “Cosmic”, and is not applicable to your case (unless you decide to install “Ubuntu 18.10 Cosmic” on your old PC/laptop).

For your case, please see this thread: Anyone working with the new x86 Raspbian

Thank you very much everyone for the comments and suggestions.

I followed your advice and found another problem with the “dpkg-buildpackage -b” command. When I execute this command, it fails with the message that the secret key can not be found.

What I can do?

That’s not a real failure. It just can’t cryptographically sign the .deb package.

You can still install it.