1
0
Fork
You've already forked meshy
0
forked from sesivany/meshy
Meshy - a GTK4/libadwaita client for MeshCore. The goal is to provide the best Linux experience.
  • Python 95.8%
  • HTML 1.6%
  • CSS 1.2%
  • Meson 0.6%
  • Shell 0.5%
  • Other 0.3%
2026年05月16日 00:07:09 +02:00
.forgejo/workflows Checking if the local copy of the git repo really has the latest code 2026年05月07日 09:44:35 +02:00
data Fixing the channel order preference not being saved 2026年05月15日 18:59:24 +02:00
po Updating translation files 2026年05月15日 20:36:01 +02:00
scripts Adding SPDX license header to the rest of files 2026年05月15日 15:14:47 +02:00
src Fixing a bug where the delivered status is rewritten 2026年05月16日 00:07:09 +02:00
web Adding SPDX license header to the rest of files 2026年05月15日 15:14:47 +02:00
.gitignore Updating translations 2026年05月12日 16:52:17 +02:00
flake.lock add nix flake 2026年05月02日 11:38:48 +02:00
flake.nix add nix flake 2026年05月02日 11:38:48 +02:00
LICENSE Initial commit 2026年03月27日 14:34:29 +01:00
meson.build Add SPDX license header 2026年05月15日 14:33:18 +02:00
meson_options.txt Add SPDX license header 2026年05月15日 14:33:18 +02:00
page.codeberg.sesivany.Meshy.json Removing GeoClue access for the manifest, removing bundles and adding screenshots in README.md 2026年04月13日 20:40:16 +02:00
README.md Adding link to translation instructions 2026年05月13日 12:45:24 +02:00

Meshy

Meshy is a GTK4/libadwaita client for MeshCore. The goal is to provide the best Linux experience.

The app is already fairly feature complete and stable, but note it is still in active development, so things may still significantly change. Feedback with missing features, ideas and bugs is welcome.

Meshy screenshot Meshy screenshot

Installation

Flatpak repo

  1. Add the repo:
flatpak remote-add --if-not-exists meshy https://meshy-app.org/meshy.flatpakrepo
  1. Install Meshy:
flatpak install meshy page.codeberg.sesivany.Meshy

Note that if you installed Meshy from the flatpak bundle (provided before), you have to uninstall it and install it from the repo to recieve updates in the future.

Building from source

Flatpak

Install flatpak-builder and the GNOME SDK:

flatpak install flathub org.gnome.Sdk//50 org.gnome.Platform//50

Build and install:

flatpak-builder --force-clean --user --install builddir page.codeberg.sesivany.Meshy.json

Or to create a .flatpak bundle:

flatpak-builder --force-clean --repo=repo builddir page.codeberg.sesivany.Meshy.json
flatpak build-bundle repo meshy.flatpak page.codeberg.sesivany.Meshy master

All dependencies (including third-party Python packages and native libraries) are handled by the Flatpak manifest automatically.

Native build

Dependencies

Build dependencies:

  • meson (>= 0.62.0)
  • ninja
  • python3
  • glib2 (gio-2.0, glib-compile-resources, glib-compile-schemas)
  • gtk4 (gtk4-update-icon-cache)
  • desktop-file-utils (desktop-file-validate)
  • appstream (appstreamcli)
  • gettext (msgfmt)

Runtime dependencies:

  • gtk4
  • libadwaita
  • gstreamer
  • libshumate
  • geoclue2
  • zbar (optional, for QR code scanning)
  • python3-gobject (PyGObject)
  • python3-pycryptodome (pip: pycryptodome)
  • python3-pyzbar (pip: pyzbar) (optional, for QR code scanning)
  • python3-pyserial
  • python3-segno (pip: segno)

On Fedora:

sudo dnf install meson ninja-build python3 glib2-devel gtk4-devel libadwaita-devel \
 gstreamer1-devel libshumate-devel geoclue2-devel zbar-devel \
 python3-gobject python3-pyserial desktop-file-utils appstream gettext
pip install pycryptodome pyzbar segno

On Debian/Ubuntu:

sudo apt install meson ninja-build python3 libglib2.0-dev libgtk-4-dev libadwaita-1-dev \
 libgstreamer1.0-dev libshumate-dev libzbar-dev \
 python3-gi python3-pycryptodome python3-pyzbar python3-serial python3-segno \
 desktop-file-utils appstream gettext
Build options
Option Default Description
qr_scanner true Enable QR code scanning support (requires zbar and pyzbar)

To build without QR code scanning (e.g. if zbar or pyzbar are not available on your distribution):

meson setup builddir --prefix=/usr -Dqr_scanner=false

The "Scan QR Code" option will be hidden from the UI when built without this feature.

Build and install
meson setup builddir --prefix=/usr
meson compile -C builddir
sudo meson install -C builddir

Translations

Meshy uses Codeberg Translate (Weblate) for translations. If you'd like to help with translations, go check existing ones. If your language is in the list, you can start translating as a registered user. If it isn't among existing translations, file a ticket and request it.