Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
59 changes: 59 additions & 0 deletions .github/workflows/debian_build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
name: Debian Package Build

on: [push, pull_request, workflow_dispatch]

concurrency:
group: ci-${{github.workflow}}-${{ github.ref }}
cancel-in-progress: true

jobs:
build:
runs-on: ubuntu-22.04

steps:
- uses: actions/checkout@v5
with:
submodules: 'recursive'

- name: Install build dependencies
run: |
sudo apt-get update
sudo apt-get install -y \
debhelper \
dh-python \
python3-all \
python3-setuptools \
python3-numpy \
python3-serial \
python3-pytest \
libxml2-dev \
libxslt1-dev \
zlib1g-dev \
devscripts \
fakeroot

- name: Build Debian package
run: |
dpkg-buildpackage -b -us -uc

- name: List built packages
run: |
ls -la ../python3-mavproxy*.deb || ls -la ../*.deb

- name: Test package installation
run: |
# Install pip dependencies (pymavlink/pynmea2 not available as apt packages)
pip3 install pymavlink pynmeagps
# Install the built package, resolving any apt dependencies
sudo dpkg -i ../python3-mavproxy*.deb || sudo apt-get -f install -y
mavproxy.py --version || echo "Version check completed"

- name: Copy package to workspace
run: cp ../*.deb .

- name: Archive Debian package
uses: actions/upload-artifact@v4
with:
name: debian-package
path: "*.deb"
retention-days: 7
5 changes: 5 additions & 0 deletions debian/changelog
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
mavproxy (1.8.74) UNRELEASED; urgency=medium

* Initial release.

-- Andrii Beregovenko <jet@jet.kyiv.ua> Tue, 02 Sep 2025 11:52:14 +0200
1 change: 1 addition & 0 deletions debian/compat
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
10
38 changes: 38 additions & 0 deletions debian/control
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
Source: mavproxy
Section: python
Priority: optional
Maintainer: Andrii Beregovenko <jet@jet.kyiv.ua>
Build-Depends: debhelper (>= 10),
dh-python,
libxml2-dev, libxslt1-dev, zlib1g-dev,
python3-setuptools (>= 0.6.29),
python3-numpy,
python3-pytest,
X-Python-Version: all
Standards-Version: 4.5.1
Homepage: https://github.com/ArduPilot/MAVProxy

Package: python3-mavproxy
Architecture: all
Depends: ${python3:Depends}, ${misc:Depends},
python3-serial,
python3-numpy
Recommends: python3-opencv,
python3-matplotlib,
python3-lxml,
python3-yaml
Provides: ${python3:Provides}
Description: A MAVLink protocol proxy and ground station. MAVProxy
is oriented towards command line operation, and is suitable for embedding in
small autonomous vehicles or for using on ground control stations. It also
features a number of graphical tools such as a slipmap for satellite mapping
view of the vehicles location, and status console and several useful vehicle
control modules. MAVProxy is extensible via a modules system - see the modules
subdirectory for some example modules. MAVProxy was developed by CanberraUAV
for use in the 2012 Outback Challenge, and includes a module for the
CanberraUAV search and rescue system.
.
Requires pymavlink which must be installed via: pip3 install pymavlink
.
See https://ardupilot.org/mavproxy/index.html for more information on how
to use MAVProxy.
Loading