Naughty Computer have written up a proposal for The Three Software Freedoms – always interesting the timing of things like this.
The freedom to study the software
The freedom to modify the software
The freedom to redistribute the software, modified or unmodified
Read their full, verbose definitions here.