On my x-wrt install, I have a ~140Kb list of WhiteRussian packages, a ~247Kb list of 0.9-backports packages and a ~200Kb list of X-Wrt packages.
That's pushing 600Kb on a 4Mb router - Even compressed, that was enough to stop asterisk installing.
So I deleted the lists, made a temporary folder, and a symbolic link from the old list location to the temporary folder and a bit of tweaking:
*** Warning: This will lose the package lists after every reboot and require directory recreating to fix it ***
cd /jffs/usr/lib/ipkg
rm -rf lists
mkdir /tmp/lists
ln -s /tmp/lists lists
reboot
The reboot is for jffs to refresh and show the freed up space. There may be a neater way than that, but that works. I then had ~1.6Mb free instead of ~1.2Mb.
After rebooting, the symbolic link is broken because the tmp filesystem is lost during a reboot. Still, we can recreate it:
cd /jffs/usr/lib/ipkg
rm lists
mkdir /tmp/lists
ln -s /tmp/lists lists
Now you can refresh the lists:
ipkg update
And then retry installing whatever it is that you wanted.