Definicija slobodnog softvera
Stallman zasniva pojam slobodnog softvera na ideji da mora poštovati korisnikovu slobodu i pripadnu zajednicu. Jedino u tom slučaju je softver slobodan; to se također može opisati preko nužnih sloboda koje korisnik mora uživati, a to su slobode:
- pokretanja
- proučavanja izvornog koda programa kako bi korisnik mogao naučiti što točno program radi i kako to radi te kako bi mogao upravljati svojim računalom na točno onakav način na koji on to želi
- distribuiranja kopija programa
- distribuiranja izmjenjenih kopija programa.
Osnovni preduvjet bilo kakve promjene programa jest dostupnost izvornog koda, što ga automatski čini nužnom komponentom svakog slobodnog softvera. Obfusciran (doveden u stanje nečitljivosti ili neprepoznatljivosti) izvorni kod ne dolazi u obzir.
Valja napomenuti da, iako najčešće u današnje vrijeme do kućnih korisnika dolazi u besplatnom obliku, slobodni softver uopće ne mora biti besplatan, niti je to bit Stallmanovog aktivizma. Dapače, on podupire biznis temeljen na slobodnom softveru i na mreži usluga podrške i proširenja koje se nad njim mogu vršiti.
Dakle, slobodan softver ne znači “nekomercijalan softver”; slobodan program čak i mora biti dostupan za komercijalno korištenje, razvoj te distribuciju. Ono što je ključno kod komercijalnog razvoja, međutim, je to da sve promjene koje se distribuiraju moraju biti objavljene i dostupne u izvornom obliku svim zainteresiranim korisnicima, što nije praksa kod vlasničkog softvera.