Free Software
(Perangkat Lunak Bebas)
Perangkat lunak bebas adalah tentang kebebasan para pengguna untuk menjalankan, menyalin, mendistribusikan, mempelajari, mengubah dan meningkatkan kinerja perangkat lunak. Hal ini berarti bahwa pengguna program memiliki empat kebebasan yang mendasar:
·
Kebebasan untuk menjalankan program, untuk
tujuan apa saja (kebebasan 0).
·
Kebebasan untuk mempelajari bagaimana program
itu bekerja, dan mengubahnya sesuai keinginan anda (kebebasan 1). Akses ke kode
sumber program merupakan suatu prasyarat untuk poin ini.
·
Kebebasan untuk mengedarkan salinan dari
perangkat lunak, sehingga Anda dapat membantu sesama (kebebasan 2).
·
Kebebasan untuk memperbaiki program, dan
mempublikasikan versi perbaikan Anda ke khalayak umum sehingga orang lain dapat
menikmati keuntungannya (kebebasan 3). Akses pada kode program merupakan suatu
prasyarat juga.
Suatu program merupakan
perangkat lunak bebas, bila setiap pengguna memiliki semua dari kebebasan
tersebut. Dengan demikian, Anda seharusnya bebas untuk menyebarluaskan salinan
program, baik dengan atau tanpa modifikasi, secara gratis atau pun dengan
memungut biaya penyebarluasan, kepada siapapun dan dimanapun. Kebebasan untuk
melakukan hal-hal ini berarti (antara lain) bahwa Anda tidak harus meminta atau
pun membayar untuk mendapatkan ijin guna melakukan hal hal tersebut.
Anda juga seharusnya
memiliki kebebasan untuk membuat modifikasi dan menggunakannya secara pribadi
dalam pekerjaan anda sendiri atau untuk sekedar bermain main, bahkan tanpa
perlu mengumumkan bahwa mereka (program yang anda modifikasi) ada. Dan jika
Anda menerbitkan perubahan, Anda tidak perlu memberitahu orang tertentu, atau
dengan cara tertentu.
Kebebasan untuk
menjalankan program berarti kebebasan bagi setiap tipe orang atau organisasi
untuk menggunakan program tersebut pada sistem komputer jenis apa pun, untuk
setiap jenis pekerjaan secara keseluruhan dan tujuan apapun, tanpa perlu untuk
mengadakan pembicaraan tentang hal itu dengan pengembang atau pun pihak lainnya
secara khusus.
Dalam kebebasan ini, tujuan
pengguna adalah yang penting, bukan tujuan pengembang; Anda
sebagai pengguna dapat bebas untuk menjalankan program untuk tujuan-tujuan
Anda, dan jika kemudian Anda membagikan program itu kepada orang lain, maka dia
bebas untuk menjalankannya sesuai keperluannya, dan Anda tidak berhak untuk
memaksakan tujuan Anda kepadanya.
Kebebasan untuk
menyebarluaskan hasil penggandaan, harus termasuk bentuk biner atau executable,
serta kode sumber, baik untuk versi modifikasi maupun tidak dimodifikasi.
(Mendistribusikan program dalam bentuk dapat dijalankan secara langsung
diperlukan agar mudah diinstal pada sistem operasi bebas.) Tidaklah menjadi
masalah jika tidak ada cara untuk memproduksi bentuk biner atau executable
suatu program tertentu (karena beberapa bahasa tidak mendukung fitur itu),
tetapi Anda harus memberikan kebebasan untuk mendistribusikan kembali bentuk
tersebut (biner atau executable) yang seharusnya anda temukan atau
mengembangkan cara untuk membuat mereka.
Agar kebebasan untuk
melakukan perubahan, serta mempublikasikan versi perbaikan, menjadi bermakna,
Anda harus memiliki akses ke kode sumber program. Oleh karena itu,
aksesibilitas dari kode sumber adalah syarat mutlak untuk perangkat lunak
bebas.
Kebebasan 1 mencakup
kebebasan untuk menggunakan versi perubahan pada tempat asalnya. Jika program
disampaikan dalam sebuah produk yang didesain untuk menjalankan versi perubahan
milik seseorang tetapi menolak untuk menjalankan versi perubahan Anda - suatu
praktek yang dikenal sebagai “tivoization” atau (melalui daftar hitam) sebagai
“secure boot” - kebebasan 1 menjadi fiksi teoretis belaka daripada sebuah
praktek kebebasan. Hal ini tidaklah cukup. Dengan kata lain, binari ini
bukanlah perangkat lunak bebas meskipun dikompilasi dari kode sumber yang
gratis.
Salah satu cara penting
untuk memodifikasi sebuah program adalah dengan menggabungkan subrutin subrutin
dan modul modul yang tersedia secara bebas. Jika lisensi sebuah program
mengatakan bahwa Anda tidak bisa bergabung kedalam sebuah lisensi sesuai modul
yang sudah ada, seperti jika lisensi itu mengharuskan anda untuk menjadi
pemegang hak cipta kode apapun yang Anda tambahkan, maka lisensi tersebut
terlalu ketat untuk memenuhi syarat sebagai lisensi bebas.
Agar kebebasan tersebut
menjadi nyata, maka mereka harus bersifat permanen dan tidak dapat dibatalkan
selama anda tidak melakukan hal apa pun yang salah, jika pengembang perangkat
lunak memiliki kekuatan untuk mencabut lisensi, atau sampai merubah istilah,
tanpa anda melakukan sesuatu yang salah yang memberikan sebab untuk pencabutan
itu, maka perangkat lunak itu tidak bebas.
Namun demikian, aturan
tertentu mengenai tata cara pendistribusian perangkat lunak bebas dapat saja
diterima, jika mereka tidak bertentangan dengan hakikat inti dari kebebasan.
Sebagai contoh, copyleft adalah aturan bahwa ketika
mendistribusikan program, Anda tidak dapat menambahkan larangan untuk
menyangkal orang lain dari hakikat inti kebebasan. Aturan ini tidak
bertentangan dengan hakikat inti dari kebebasan itu sendiri, justru melindungi
mereka.
Perangkat lunak bebas
bukan berarti perangkat lunak non-komersial. Sebuah program bebas harus
tersedia untuk penggunaan komersial, pengembangan komersial, dan distribusi
komersial. Pengembangan komersial dari perangkat lunak bebas bukan lagi hal
yang aneh; bebas seperti perangkat lunak komersial adalah sangat penting. Anda
mungkin harus membayar untuk mendapatkan salinan perangkat lunak bebas, atau
mungkin juga anda mendapatkannya secara cuma-cuma. Tetapi terlepas dari cara
Anda mendapatkan salinan, Anda selalu memiliki kebebasan untuk menyalin dan
mengubah perangkat lunak, bahkan untuk menjual salinan.
Apakah sebuah
modifikasi merupakan suatu perbaikan adalah masalah subjektif. Jika modifikasi
yang Anda lakukan terbatas-secara substansi, pada modifikasi yang orang lain
menganggapnya sebagai perbaikan. Itu bukanlah kebebasan
Namun, aturan tentang
bagaimana mengemas versi modifikasi dapat diterima, jika tidak secara efektif
membatasi kebebasan Anda untuk mempublikasikan ulang modifikasinya, atau
kebebasan untuk membuat dan menggunakan versi modifikasi pribadi. Aturan bahwa
jika Anda membuat versi anda tersedia dalam cara ini, Anda harus membuatnya
tersedia dalam cara itu adalah dapat diterima, pada kondisi yang sama.
(Perhatikan bahwa aturan tersebut masih meninggalkan anda pilihan apakah akan
menerbitkan versi Anda.)
Aturan yang memerlukan
pelepasan kode sumber kepada para pengguna untuk versi yang Anda masukkan ke
dalam penggunaan publik juga dapat diterima. Hal ini juga dapat diterima untuk
lisensi yang membutuhkan itu, jika Anda memiliki versi modifikasi yang telah
didistribusikan dan pengembang sebelumnya meminta salinannya, Anda harus
mengirimkannya salinan dari program itu, atau bahwa Anda mengidentifikasi diri
Anda pada versi modifikasi anda.
Dalam proyek GNU,
copyleft digunakan untuk melindungi kebebasan tersebut secara legal bagi semua
orang. Akan tetapi perangkat lunak non-copyleft juga ada.
Terkadang pemerintah
mengeluarkan aturan pembatasan ekspor dan sanksi perdagangan yang dapat
membatasi kebebasan Anda untuk menyebarkan salinan program secara
internasional. Pengembang perangkat lunak memang tidak memiliki kekuatan untuk
meniadakan atau mengesampingkan pembatasan ini, tapi apa yang mereka dapat dan
harus lakukan ialah menolak untuk menetapkan mereka (aturan pembatasan) sebagai
prasyarat dari program.
Dengan cara ini, pembatasan tidak akan mempengaruhi
kegiatan dan orang-orang di luar wilayah hukum pemerintah tersebut. Jadi,
lisensi perangkat lunak bebas tidak boleh mengharuskan mentaati peraturan ekspor
sebagai salah satu syarat penting kebebasan.
Ketika berbicara
tentang perangkat lunak bebas, sebaiknya jangan menggunakan istilah seperti
membagi-bagikan atau gratis, karena istilah tersebut menyiratkan soal harga,
dan bukannya kebebasan.
Akhirnya, perhatikan
bahwa kriteria seperti yang dinyatakan dalam definisi perangkat lunak bebas ini
memerlukan pemikiran yang cermat untuk interpretasi mereka. Jika sebuah lisensi
perangkat lunak menetapkan pembatasan, maka ia bukanlah lisensi perangkat lunak
bebas.
No comments:
Post a Comment