Ilmainen ohjelmisto, joka tunnetaan myös nimellä software libre tai avoimen lähdekoodin ohjelmisto, on ohjelmistotyyppi, jota ohjelmiston omistaja voi käyttää ja muokata sekä jakaa edelleen. Usein muutosten tekijä voi jakaa sen uudelleen ja myydä sen, mutta sen on silti oltava avoimen lähdekoodin. Ilmainen ohjelmisto ei ole synonyymi ilmaisohjelmalle, joka on ohjelmisto, joka on käytettävissä ilmaiseksi, mutta jota voidaan muuttaa tai ei. Tämä ohjelmisto on joskus myös maksuton, mutta toisinaan sen ostaminen vaatii maksun; “ilmainen” nimessä viittaa siihen, että sitä voidaan käyttää ja muuttaa vapaasti.
Tämän tyyppistä ohjelmistoa voidaan kutsua myös avoimen lähdekoodin ohjelmistoksi. Kaikki nämä termit tarkoittavat samaa asiaa, ja ne viittaavat yksinkertaisesti siihen, että ohjelmiston lähdekoodi on kaikkien saatavilla, joilla ohjelmisto on tietokoneessa. Ohjelmiston lähdekoodin tulee olla saatavilla sekä alkuperäisessä versiossa että muunnetuissa versioissa. Jos näin ei ole, ohjelmistoa ei voi enää pitää ilmaisena. Tietenkin ihmiset voivat vapaasti tehdä henkilökohtaisia muutoksia ohjelmistoon eivätkä jakaa niitä kenenkään kanssa. Vain koska vapaus tehdä niin ei tarkoita, että sitä vaaditaan.
Ilmainen ohjelmisto voi olla minkä tahansa tyyppinen ohjelmisto, ja sitä voivat käyttää kaikki, jotka haluavat asentaa ohjelmiston tietokoneelleen. Vapaiden ohjelmistojen säätiön kehitti ensimmäisen kerran vuonna 1985 Richard Stallman, ja se tarjoaa luettelon neljästä erityisestä “vapaudesta”, jotka helpottavat ilmaisten ohjelmistojen määritelmää. Nämä ovat “Vapaus ajaa ohjelmaa mihin tahansa tarkoitukseen”, “vapaus tutkia ohjelman toimintaa ja muuttaa sitä niin, että se tekee mitä haluat”, “vapaus jakaa kopioita uudelleen, jotta voit auttaa naapuriasi” ja “vapaus parantaa ohjelmaa ja julkaista parannukset (ja muutetut versiot yleensä) julkisesti, jotta koko yhteisö hyötyy.”
Sen lisäksi, että ilmaisen ohjelmiston lähdekoodi on yleisön saatavilla, ohjelmiston mukana on oltava joko ilmainen ohjelmistolisenssi tai muu ilmoitus, joka tarjoaa lisäoikeuksia. Ohjelmiston mukana toimitetaan yleensä myös käsikirja, jota myös päivittävät käyttäjät, jotka tekevät muutoksia. Tämäntyyppisistä ohjelmistoista voi olla hyötyä yksilöille sekä suuremmille ryhmille tai yrityksille, koska ohjelmistoa voidaan jatkuvasti parantaa ja muokata käyttäjien tarpeiden mukaan.