LibreMesh packages

编写用于无线网状网络的 LibreMesh 元固件的 OpenWrt 软件包。「OpenWrt packages composing LibreMesh meta-firmware for wireless mesh networking」

Github星跟踪图

Backers on Open Collective
Sponsors on Open Collective
codecov.io

LibreMesh packages

LibreMesh logo

LibreMesh project includes the development of several tools used for
deploying libre/free mesh networks.

The firmware (the main piece) will allow simple deployment of auto-configurable,
yet versatile, multi-radio mesh networks. Check the Network Architecture to
see the basic ideas.

We encourage each network community to create its firmware profile on
network-profiles repository and build the images locally.

Supported hardware

In this page we provide a list of requirements that ensure you to have a
working LibreMesh node on your router. This list comes with no warranties: read
carefully the model-specific instructions on OpenWrt wiki and be
extra-careful when flashing your routers!

Building a Firmware Image on Your PC

Building the stable release LibreMesh 2020.1

Using the BuildRoot

The BuildRoot will cross-compile the whole OpenWrt and the LibreMesh packages on your computer, so it will take approx 10 GB of disk space and a few hours of compilation time.

For compiling LibreMesh firmware with this method, you can follow these instructions.

Using the ImageBuilder

The ImageBuilder method is not available for the stable release.

Building the experimental firmware

The experimental code still has serious issues that have to be solved, use it only for developing or debugging.

Using the BuildRoot

As explained above, in the instuctions on the website you will find where to specify the version of the code to compile.

Using the ImageBuilder

The ImageBuiler will download pre-compiled parts of the OpenWrt releases, and add the pre-compiled LibreMesh packages, so it is much faster than the BuildRoot method (but less practical if you want to develop some new features modifying LibreMesh source code).

Start an ImageBuilder of your choice, for example ath79-generic if your device is supported within it, use containers for an easier setup:

mkdir ./images/
docker run -it -v $(pwd)/images:/images/ ghcr.io/openwrt/imagebuilder:ath79-generic-v22.03.5

If your device is not part of ath79-generic profiles, you can replace it with another - combination. For knowing which target and subtarget is best suited for your router, check out the page about it in the OpenWrt's Table of Hardware.

Within the container, add the lime-packages feed:

echo "src/gz libremesh https://feed.libremesh.org/master" >> repositories.conf
echo  "untrusted comment: signed by libremesh.org key a71b3c8285abd28b" > keys/a71b3c8285abd28b
echo "RWSnGzyChavSiyQ+vLk3x7F0NqcLa4kKyXCdriThMhO78ldHgxGljM/8" >> keys/a71b3c8285abd28b

Ideally add your own lime-community files within the container in the folder
./files/etc/config/. To find possible options consult the
lime-example.txt file. It is also possible to mount an existing
lime-community file directly via -v $(pwd)/lime-community:/builder/files/etc/config/lime-community.

Now create an image of your choice, to see the names of supported profiles run
make info first.

make image PROFILE=ubnt_unifi PACKAGES="lime-system lime-proto-babeld lime-proto-batadv lime-proto-anygw lime-hwd-openwrt-wan -dnsmasq" BIN_DIR=/images FILES=files

Your images should be available outside of the container in the ./images/ folder

Possible errors from the ImageBuilder

If you get a docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?. error, means that you don't have Docker's daemon running. Make sure you have docker installed and start its daemon with systemctl start docker.service.

If you get a opkg_download: Check your network settings and connectivity. error, both check the connectivity and make sure that the firewall rules of your computer allow the container to reach the internet.

Testing

LibreMesh has unit tests that help us add new features while keeping maintenance
effort contained.

To run the tests simply execute ./run_tests.

Please read the [Unit Testing Guide] for more details about
testing and how to add tests to LibreMesh.

Get in Touch with LibreMesh Community

Mailing Lists

The project has an official mailing list libremesh@krutt.org and an Element
(#libremesh-dev:matrix.guifi.net) chat room; check out this page with the
links for joining the chatroom.

Contributors

This project exists thanks to all the people who contribute. [Contribute].

Donations

We are now a member of open collective, please consider a small donation!

Backers

Thank you to all our backers! 🙏 [Become a
backer
]

Sponsors

Support this project by becoming a sponsor. Your logo will show up here with a
link to your website. [Become a
sponsor
]










主要指标

概览
名称与所有者libremesh/lime-packages
主编程语言Lua
编程语言Makefile (语言数: 8)
平台
许可证GNU Affero General Public License v3.0
所有者活动
创建于2013-05-11 18:55:14
推送于2025-05-25 20:36:54
最后一次提交2025-05-25 22:36:54
发布数26
最新版本名称v2024.1 (发布于 2025-01-22 22:15:29)
第一版名称0.1-alpha-is4cwn (发布于 )
用户参与
星数296
关注者数24
派生数101
提交数3.5k
已启用问题?
问题数455
打开的问题数112
拉请求数615
打开的拉请求数9
关闭的拉请求数104
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?