mirror of
https://github.com/meshtastic/firmware.git
synced 2026-05-31 20:30:08 -04:00
Use libnotify for meshtasticd desktop notifications. Add "HAS_LIBNOTIFY" macro to guard for builds where libnotify is expected. This is not included in buildroot/openwrt builds. (no libnotify except when extra repos are added). Install desktop icon in the correct location on Debian and Fedora packages. Update dependencies in packaging and dockerfiles.
27 lines
1.0 KiB
Docker
27 lines
1.0 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 libbluetooth-dev libi2c-dev libuv1-dev \
|
|
libusb-1.0-0-dev libulfius-dev liborcania-dev libssl-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"]
|