Where should we host our software repository?

Some requirements:

- ensure that the community has full control on stored content

- be entirely based on open-source software

- prefer open hosting over closed hosting, if possible

- technology should allow the community to host its own repository in the future

- ensure consistent usage across various operating systems (namely, Windows, Mac OSX and Linux)

- be provided at no cost for the community


What else?