Go to file
2023-01-13 10:12:06 -05:00
.github .github/workflows: add cig,wf194c4 2022-12-16 16:15:47 +01:00
docker Docker: do not install llvm 2022-01-31 07:01:31 +01:00
feeds ucentral-schema: update to latest HEAD 2023-01-13 14:09:25 +01:00
patches ipq807x: do no keep uboot-env config during sysupgrade 2022-12-08 15:31:30 +01:00
profiles ramips: add yuncore fap640 support 2022-12-08 15:31:13 +01:00
.gitignore open-converged-wireless: Import 21.02 based uCentral tree 2021-03-25 12:19:47 +01:00
build.sh ucentral: development update 2021-05-04 13:51:23 +02:00
config.yml ucentral: drop legacy packages 2022-02-04 08:06:06 +01:00
dock-run.sh open-converged-wireless: Import 21.02 based uCentral tree 2021-03-25 12:19:47 +01:00
Makefile open-converged-wireless: Import 21.02 based uCentral tree 2021-03-25 12:19:47 +01:00
README.md Update README.md 2022-10-19 17:04:14 -07:00
setup.py open-converged-wireless: Import 21.02 based uCentral tree 2021-03-25 12:19:47 +01:00

OpenWiFi AP NOS

OpenWrt-based access point network operating system (AP NOS) for TIP OpenWiFi. Read more at openwifi.tip.build.

Building

Setting up your build machine

Building requires a recent Linux installation. Older systems without Python 3.7 will have trouble. See this guide for details: https://openwrt.org/docs/guide-developer/toolchain/beginners-build-guide

Install build packages on Debian/Ubuntu (or see above guide for other systems):

sudo apt install build-essential libncurses5-dev gawk git libssl-dev gettext zlib1g-dev swig unzip time rsync python3 python3-setuptools python3-yaml

Doing a native build on Linux

Use ./build.sh <target>, or follow the manual steps below:

  1. Clone and set up the tree. This will create an openwrt/ directory.
./setup.py --setup    # for subsequent builds, use --rebase instead
  1. Select the profile and base package selection. This setup will install the feeds and packages and generate the .config file.
cd openwrt
./scripts/gen_config.py linksys_ea8300
  1. Build the tree (replace -j 8 with the number of cores to use).
make -j 8 V=s

Build output

The build results are located in the openwrt/bin/ directory:

Type Path
Firmware images openwrt/bin/targets/<target>/<subtarget>/
Kernel modules openwrt/bin/targets/<target>/<subtarget>/packages/
Package binaries openwrt/bin/packages/<platform>/<feed>/

Developer Notes

Branching model

  • main - Stable dev branch
  • next - Integration branch
  • staging-* - Feature/bug branches
  • release/v#.#.# - Release branches (major.minor.patch)

Repository structure

Build files:

  • Makefile - Calls Docker environment per target
  • dock-run.sh - Dockerized build environment
  • docker/Dockerfile - Dockerfile for build image
  • build.sh - Build script
  • setup.py - Clone and set up the tree
  • config.yml - Specifies OpenWrt version and patches to apply

Directories:

  • feeds/ - OpenWiFi feeds
  • patches/ - OpenWiFi patches applied during builds
  • profiles/ - Per-target kernel configs, packages, and feeds

uCentral packages

AP-NOS packages implementing the uCentral protocol include the following repositories (refer to the ucentral feed for a full list):