When I build my own images, I always update the feeds prior like so:
./scripts/feeds update -a
./scripts/feeds install -a
What I am confused about is the resulting ./feeds/ does not match with what I see on the packages repo hosted on github. For example, irqbalance is at version 1.7.0 from a few weeks ago, yet the version in my ./feeds/ is at version 1.6.0.
@darksky What might happen is you have local patches on top of the OpenWrt feeds - I've seen more than once that they seem to get updated but actually break (silently, from what I recall) on your uncommitted or unstashed changes. So they never seem to get updated, until you remove local your modifications.
I do apply local patches, but that happens on an overlay mount back to my openwrt base directory, so the base never sees them. If you're unfamiliar with the overlayfs concept, this blog is a good read. Also see the kernel docs.
Here is more detail:
My openwrt "base" resides on a SSD in /incoming/openwrt/
I cloned the git repo
Grabbed the latest feeds (with ./scripts/feeds update -a and ./scripts/feeds install -a)
I built my toolchain and cleaned the build env with make clean
No custom stuff (with the exception of .config. I keep that as my "base" for openwrt building. I keep it in sync with master for commits via git fetch upstream && git checkout master && git rebase upstream/master
Now for building, I use an overlay mount to this "base" dir but all the building happens on a tmpfs partition (RAM disk) so there is no I/O back to the SSD.