Free software is a matter of the users’ freedom to run, copy, distribute, study, change and improve the software. More precisely, it means that the program’s users have the four essential freedoms:
- Freedom 0: to run the program, for any purpose.
- Freedom 1: to study how the program works, and change it to make it do what you wish. Access to the source code is a precondition for this.
- Freedom 2: to redistribute copies so you can help your neighbor.
- Freedom 3: to distribute copies of your modified versions to others. By doing this you can give the whole community a chance to benefit from your changes. Access to the source code is a precondition for this.
A program is free software if users have all of these freedoms.
More information in FSF website.