Prepare OpenWRT 23.05.x on Ubuntu 22.04
Prepare The System
This page will cover the preparation work for you to be able to build OpenWRT with the MESHdesk packages included.
The SDK and build process will require ~30-40G of hard drive space.
Install the required packages to ensure the SDK can build the firmware.
sudo apt-get update
sudo apt-get install build-essential subversion git-core libncurses5-dev zlib1g-dev gawk flex quilt libssl-dev xsltproc libxml-parser-perl unzip mercurial
Location for the SDK
Create the location for the SDK
Our suggestion is to create a folder that will indicate the version of the firmware you'll be building.
You need to do this as a normal Linux user (not root).
Here we create a folder for the 23.05.2 release.
# Create the working directory
mkdir 23.05.2
# Change to our working directory
cd 23.05.2
Checkout the SDK
git clone https://git.openwrt.org/openwrt/openwrt.git
#We may first need to change our directory to the openwrt directory
cd openwrt
git branch -a
#Also to see the tags
git tag -l
git checkout v23.05.2
git branch
./scripts/feeds update
Install the required packages
./scripts/feeds install coova-chilli
./scripts/feeds install luasocket
./scripts/feeds install libuci-lua
./scripts/feeds install curl
./scripts/feeds install -a -p routing
./scripts/feeds install iwinfo
./scripts/feeds install luci
./scripts/feeds install luci-theme-material
./scripts/feeds install mosquitto
./scripts/feeds install lua-mosquitto
#For backward compatibility in 23.05 with older Luci libs
./scripts/feeds install luci-compat
#Add the iptables translator package to translate iptables to nftables
./scripts/feeds install iptables-nft
#Add these Luci packages
./scripts/feeds install luci-lib-nixio
./scripts/feeds install luci-lib-jsonc
./scripts/feeds install luci-lib-json
./scripts/feeds install luci-lib-httpprotoutils
./scripts/feeds install luci-lib-httpclient
./scripts/feeds install luci-lib-base
#If you are going to implement OpenVPN tunnels
./scripts/feeds install openvpn-openssl
OpenWRT 23.05.x with MESHdesk packages