Many software projects have their hosting and packages for various distributions at Sourceforge or Google Code.
Also Freshmeat could be considered as a directory for free software.
The most of them let you download packages for your distribution or checkout/clone their repository.
But I see no reason why somebody should maintain such a site. There is no advantage in using your browser for download some utilities if you want to install them in your system afterwards.
This is exactly the job of the packet management of your distribution and most of them do a good job at this :) In most cases there exist various wrapper tools for package management in all flavors.
For example in Arch there is the basic package management tool called pacman. If I want to install utility foo, I simply have to type
pacman -S foo and everything is installed. If tehre are not enough packages provided I can search in the AUR (Arch User Repository). I can use
yaourt which is a wrapper for pacman or simply browse the AUR Homepage. On Debian you use
The FreeBSD packages are accessible also via the system tools or via the Ports Homepage.
So why should I want to browse any other homepage to download any utilities? If my package repository doesn't have it, its most of the time a small and unpopular project which I most likely won't find at any other "repository" on the net.
Addition after short Discussion with Warren Young (see comments):
My point is not, that every tool/software/utility has to exist as a package and if not, that it is not "useful". The point is, that if you are missing a tool, you know what you want and can get it directly from the project page. The most project pages are hosted on the named services (sf,gc,fm) which provide you with a basic directory, so in combination with your package management and the project pages there should be no need for such a repository.