This topic only outlines how to compile luci-app-radius, which is a very simple radius management in LuCI that sets radius up for users and clients. This implementation would not likely be suitable as a real home network AAA server, especially since it's missing the Accounting part.
This topic could probably be used as an outline on how to compile other openwrt packages for the Omnia environment.
This topic assumes knowledge of the command line, how to install applications in the build host system and other related knowledge.
Find some space on a local disk. The Vagrant LXC and the source code was close to 12 gigabytes.
First, follow the first step of the instructions on how to build TurrisOS from sources. After the sources have been downloaded from one of the GIT repositories, the luci-app-radius package should be retrieved.
In either openwrt or turris-os (depending on the repository used) go to feeds/custom and retrieve the git package:
user@buildhost:/[build-directory]/turris-os/feeds/custom$ git clone https://github.com/MuJJus/luci-app-radius.git
Go back to the root source directory, then make a link to the retrieved sources
user@buildhost:/[build-directory]/turris-os/feeds/custom$ cd ../../package/feeds/custom user@buildhost:/[build-directory]/turris-os/package/feeds/custom$ ln -s ../../../feeds/custom/luci-app-radius .
Continuing with the instructions, "Preparing the development environment", create the Vagrant LXC and ssh into it.
In "Compiling Turris OS", follow the steps to update and install the feeds and copy the config from the instructions, and run "make menuconfig".
vagrant@turris-buildroot:/openwrt$ make menuconfig
luci-app-radius depends on freeradius2-democerts, freeradius2-mod-eap-mschapv2, freeradius2-mod-eap-peap, freeradius2-mod-eap-tls, and freeradius2-mod-files. That means it will not show up in menuconfig until all it's dependencies are selected.
To select all the dependencies needed, go to the
Network --->
menu then the
FreeRADIUS (version 2) --->
menu, then pick each of the dependencies as "M". Beyond that it shouldn't matter what else is selected since only one program is being compiled. Avoid de-selecting anything to minimize disruptions. Exit out of the "menuconfig"
The package can now be built:
vagrant@turris-buildroot:/openwrt$ make package/luci-app-radius/install
The resulting package can be found at:
/openwrt/bin/mvebu/packages/packages/luci-app-radius_0.1-1_all.ipk
All that's left is to copy it to the router and install it. If the package isn't re-named it to luci-app-radius_0.1-1_all.opk it may not appear in the Omnia package management. If it's installed as an ipk it appears it cannot be uninstalled.