How is the Onion package feed generated?
I'd like to generate a feed for some custom packages I'm using on the omega2+, like Onion has done for http://repo.onioniot.com/omega2/packages/onion.
How is this custom feed generated?
The OpenWrt build system creates the feeds automatically, along with building the firmware image. After a complete build, all feeds can be found in
bin/packages/mipsel_24kc(within the openwrt build directory).
Just copy these files to a web server and let
/etc/opkg/customfeeds.conf(on your Omega2) point to the feeds you need.
Of course, you need the OpenWrt build system for the Omega2 to get started.
To add your own feed, create a directory on your machine (or a git repository elsewhere) and put the packages you need there. You can copy whole package directories from other third party feeds, or of course create your own packages.
To make the feed known to OpenWrt, edit
feeds.conf(if it does not exist, copy
feeds.conffirst), and add a line like:
src-git myfeed https://myserver.com/feeds/myfeed.git;master src-link myfeed /path/to/myfeed
(first is in case you have git repository, second is just linking a local feed directory). See openwrt docs for details.
Then, you need to install the packages (meaning: make available for building, says nothing about actually building them, that's what you'll do in menuconfig, see below) using the
./scripts/feeds update myfeed ./scripts/feeds install -p myfeed mypackage
-p myfeedpart is only needed in case other feeds might also contain a package named
mypackage, to make sure the version from your feed is preferred).
mypackagewill show up as an option in
Now you can set it to
M(build the package, but do not include it into the firmware image, which means that you can install it with
*(build and include into firmware image).
If you want an example for a custom feed for Omega2, you could have a look at my own custom feed.