---- ====== Prepare OpenWRT 24.10.x on Ubuntu 24.04 ====== ===== Prepare The System ===== * This page describes the preparations you need to make in order to build OpenWRT with the included MESHdesk packages. * The SDK and the build process require ~30-40G of disk space. * Install the required packages to ensure that 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 ==== Storage location for the SDK ==== * Create the location for the SDK * We recommend that you create a folder that contains the version of the firmware you are going to build. * You must do this as a normal Linux user (not root). * Here we create a folder for version **24.10.1**. # Create the working directory mkdir 24.10.1 # Change to our working directory cd 24.10.1 ===== Check out the SDK ===== * Perform a clean checkout of the OpenWrt repository. git clone https://git.openwrt.org/openwrt/openwrt.git * This repository has different branches. To see which branches are available and which one we are currently using, enter the following command. #First we may need to change our directory to the openwrt directory cd openwrt git branch -a #Also to see the tags git tag -l * We will checkout the tag **24.10.1**. git checkout 24.10.1 * Confirm that this **24.10.1** is now checked out. git branch * Update the package feeds. ./scripts/feeds update ===== Install the required packages ===== * Make sure the following packages are installed as they are required for the MESHdesk package. ./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 24.10 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 #If you are going to do Hotspot 2.0 ./scripts/feeds install iw-full #If you will use SQM/CAKE for bandwidth limiting and controlling Buffer Bloat ./scripts/feeds install sqm-scripts ./scripts/feeds install luci-app-sqm #If you will implement the Multi-WAN functionality ./scripts/feeds install mwan3 ./scripts/feeds install luci-app-mwan3 #With Multi-WAN you might need the LTE related packages ./scripts/feeds install usb-modeswitch ./scripts/feeds install picocom ./scripts/feeds install uqmi ./scripts/feeds install kmod-usb-net-cdc-mbim ./scripts/feeds install kmod-usb-net-qmi-wwan ./scripts/feeds install kmod-usb-serial-option ./scripts/feeds install kmod-usb-serial-qualcomm ./scripts/feeds install kmod-usb-serial-sierrawireless ./scripts/feeds install kmod-usb-wdm ./scripts/feeds install qmi-utils ./scripts/feeds install libqmi ./scripts/feeds install luci-proto-qmi * Now everything is ready to add the MESHdesk package. [[network:firmware:meshdesk|OpenWRT 24.10.x with MESHdesk packages]]