Fri programvara

Richard Stallman, skaparen av Free software movement, håller en keynote som inleder Wikimania 2005.

Fri programvara (engelska: free software) är programvara som utvecklare och användare har friheten att använda, studera, modifiera och sprida vidare som sådan eller i ändrad form. För att den som använder fri programvara skall kunna utnyttja friheterna, måste den mänskligt läsbara formen av programvaran (det vill säga källkoden) finnas tillgänglig och levereras tillsammans med en notis som anger nämnda friheter och eventuella restriktioner.

Programkod jämställs i upphovsrätten med litterära verk, vilket bland annat innebär att kopior inte får spridas utan tillstånd. För att programvaran skall vara fri måste den alltså i allmänhet explicit spridas med en programvarulicens som omfattar de nödvändiga friheterna.

Begreppet fri programvara är till sitt innehåll väsentligen synonymt med öppen källkod, men valet av uttryck speglar olika idétraditioner.

Rörelsen

Rörelsen för fri programvara skapades 1983 av Richard Stallman för att göra dessa friheter tillgängliga för varje datoranvändare.[1] Detta skedde när Stallman lanserade GNU-projektet i september 1983 för att skapa ett unix-liknande operativsystem som helt bestod av fri programvara.[2]

En viktig organisation inom rörelsen är stiftelsen Free Software Foundation, grundad av Richard Stallman 1985. Stiftelsen äger och förvaltar GNU-projektets licenser, och kan tillhandahålla juridisk hjälp till utvecklare för att se till att GNU-projektets licenser efterföljs. Stiftelsen certifierar andra licenser för kompatibilitet med GNU-projektets licenser.

Fri programvara i relation till andra begrepp

Motsatsen till fri programvara är proprietär programvara eller icke-fri programvara, för vilken utvecklarens upphovsrätt och leverantörens licensavtal kraftigt reglerar användarens möjligheter att modifiera, distribuera och använda programvaran och att låta andra göra det.

Fri programvara särskiljs från gratisprogram ("freeware") som är gratis proprietär programvara. Användare av gratisprogram har i allmänhet inte tillgång till källkoden och har därför svårt att studera eller modifiera programmen också i fall där det vore tillåtet. Det är också ofta otillåtet att sprida freeware vidare.

Fri programvara omfattas i allmänhet av upphovsrätten och är "public domain" endast ifråga om triviala programsnuttar och ovanliga specialfall. Istället blir programvaran fri genom att upphovsmannen sprider programvaran under en fri licens. De mest minimalistiska och tillåtande av de ofta använda licenserna ställer krav enbart på attribuering, det vill säga att upphovsmännen eller den bakomliggande organisationen nämns, och ställer villkor på hur deras namn får användas i samband med programvaran, men tillåter användning, modifiering och spridning utan övriga restriktioner.

Ofta används mer komplicerade licenser som reglerar kompatibilitet med andra licenser, och kan syfta till copyleft, det vill säga att garantera att programvaran och programvara som bygger på den förblir fri programvara. En strikt sådan licens är GNU General Public License (GPL). Det var den första licens för stark copyleft som fick stor spridning. "Stark copyleft" innebär att licensen förhindrar att fri programvara länkas samman med proprietär programvara till en icke-fri produkt, och kräver att källkoden distribueras tillsammans med eventuell kompilerad programvara. En ännu mer strikt licens är GNU Affero General Public License (AGPL), som förhindrar att man tar sig runt GPL:s restriktioner genom att köra en modifierad version av det fria programmet på en serverdator (jfr molntjänst): eftersom man aldrig givit den binära versionen av programmet till kunden kräver GPL inte heller att man ger källkoden. Ibland används istället mindre strikta licenser för svag copyleft, exempelvis för länkade programbibliotek och andra programkomponenter som ska kunna anropas av proprietära applikationsprogram och på så sätt få stor spridning. En viktig sådan licens är GNU Lesser General Public License (LGPL).

Från det sena 1990-talet kom fler termer relaterade till fri programvara att växa fram, såsom öppen källkod ("open source"). Skillnaden mellan fri programvara och program med öppen källkod är främst att de som talar om fri programvara ofta betonar den bakomliggande ideologin, att människor skall kunna kontrollera de datorprogram de använder, medan de som talar om öppen källkod främst tänker på den praktiska nyttan av modellen för dem som utvecklar programvaran eller finansierar dess utveckling, nämligen att de ska få hjälp av andra att vidareutveckla den. I litteraturen beskrivs ofta företrädare för rörelsen för fri programvara som mer frihetliga, idealistiska, radikala, anarkistiska och extrema och mindre pragmatiska än andra företrädare för öppen källkod.[3][4]

Kostnad och affärsmodeller

Med uttrycket "Free as in free speech, not as in free beer" betonar Stallman att det engelska ordet free i free software avser frihetlighet, inte kostnadsfrihet.[3] Begreppet "Libre software" används ibland för att undvika tvetydigheten i det engelska ordet "free". Eftersom fri programvara kan distribueras fritt finns den generellt tillgänglig till liten eller ingen kostnad. Om en leverantör tar ut en kostnad – vilket måste vara tillåtet för att programvaran skall räknas som fri – kan ändå vilken användare som helst gratis sprida programvaran vidare. Då programvaran sprids i stor skala på fysiskt media (såsom på databand eller disketter på 80-talet, sedan slutet av 1990-taletCD och numera också DVD och Blu-ray Disc), ibland tillsammans med tryckta versioner av till exempel användarhandböcker, är det vanligt att man tar betalt för en kopia. Det blir alltmer vanligt med elektronisk distribution av programvara över Internet, varvid kostnaden för enskilda kopior är försumbar och inte värd att begära kompensation för. Paket med fysisk media, manualer etc. säljs ofta tillsammans med ett användarstödspaket. Användarstödet och eventuell garanti gäller då i allmänhet ett begränsat antal installationer, oberoende av friheten att kopiera och sprida själva programvaran och dokumentationen.

Fri programvara kan skrivas av folk som personligen i sitt arbete har behov av viss programvara, vilket till exempel gäller mycket av Linux tidiga utveckling och många program för specifika vetenskapliga behov. En del stora programvaruprojekt har finansierats som del av en företagsstrategi, till exempel var X Window System och OpenOffice.org viktiga för Unix-företag. Många maskinvarutillverkare använder fri programvara antingen för att minska utvecklingskostnaderna eller för att vinna goodwill i vissa kundgrupper och finansierar då utvecklingsarbetet genom försäljning av apparaterna.

Affärsmodeller med fri programvara baseras ofta på att lägga till värde ("value add") såsom användarstöd, utbildning, integration eller anpassning. Det kan också handla om behovsstyrd nyutveckling där de som behöver en viss funktion betalar utvecklingen, vilken andra sedan kan ta del av och bygga vidare på. Ett exempel är Münchens Linux-projekt LiMux[5] där kommunen genom normalt anbudsförfarande beställde programvara som skulle ersätta Windows-installationerna, men krävde att programvaran skulle vara fri. Den mesta programvaran fanns tillgänglig, men behövde en del kompletteringar och justeringar. Genom att programvaran är fri kan förbättringarna fogas till den ursprungliga kodbasen, varvid de dels kommer andra till del, dels underhålls inom de ursprungliga projekten.

De fyra friheterna

Fri programvara är datorprogram vilka kan sträcka sig från större programvaror som operativsystem, till mindre tillämpningsprogram som mobilappar. Dessa fria programvaror ska uppfylla kriterierna för FSF:s definition av de fyra friheterna. Fria programvara säkerställer att användare har:[6]

  • Frihet 0: Friheten att köra programmet som du önskar, för ett godtyckligt syfte.
  • Frihet 1: Friheten att studera hur programmet fungerar och att anpassa det för sina behov. Tillgång till källkoden är ett villkor för detta.
  • Frihet 2: Friheten att vidaredistribuera kopior så att användaren kan hjälpa sin nästa.
  • Frihet 3: Friheten att förbättra programmet och att ge sina förbättringar till allmänheten så att hela samhället drar nytta. Tillgång till källkoden är ett villkor för detta.

Vid 1990-talets början existerade alla friheter utom 'Frihet 0'. Den har sedan dess lagts till som just noll, och därmed först, då den ses som den mest fundamentala av FSF.[7]

FOSS

FOSS är en förkortning för free and open source software och benämns även F/OSS eller FLOSS (Free/Libre/Open Source Software). FOSS avser programvara som är licensierad på ett sådant sätt att användare har rätt att utnyttja de fyra friheterna genom tillgång till programmets källkod.[8] Termen är i praktiken synonym med "fri programvara", men undviker explicit att ta ställning i konflikten mellan den termen och termen öppen källkod.

Se även

Källor

Externa länkar

Media som används på denna webbplats