fetch package list first if necessary