mirror of
https://github.com/meshtastic/firmware.git
synced 2026-10-31 12:31:02 -04:00
* Add native Portduino mDNS discovery via Avahi and Bonjour * Guard native discovery in Portduino WASM builds * Add linux dependencies in packaging, support "buildroot" Adds libavahi dependencies for Debian, RPM, Docker and CI. Moves the libavahi definition to the shared `build_flags` (which is only consumed on Linux targets) * Fix platformio formatting * fix(portduino): disable Avahi when daemon unavailable --------- Co-authored-by: Jake-B <jake-b@users.noreply.github.com> Co-authored-by: vidplace7 <vidplace7@gmail.com> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
27 lines
1.1 KiB
Docker
27 lines
1.1 KiB
Docker
# Lightweight container for running native PlatformIO tests on non-Linux hosts
|
|
FROM python:3.14-slim-trixie
|
|
|
|
ENV DEBIAN_FRONTEND=noninteractive
|
|
ENV PIP_ROOT_USER_ACTION=ignore
|
|
|
|
# hadolint ignore=DL3008
|
|
RUN apt-get update && apt-get install --no-install-recommends -y \
|
|
g++ git ca-certificates pkg-config \
|
|
libgpiod-dev libyaml-cpp-dev libjsoncpp-dev libbluetooth-dev libi2c-dev libuv1-dev \
|
|
libusb-1.0-0-dev libulfius-dev liborcania-dev libssl-dev libavahi-client-dev \
|
|
libx11-dev libinput-dev libxkbcommon-x11-dev libsqlite3-dev libsdl2-dev libnotify-dev \
|
|
&& apt-get clean && rm -rf /var/lib/apt/lists/* \
|
|
&& pip install --no-cache-dir platformio==6.1.19 \
|
|
&& useradd --create-home --shell /usr/sbin/nologin meshtastic
|
|
|
|
WORKDIR /firmware
|
|
RUN chown -R meshtastic:meshtastic /firmware
|
|
|
|
HEALTHCHECK --interval=30s --timeout=5s --start-period=10s --retries=3 \
|
|
CMD platformio --version || exit 1
|
|
|
|
USER meshtastic
|
|
|
|
# Run tests by default; override with docker run args for specific filters
|
|
CMD ["platformio", "test", "-e", "coverage", "-v"]
|