Segons la definició d'en Richard Stallman, considerem programari lliure qualsevol programa que garanteixi als seus usuaris les quatre llibertats següents:
La llibertat d'executar el programa per qualsevol propòsit.
La llibertat d'estudiar el funcionament del programa i d'adaptar-lo a les nostres necessitats.
La llibertat de redistribuir còpies del programa de manera que així puguem ajudar al proïsme.
La llibertat de millorar el programa i fer públiques les millores que haguem introduït per tal que tothom es pugui beneficiar de la nostra feina.
Per gaudir de les llibertats 1 i 3 és imprescindible tenir accés al codi font del programa.
A les pàgines del projecte GNU trobareu aquesta definició més desenvolupada. Qualsevol programa que no garanteixi a l'usuari les llibertats anteriors l'anomenarem programari de propietat.