external: better loops & dont load packages twice (refs #2145)

git-svn-id: file:///var/svn/freetz/trunk@10869 149334a1-2f27-0410-a3b9-fc62619ac1e6