Özgür yazılım, kullanıcıların özgürlüğüne saygı duyan yazılım demektir. Kullanıcıların bir yazılımı çalıştırma, kopyalama, dağıtma, inceleme, değiştirme ve geliştirme özgürlüğüne sahip olduğu anlamına gelir. Aşağıdaki dört temel özgürlüğü sağlayan yazılım, özgür yazılımdır:

  1. Herhangi bir amaç için, istediğiniz şekilde yazılımı çalıştırma özgürlüğü (0 numaralı özgürlük).
  2. Her ne istiyorsanız onu yaptırmak için programın nasıl çalıştığını inceleme ve onu değiştirme özgürlüğü (1 numaralı özgürlük). Yazılımın kaynak koduna ulaşmak, bu iş için ön koşuldur.
  3. Kopyaları dağıtma özgürlüğü, böylece başkalarına yardım edebilirsiniz (2 numaralı özgürlük).
  4. Değiştirilmiş sürümlerinizin kopyalarını dağıtma özgürlüğü (3 numaralı özgürlük). Böylece değişikliklerinizden yararlanması için tüm topluma bir şans vermiş olursunuz. Kaynak koduna erişmek, bunun için bir ön koşuldur.