Kratke informacije o gnu projektu. Šta je GNU i GPL? UNIX-ovi koje isporučuju proizvođači računara

Originalno objavljeno u knjizi Otvoreni izvori. Richard Stallman je bio, ali je doprinio ovom članku kako ideje pokreta slobodnog softvera ne bi u potpunosti izostale iz te knjige.

Prva zajednica za dijeljenje softvera

Kada sam 1971. počeo raditi u Laboratoriji za umjetnu inteligenciju MIT-a, postao sam dio zajednice za dijeljenje softvera koja je postojala mnogo godina. Dijeljenje softvera nije bilo ograničeno na našu posebnu zajednicu; staro je koliko i kompjuteri, baš kao što je deljenje recepata staro koliko i kuvanje. Ali uradili smo to više od većine.

AI Lab je koristio operativni sistem za dijeljenje vremena nazvan ITS (Incompatible Timesharing System) koji su hakeri iz laboratorije (1) dizajnirali i napisali na asemblerskom jeziku za Digital PDP-10, jedan od velikih kompjutera tog doba. Kao član ove zajednice, haker sistema osoblja AI Lab-a, moj posao je bio da poboljšam ovaj sistem.

Naš softver nismo nazvali „slobodnim softverom“, jer taj termin još nije postojao; ali tako je bilo. Kad god su ljudi sa drugog univerziteta ili kompanije željeli prenijeti i koristiti program, rado smo im to dozvolili. Ako ste vidjeli da neko koristi nepoznat i zanimljiv program, uvijek možete tražiti da vidite izvorni kod, kako biste ga mogli pročitati, promijeniti ili kanibalizirati njegove dijelove kako biste napravili novi program.

(1) Upotreba „hakera“ u značenju „probijača sigurnosti“ predstavlja zabunu od strane masovnih medija. Mi hakeri odbijamo da prepoznamo to značenje i nastavljamo da koristimo reč da znači nekoga ko voli da programira, nekoga ko uživa u razigranoj pameti ili kombinaciju to dvoje. Pogledajte moj članak, O hakiranju.

Kolaps zajednice

Situacija se drastično promijenila početkom 1980-ih kada je Digital ukinuo PDP-10 seriju. Njegova arhitektura, elegantna i moćna 60-ih, nije se mogla prirodno proširiti na veće adresne prostore koji su postali izvodljivi 80-ih. To je značilo da su skoro svi programi koji čine ITS zastarjeli.

Hakerska zajednica AI Lab-a već je propala, nedugo prije toga. Godine 1981., spin-off kompanija Symbolics unajmila je gotovo sve hakere iz AI Lab-a, a depopulacija zajednica nije bila u stanju da se održi. (Knjiga Hakeri, Steve Levyja, opisuje ove događaje, kao i daje jasnu sliku ove zajednice u njenom vrhuncu.) Kada je AI Lab kupio novi PDP-10 1982. godine, njeni administratori su odlučili da koriste Digital" nebesplatni sistem deljenja vremena umesto ITS-a.

Moderni računari tog doba, kao što su VAX ili 68020, imali su svoje operativne sisteme, ali nijedan od njih nije bio slobodan softver: morali ste potpisati ugovor o neotkrivanju podataka čak i da biste dobili izvršnu kopiju.

To je značilo da je prvi korak u korištenju kompjutera bio obećanje da nećete pomoći komšiji. Zabranjena je zajednica koja sarađuje. Pravilo koje su postavili vlasnici vlasničkog softvera glasilo je: „Ako dijeliš sa komšijom, ti si pirat. Ako želite bilo kakve promjene, molite nas da ih napravimo.”

Ideja da je društveni sistem vlasničkog softvera – sistem koji kaže da vam nije dozvoljeno da delite ili menjate softver – antisocijalan, da je neetički, da je jednostavno pogrešan, može biti iznenađenje za neke čitaoce. Ali šta bismo drugo mogli reći o sistemu zasnovanom na podjeli javnosti i držanju korisnika bespomoćnim? Čitaoci koji smatraju da je ideja iznenađujuća možda su prihvatili društveni sistem vlasničkog softvera kao datost ili su ga ocijenili prema uslovima koje su predložile kompanije za vlasnički softver. Izdavači softvera su dugo i naporno radili kako bi uvjerili ljude da postoji samo jedan način da se sagleda problem.

Kada izdavači softvera govore o “provođenju” svojih “prava” ili “zaustavljanju piraterije”, ono što oni zapravo reci je sekundarno. Prava poruka ovih izjava je u neizrečenim pretpostavkama koje uzimaju zdravo za gotovo, a koje se od javnosti traži da prihvati bez ispitivanja. Stoga ih ispitajmo.

Jedna od pretpostavki je da softverske kompanije imaju neupitno prirodno pravo da posjeduju softver i tako imaju moć nad svim njegovim korisnicima. (Kada bi ovo bilo prirodno pravo, onda, bez obzira na to koliko štete nanosi javnosti, ne bismo mogli prigovoriti.) Zanimljivo je da Ustav SAD i pravna tradicija odbacuju ovo gledište; Autorsko pravo nije prirodno pravo, već vještački monopol koji je nametnula vlada i koji ograničava prirodno pravo korisnika na kopiranje.

Još jedna neizrečena pretpostavka je da je jedina važna stvar u vezi sa softverom koje poslove vam omogućava da radite – da nas korisnike računara nije briga kakvo nam je društvo dozvoljeno.

Treća pretpostavka je da ne bismo imali upotrebljiv softver (ili nikada ne bismo imali program za obavljanje ovog ili onog posla) da ne bismo ponudili moć kompanije nad korisnicima programa. Ova pretpostavka je možda izgledala uvjerljivo, prije nego što je pokret slobodnog softvera pokazao da možemo napraviti mnogo korisnog softvera bez stavljanja lanaca na njega.

Ako odbijemo da prihvatimo ove pretpostavke i sudimo o ovim pitanjima na osnovu običnog zdravorazumskog morala stavljajući korisnike na prvo mjesto, dolazimo do vrlo različitih zaključaka. Korisnici računara bi trebali biti slobodni da modifikuju programe kako bi odgovarali njihovim potrebama i slobodni da dijele softver, jer je pomaganje drugim ljudima osnova društva.

Oštar moralni izbor

Pošto je moja zajednica nestala, bilo je nemoguće nastaviti po starom. Umjesto toga, suočio sam se sa oštrim moralnim izborom.

Lak izbor je bio da se pridružim svetu vlasničkih softvera, potpisujući ugovore o neotkrivanju podataka i obećavajući da neću pomagati svom kolegi hakeru. Najvjerovatnije bih također razvijao softver koji je objavljen u skladu sa ugovorima o tajnosti podataka, čime bi se povećao pritisak na druge ljude da izdaju i svoje kolege.

Mogao sam zaraditi novac na ovaj način, i možda se zabaviti pisanjem koda. Ali znao sam da ću se na kraju karijere osvrnuti na godine izgradnje zidova kako bi podijelili ljude, i osjećao sam da sam proveo život čineći svijet gorim mjestom.

Već sam iskusio da sam primio ugovor o neotkrivanju podataka, kada je neko odbio da meni i MIT AI Lab-u da izvorni kod za kontrolni program za naš štampač. (Nedostatak određenih funkcija u ovom programu koji je koristio štampač je izuzetno frustrirajući.) Tako da nisam mogao sebi reći da su ugovori o neotkrivanju nevini. Bio sam veoma ljut kada je odbio da podeli sa nama; Nisam mogao da se okrenem i uradim isto svima drugima.

Drugi izbor, jednostavan, ali neprijatan, bio je da napusti kompjutersko polje. Na taj način moje vještine ne bi bile zloupotrebljene, ali bi i dalje bile potrošene. Ne bih bio kriv za podjelu i ograničavanje korisnika računara, ali bi se to ipak dogodilo.

Zato sam tražio način na koji programer može učiniti nešto za dobro. Pitao sam se da li postoji neki program ili programi koje bih mogao napisati, kako bih ponovo omogućio zajednicu?

Odgovor je bio jasan: prvo je bio potreban operativni sistem. To je ključni softver za početak korištenja računara. Sa operativnim sistemom možete učiniti mnoge stvari; bez njega, ne možete uopšte pokrenuti računar. Sa besplatnim operativnim sistemom, ponovo bismo mogli imati zajednicu hakera koji sarađuju – i pozvati bilo koga da se pridruži. I svako bi mogao da koristi kompjuter, a da ne krene u zavjeru da liši svoje prijatelje.

Kao programer operativnog sistema, imao sam prave vještine za ovaj posao. Dakle, iako uspjeh nisam mogao uzeti zdravo za gotovo, shvatio sam da sam izabran da radim taj posao. Odlučio sam da sistem učinim kompatibilnim sa Unixom kako bi bio prenosiv i kako bi korisnici Unixa mogli lako preći na njega. Ime GNU je odabrano, slijedeći tradiciju hakera, kao rekurzivni akronim za „GNU"s Not Unix." Izgovara se kao jedan slog sa tvrdim g.

Operativni sistem ne znači samo jezgro, jedva dovoljno za pokretanje drugih programa. Tokom 1970-ih, svaki operativni sistem dostojan tog imena uključivao je komandne procesore, asemblere, kompajlere, tumače, otklanjanje grešaka, uređivače teksta, mejlere i još mnogo toga. ITS ih je imao, Multics ih je imao, VMS ih je imao, a Unix ih je imao. GNU operativni sistem bi ih također uključio.

Kasnije sam čuo ove riječi, pripisane Hillelu (1):

Ako ja nisam za sebe, ko će biti za mene?
Ako sam samo za sebe, šta sam ja?
Ako ne sada, kada?

Odluka o pokretanju GNU projekta bila je zasnovana na sličnom duhu.

(1) Kao ateista, ne pratim nijednog vjerskog vođu, ali ponekad otkrijem da se divim nečemu što je jedan od njih rekao.

Slobodno kao u slobodi

Termin „slobodni softver“ se ponekad pogrešno razume – nema nikakve veze sa cenom. Radi se o slobodi. Evo, dakle, definicije slobodnog softvera.

Program je besplatan softver, za vas, određenog korisnika, ako:

  • Imate slobodu pokretanja programa kako želite, za bilo koju svrhu.
  • Imate slobodu da modifikujete program tako da odgovara vašim potrebama. (Da bi ova sloboda bila efektivna u praksi, morate imati pristup izvornom kodu, jer je unošenje izmjena u program bez izvornog koda izuzetno teško.)
  • Imate slobodu da distribuirate kopije, bilo besplatno ili uz naknadu.
  • Imate slobodu da distribuirate modifikovane verzije programa, tako da zajednica može imati koristi od vaših poboljšanja.

Budući da se „besplatno“ odnosi na slobodu, a ne na cijenu, ne postoji kontradikcija između prodaje kopija i slobodnog softvera. U stvari, sloboda prodaje kopija je ključna: kolekcije slobodnog softvera koji se prodaju na CD-ROM-ovima važne su za zajednicu, a njihova prodaja je važan način prikupljanja sredstava za razvoj slobodnog softvera. Stoga, program koji ljudi ne mogu slobodno uključiti u ove kolekcije nije besplatan softver.

Zbog dvosmislenosti „besplatno“, ljudi su dugo tražili alternative, ali niko nije našao bolji termin. Engleski jezik ima više riječi i nijansi nego bilo koji drugi, ali mu nedostaje jednostavna, nedvosmislena riječ koja znači „slobodan“, kao u slobodi – „nesputan“ je riječ koja je najbliža značenju. Alternative kao što su “oslobođeno”, “sloboda” i “otvoreno” imaju ili pogrešno značenje ili neki drugi nedostatak.

GNU softver i GNU sistem

Razvoj čitavog sistema je veoma veliki projekat. Kako bih ga doveo do izražaja, odlučio sam prilagoditi i koristiti postojeće dijelove slobodnog softvera gdje god je to bilo moguće. Na primjer, odlučio sam na samom početku koristiti TeX kao glavni formater teksta; nekoliko godina kasnije, odlučio sam da koristim X Window System umjesto da pišem drugi prozorski sistem za GNU.

Zbog ovih odluka, i drugih sličnih njima, GNU sistem nije isti kao zbirka svih GNU softvera. GNU sistem uključuje programe koji nisu GNU softver, programe koje su razvili drugi ljudi i projekte za svoje potrebe, ali koje možemo koristiti jer su slobodni softver.

Komuniciranje projekta

U januaru 1984. dao sam otkaz na MIT-u i počeo pisati GNU softver. Napuštanje MIT-a bilo je neophodno kako MIT ne bi mogao ometati distribuciju GNU-a kao slobodnog softvera. Da sam ostao u osoblju, MIT bi mogao tvrditi da posjeduje djelo, i mogao bi nametnuti svoje uvjete distribucije, ili čak pretvoriti djelo u vlasnički softverski paket. Nisam imao namjeru da radim veliku količinu posla samo da bih vidio da postaje beskorisno za namjeravanu svrhu: stvaranje nove zajednice za dijeljenje softvera.

Međutim, profesor Winston, tada šef laboratorije MIT AI, ljubazno me pozvao da nastavim koristiti prostorije laboratorije.

Prvi koraci

Neposredno prije početka GNU projekta, čuo sam za Free University Compiler Kit, također poznat kao VUCK. (Holandska riječ za "besplatno" napisana je sa a v.) Ovo je bio kompajler dizajniran da rukuje više jezika, uključujući C i Pascal, i da podržava više ciljnih mašina. Pisao sam njegovom autoru pitajući ga može li ga GNU koristiti.

On je odgovorio podrugljivo, rekavši da je univerzitet besplatan, ali kompajler nije. Stoga sam odlučio da moj prvi program za GNU projekat bude višejezični, multiplatformski kompajler.

U nadi da ću izbjeći potrebu da osobno napišem cijeli kompajler, nabavio sam izvorni kod za Pastel kompajler, koji je bio višeplatformski kompajler razvijen u Lawrence Livermore Lab. Podržan je i napisan je u proširenoj verziji Pascal-a, dizajniranom da bude sistemski programski jezik. Dodao sam C front end i počeo da ga prenosim na Motorola 68000 računar. Ali morao sam odustati od toga kada sam otkrio da je kompajleru potrebno mnogo megabajta prostora na steku, a raspoloživi 68000 Unix sistem dozvoljava samo 64k.

Tada sam shvatio da je Pastel kompajler funkcionirao tako što je analizirao cijeli ulazni fajl u stablo sintakse, pretvarao cijelo sintaktično stablo u lanac „instrukcija“, a zatim generirao cijelu izlaznu datoteku, bez oslobađanja ikakvog prostora za skladištenje. U ovom trenutku, zaključio sam da ću morati pisati novi kompajler od nule. Taj novi kompajler je sada poznat kao GCC; u njemu se ne koristi nijedan Pastel kompajler, ali sam uspeo da prilagodim i koristim C front end koji sam napisao. Ali to je bilo nekoliko godina kasnije; prvo, radio sam na GNU Emacsu.

GNU Emacs

Počeo sam raditi na GNU Emacsu u septembru 1984., a početkom 1985. počeo je biti upotrebljiv. Ovo mi je omogućilo da počnem da koristim Unix sisteme za uređivanje; bez interesa da naučim da koristim vi ili ed, do tada sam uređivao na drugim vrstama mašina.

U ovom trenutku, ljudi su počeli htjeti koristiti GNU Emacs, što je postavilo pitanje kako ga distribuirati. Naravno, stavio sam ga na anonimni ftp server na MIT računaru koji sam koristio. (Ovaj kompjuter, prep.ai.mit.edu, je tako postao glavno GNU ftp distributivno mjesto; kada je nekoliko godina kasnije stavljen iz upotrebe, prenijeli smo ime na naš novi ftp server.) Ali u to vrijeme, mnogi od zainteresiranih ljudi nisu bili na internetu i nisu mogli dobiti kopiju preko ftp-a. Dakle, pitanje je bilo šta bih im rekao?

Mogao sam da kažem: “Nađi prijatelja koji je na mreži i koji će ti napraviti kopiju.” Ili sam mogao učiniti ono što sam učinio s originalnim PDP-10 Emacs-om: reći im: “Pošalji mi kasetu i SASE, a ja ću je poslati poštom s Emacs-om.” Ali nisam imao posao i tražio sam načine da zaradim novac od besplatnog softvera. Zato sam najavio da ću poslati kasetu onome ko je želi, uz naknadu od 150 dolara. Na taj način sam započeo posao distribucije slobodnog softvera, preteče kompanija koje danas distribuiraju čitave distribucije GNU/Linux sistema.

Je li program besplatan za svakog korisnika?

Ako je program slobodan softver kada napusti ruke svog autora, to ne znači da će biti slobodan softver za svakoga ko ima njegovu kopiju. Na primjer, softver u javnom domenu (softver koji nije zaštićen autorskim pravima) je slobodan softver; ali svako može napraviti njegovu vlasnički modificiranu verziju. Isto tako, mnogi besplatni programi su zaštićeni autorskim pravima, ali se distribuiraju pod jednostavnim dopuštenim licencama koje dozvoljavaju vlasničke modificirane verzije.

Paradigmatski primjer ovog problema je X Window System. Razvijen na MIT-u i objavljen kao besplatni softver sa dopuštenom licencom, ubrzo su ga usvojile razne kompjuterske kompanije. Dodali su X svojim vlasničkim Unix sistemima, samo u binarnom obliku, i pokriveni istim ugovorom o tajnosti. Ove kopije X-a nisu bile ništa više slobodni softver od Unixa.

Programeri X Window sistema nisu ovo smatrali problemom – očekivali su i namjeravali da se to dogodi. Njihov cilj nije bila sloboda, već samo “uspjeh”, definiran kao “imanje mnogo korisnika”. Nije im bilo važno da li ovi korisnici imaju slobodu, samo da ih ima mnogo.

To je dovelo do paradoksalne situacije u kojoj su dva različita načina brojanja slobode dala različite odgovore na pitanje „Da li je ovaj program besplatan?“ Ako sudite na osnovu slobode koju pružaju uslovi distribucije MIT izdanja, rekli biste da je X slobodan softver. Ali ako biste mjerili slobodu prosječnog korisnika X-a, morali biste reći da je to vlasnički softver. Većina korisnika X koristila je vlasničke verzije koje su dolazile sa Unix sistemima, a ne besplatnu verziju.

Copyleft i GNU GPL

Cilj GNU-a je bio da korisnicima pruži slobodu, a ne samo da budu popularni. Stoga smo morali koristiti uslove distribucije koji bi spriječili GNU softver da se pretvori u vlasnički softver. Metoda koju koristimo zove se “copyleft”.(1)

Copyleft koristi zakon o autorskim pravima, ali ga preokreće kako bi služio suprotno od svoje uobičajene svrhe: umjesto sredstva za ograničavanje programa, on postaje sredstvo za održavanje programa slobodnim.

Centralna ideja copyleft-a je da svima dajemo dozvolu za pokretanje programa, kopiranje programa, modificiranje programa i distribuciju modificiranih verzija—ali ne i dozvolu za dodavanje vlastitih ograničenja. Stoga su ključne slobode koje definišu „slobodni softver“ zagarantovane svima koji imaju kopiju; postaju neotuđiva prava.

Za efikasan copyleft, modificirane verzije također moraju biti besplatne. Ovo osigurava da rad zasnovan na našem postane dostupan našoj zajednici ako se objavi. Kada se programeri koji imaju posao programera dobrovoljno jave da poboljšaju GNU softver, copyleft sprečava njihove poslodavce da kažu: “Ne možete dijeliti te promjene, jer ćemo ih koristiti da napravimo našu vlasničku verziju programa.”

Zahtjev da promjene moraju biti besplatne je od suštinskog značaja ako želimo osigurati slobodu svakom korisniku programa. Kompanije koje su privatizovale X Window System obično su napravile neke promjene kako bi ga prenijele na svoje sisteme i hardver. Ove promjene su bile male u poređenju sa velikim opsegom X, ali nisu bile trivijalne. Da je unošenje izmjena izgovor za uskraćivanje slobode korisnika, bilo bi lako za svakoga da iskoristi taj izgovor.

Srodno pitanje se tiče kombinovanja slobodnog programa sa neslobodnim kodom. Takva kombinacija bi neizbježno bila neslobodna; koje slobode nedostaju neslobodnom dijelu nedostajale bi i cjelini. Dopuštanje takvih kombinacija otvorilo bi dovoljno veliku rupu da potopi brod. Stoga, ključni zahtjev za copyleft je da se zapuši ova rupa: sve što se dodaje ili kombinuje sa copyleft programom mora biti takvo da je veća kombinovana verzija također besplatna i copyleftovana.

Specifična implementacija copyleft-a koju koristimo za većinu GNU softvera je GNU General Public License, ili skraćeno GNU GPL. Imamo i druge vrste copylefta koji se koriste u određenim okolnostima. GNU priručnici su također kopirani, ali koriste mnogo jednostavniju vrstu copylefta, jer složenost GNU GPL-a nije neophodna za priručnike.(2)

(1) Godine 1984. ili 1985. Don Hopkins (veoma maštovit momak) mi je poslao pismo. Na koverti je napisao nekoliko zabavnih izreka, uključujući i ovu: "Copyleft - sva prava obrnuta." Koristio sam riječ “copyleft” da imenujem koncept distribucije koji sam razvijao u to vrijeme.

Zaposleni Free Software Foundation napisali su i održavali niz GNU softverskih paketa. Dvije značajne su C biblioteka i shell. GNU C biblioteka je ono što svaki program koji radi na GNU/Linux sistemu koristi za komunikaciju sa Linuxom. Razvio ga je član osoblja Fondacije za slobodni softver, Roland McGrath. Ljuska koja se koristi na većini GNU/Linux sistema je BASH, Bourne Again Shell(1), koju je razvio Brian Fox, zaposlenik FSF-a.

Finansirali smo razvoj ovih programa jer GNU projekat nije bio samo alati ili razvojno okruženje. Naš cilj je bio kompletan operativni sistem, a ovi programi su bili potrebni za taj cilj.

(1) “Bourne Again Shell” je igra s imenom “Bourne Shell”, što je bila uobičajena ljuska na Unixu.

Besplatna softverska podrška

Filozofija slobodnog softvera odbacuje specifičnu raširenu poslovnu praksu, ali nije protiv poslovanja. Kada preduzeća poštuju slobodu korisnika, želimo im uspjeh.

Prodaja kopija Emacsa demonstrira jednu vrstu poslovanja sa slobodnim softverom. Kada je FSF preuzeo taj posao, trebao mi je drugi način da zaradim za život. Našao sam to u prodaji usluga u vezi sa besplatnim softverom koji sam razvio. Ovo je uključivalo podučavanje, za predmete kao što su kako programirati GNU Emacs i kako prilagoditi GCC, i razvoj softvera, uglavnom prenošenje GCC-a na nove platforme.

Danas svaku od ovih vrsta poslova slobodnog softvera praktikuju brojne korporacije. Neki distribuiraju zbirke besplatnog softvera na CD-ROM-u; drugi prodaju podršku na nivoima u rasponu od odgovaranja na pitanja korisnika, popravljanja grešaka, do dodavanja velikih novih funkcija. Čak počinjemo da viđamo kompanije za slobodni softver zasnovane na lansiranju novih proizvoda slobodnog softvera.

Pazite, međutim, – brojne kompanije koje se povezuju sa pojmom „otvoreni kod“ zapravo zasnivaju svoje poslovanje na neslobodnom softveru koji radi sa slobodnim softverom. To nisu kompanije slobodnog softvera, to su vlasničke softverske kompanije čiji proizvodi odvlače korisnike od slobode. Ove programe nazivaju „paketima s dodanom vrijednošću“, što pokazuje vrijednosti koje bi željeli da usvojimo: udobnost iznad slobode. Ako više cijenimo slobodu, trebali bismo ih nazvati paketima „oduzetim slobodom“.

Tehnički ciljevi

Glavni cilj GNU-a je da bude slobodan softver. Čak i da GNU nije imao tehničku prednost u odnosu na Unix, imao bi društvenu prednost, omogućavajući korisnicima da sarađuju, i etičku prednost, poštujući slobodu korisnika.

Ali bilo je prirodno primijeniti poznate standarde dobre prakse na rad – na primjer, dinamičko dodjeljivanje struktura podataka kako bi se izbjegla proizvoljna fiksna ograničenja veličine i rukovanje svim mogućim 8-bitnim kodovima gdje god je to imalo smisla.

Pored toga, odbacili smo fokus Unixa na malu veličinu memorije, tako što smo odlučili da ne podržavamo 16-bitne mašine (bilo je jasno da će 32-bitne mašine biti norma do trenutka kada je GNU sistem završen) i da se ne trudimo kako bi se smanjila upotreba memorije osim ako ne prelazi megabajt. U programima za koje rukovanje vrlo velikim datotekama nije bilo presudno, ohrabrili smo programere da pročitaju cijeli ulazni fajl u jezgru, a zatim skeniraju njegov sadržaj bez brige o I/O.

Ove odluke su omogućile mnogim GNU programima da nadmaše svoje Unix kolege u pouzdanosti i brzini.

Donirani kompjuteri

Kako je reputacija GNU projekta rasla, ljudi su počeli nuditi da projektu doniraju mašine koje koriste Unix. Ovo je bilo veoma korisno, jer je najlakši način da se razviju komponente GNU-a da se to uradi na Unix sistemu, i da se komponente tog sistema zamene jednom. Ali oni su pokrenuli etičko pitanje: da li je ispravno da uopšte imamo kopiju Unixa.

Unix je bio (i jeste) vlasnički softver, a filozofija GNU projekta je govorila da ne treba koristiti vlasnički softver. Ali, primjenjujući isto rezonovanje koje dovodi do zaključka da je nasilje u samoodbrani opravdano, zaključio sam da je bilo legitimno koristiti vlasnički paket kada je to bilo ključno za razvoj besplatne zamjene koja bi pomogla drugima da prestanu koristiti vlasnički paket.

Ali, čak i da je ovo bilo opravdano zlo, ipak je bilo zlo. Danas više nemamo nijednu kopiju Unixa, jer smo ih zamijenili besplatnim operativnim sistemima. Ako nismo mogli zamijeniti operativni sistem mašine besplatnim, umjesto toga zamijenili smo mašinu.

GNU lista zadataka

Kako je GNU projekat napredovao, i sve veći broj komponenti sistema je pronađen ili razvijen, na kraju je postalo korisno napraviti listu preostalih praznina. Koristili smo ga da regrutiramo programere da napišu delove koji nedostaju. Ova lista je postala poznata kao GNU Task List. Pored nedostajućih Unix komponenti, naveli smo razne druge korisne softverske i dokumentacijske projekte za koje smo mislili da bi zaista kompletan sistem trebao imati.

Danas (1), jedva da je bilo koja Unix komponenta ostala na GNU listi zadataka — ti poslovi su obavljeni, osim nekoliko nebitnih. Ali lista je puna projekata koje bi neki mogli nazvati "aplikacijama". Bilo koji program koji se dopada više od uske klase korisnika bio bi korisna stvar za dodavanje operativnom sistemu.

Čak su i igre uključene na listu zadataka—i postoje od početka. Unix je uključivao igre, tako da bi naravno trebao i GNU. Ali kompatibilnost nije bila problem za igre, tako da nismo pratili listu igara koje je Unix imao. Umjesto toga, naveli smo spektar različitih vrsta igara koje bi se korisnicima mogle svidjeti.

(1) To je napisano 1998. U 2009. više ne održavamo dugačku listu zadataka. Zajednica razvija besplatni softver toliko brzo da ne možemo čak ni pratiti sve. Umjesto toga, imamo listu projekata visokog prioriteta, mnogo kraću listu projekata koje zaista želimo potaknuti ljude da pišu.

GNU biblioteka GPL

GNU C biblioteka koristi posebnu vrstu copyleft-a zvanu Opšta javna licenca GNU biblioteke(1), koja daje dozvolu za povezivanje vlasničkog softvera sa bibliotekom. Zašto praviti ovaj izuzetak?

To nije stvar principa; ne postoji princip koji kaže da vlasnički softverski proizvodi imaju pravo da uključuju naš kod. (Zašto doprinositi projektu zasnovanom na odbijanju dijeljenja s nama?) Upotreba LGPL-a za C biblioteku, ili za bilo koju biblioteku, je stvar strategije.

C biblioteka radi generički posao; svaki vlasnički sistem ili kompajler dolazi sa C bibliotekom. Stoga, učiniti našu C biblioteku dostupnom samo slobodnom softveru, slobodnom softveru ne bi dalo nikakvu prednost – to bi samo obeshrabrilo upotrebu naše biblioteke.

Jedan sistem je izuzetak od ovoga: na GNU sistemu (a ovo uključuje GNU/Linux), GNU C biblioteka je jedina C biblioteka. Dakle, uslovi distribucije GNU C biblioteke određuju da li je moguće kompajlirati vlasnički program za GNU sistem. Ne postoji etički razlog da se dozvole vlasničke aplikacije na GNU sistemu, ali strateški se čini da bi njihovo zabranjivanje učinilo više da obeshrabruje upotrebu GNU sistema nego da podstakne razvoj besplatnih aplikacija. Zato je korištenje biblioteke GPL dobra strategija za C biblioteku.

Za ostale biblioteke, stratešku odluku treba razmotriti od slučaja do slučaja. Kada biblioteka radi poseban posao koji može pomoći u pisanju određenih vrsta programa, onda je izdavanje pod GPL-om, ograničavajući ga samo na besplatne programe, način da se pomogne drugim programerima slobodnog softvera, dajući im prednost u odnosu na vlasnički softver.

Uzmite u obzir GNU Readline, biblioteku koja je razvijena da omogući uređivanje u komandnoj liniji za BASH. Readline je objavljen pod uobičajenim GNU GPL, a ne Library GPL. Ovo vjerovatno smanjuje količinu koju Readline koristi, ali to nije gubitak za nas. U međuvremenu, barem jedna korisna aplikacija je napravljena kao besplatni softver posebno kako bi mogla koristiti Readline, a to je pravi dobitak za zajednicu.

Programeri vlasničkog softvera imaju prednosti koje novac pruža; programeri slobodnog softvera moraju da naprave prednosti jedni za druge. Nadam se da ćemo jednog dana imati veliku kolekciju biblioteka pokrivenih GPL-om koje nemaju paralelu sa vlasničkim softverom, pružajući korisne module koji će služiti kao gradivni blokovi u novom slobodnom softveru i predstavljati veliku prednost za dalji razvoj slobodnog softvera.

(1) Ova licenca se sada zove GNU-ova manja opšta javna licenca, kako bi se izbjegla ideja da bi sve biblioteke trebale da je koriste. Pogledajte Zašto ne biste trebali koristiti manji GPL za svoju sljedeću biblioteku za više informacija.

Češete svrab?

Eric Raymond kaže da “Svaki dobar rad na softveru počinje češanjem ličnog svraba programera.” Možda se to ponekad i dešava, ali mnogi suštinski delovi GNU softvera su razvijeni da bi imali kompletan besplatni operativni sistem. Oni dolaze iz vizije i plana, a ne iz impulsa.

Na primjer, razvili smo GNU C biblioteku zato što je sistemu sličan Unixu potrebna C biblioteka, BASH jer je sistemu sličan Unixu potrebna ljuska, a GNU tar jer je sistemu sličan Unixu potreban tar program. Isto važi i za moje programe—GNU C kompajler, GNU Emacs, GDB i GNU Make.

Neki GNU programi su razvijeni da se nose sa specifičnim prijetnjama našoj slobodi. Stoga smo razvili gzip da zamenimo program Compress, koji je za zajednicu bio izgubljen zbog LZW patenata. Pronašli smo ljude koji su razvili LessTif, a nedavno smo pokrenuli GNOME i Harmony, kako bi riješili probleme uzrokovane određenim vlasničkim bibliotekama (pogledajte dolje). Razvijamo GNU Privacy Guard da zamijeni popularni neslobodni softver za šifriranje, jer korisnici ne bi trebali birati između privatnosti i slobode.

Naravno, ljudi koji su pisali ove programe su se zainteresovali za rad, a mnoge funkcije su im dodali razni ljudi zarad svojih potreba i interesa. Ali ne postoje programi zato.

Neočekivani razvoj događaja

Na početku GNU projekta, zamišljao sam da ćemo razviti cijeli GNU sistem, a zatim ga objaviti kao cjelinu. Nije se to tako dogodilo.

Pošto je svaka komponenta GNU sistema implementirana na Unix sistemu, svaka komponenta je mogla da radi na Unix sistemima mnogo pre nego što je postojao kompletan GNU sistem. Neki od ovih programa postali su popularni, a korisnici su počeli da ih proširuju i prenose - na različite nekompatibilne verzije Unixa, a ponekad i na druge sisteme.

Proces je učinio ove programe mnogo moćnijim i privukao je i sredstva i doprinose GNU projektu. Ali to je vjerovatno također odložilo završetak minimalnog radnog sistema za nekoliko godina, jer je vrijeme GNU programera uloženo u održavanje ovih portova i dodavanje karakteristika postojećim komponentama, umjesto da se pređe na pisanje jedne komponente koja nedostaje.

GNU Hurd

Do 1990. GNU sistem je bio skoro gotov; jedina glavna komponenta koja nedostaje je jezgro. Odlučili smo da implementiramo naše jezgro kao kolekciju serverskih procesa koji rade na Mach-u. Mach je mikrokernel razvijen na Univerzitetu Carnegie Mellon, a zatim na Univerzitetu Utah; GNU Hurd je kolekcija servera (tj. krdo GNU-a) koji rade na vrhu Macha i obavljaju različite poslove Unix kernela. Početak razvoja je odgođen jer smo čekali da Mach bude pušten kao besplatan softver, kao što je bilo obećano.

Jedan od razloga za odabir ovog dizajna bio je izbjegavanje onoga što se činilo najtežim dijelom posla: otklanjanje grešaka u programu kernela bez debagera na nivou izvora koji bi to mogao obaviti. Ovaj dio posla je već obavljen, u Machu, i očekivali smo da ćemo debugovati Hurd servere kao korisničke programe, sa GDB-om. Ali bilo je potrebno dosta vremena da se to omogući, a pokazalo se da je višenitnih servera koji šalju poruke jedni drugima veoma teško otkloniti greške. Omogućavanje da Hurd radi solidno je trajalo mnogo godina.

Alix

GNU kernel nije prvobitno trebalo da se zove Hurd. Njegovo originalno ime bilo je Alix – ime je dobilo po ženi koja mi je u to vrijeme bila draga. Ona, Unix sistem administrator, istakla je kako bi njeno ime odgovaralo uobičajenom obrascu imenovanja za verzije Unix sistema; u šali je rekla svojim prijateljima: „Neko bi trebao nazvati jezgro po meni.“ Nisam rekao ništa, ali sam odlučio da je iznenadim kernelom po imenu Alix.

Nije tako ostalo. Michael (sada Thomas) Bushnell, glavni programer kernela, preferirao je ime Hurd i redefinirao Alix da se odnosi na određeni dio kernela – dio koji bi uhvatio sistemske pozive i upravljao njima slanjem poruka Hurd serverima.

Kasnije smo Alix i ja raskinuli, a ona je promijenila ime; nezavisno, Hurd dizajn je promenjen tako da bi C biblioteka slala poruke direktno serverima, što je učinilo da Alix komponenta nestane iz dizajna.

Ali prije nego što su se te stvari dogodile, njena prijateljica je naišla na ime Alix u izvornom kodu Hurda i spomenula joj ga. Tako da je imala priliku da pronađe jezgro nazvano po njoj.

Linux i GNU/Linux

GNU Hurd nije pogodan za proizvodnu upotrebu, i ne znamo da li će ikada biti. Dizajn zasnovan na mogućnostima ima probleme koji su direktno rezultat fleksibilnosti dizajna i nije jasno da li postoje rešenja.

Srećom, još jedan kernel je dostupan. Godine 1991. Linus Torvalds je razvio kernel kompatibilan sa Unixom i nazvao ga Linux. U početku je bio vlasnički, ali 1992. ga je napravio slobodnim softverom; kombinovanje Linuxa sa ne baš potpunim GNU sistemom rezultiralo je kompletnim besplatnim operativnim sistemom. (Naravno, njihovo kombinovanje je samo po sebi bio značajan posao.) Zbog Linuxa danas zapravo možemo pokrenuti verziju GNU sistema.

Izazovi u našoj budućnosti

Dokazali smo našu sposobnost da razvijemo širok spektar slobodnog softvera. To ne znači da smo nepobjedivi i nezaustavljivi. Nekoliko izazova čini budućnost slobodnog softvera neizvjesnom; Za njihovo postizanje će biti potreban uporni napor i izdržljivost, ponekad i godinama. To će zahtijevati vrstu odlučnosti koju ljudi pokazuju kada cijene svoju slobodu i neće dozvoliti nikome da je oduzme.

Sljedeća četiri odjeljka razmatraju ove izazove.

Tajni hardver

Proizvođači hardvera sve više teže čuvanju hardverskih specifikacija u tajnosti. Ovo otežava pisanje besplatnih drajvera tako da Linux i XFree86 mogu podržavati novi hardver. Danas imamo kompletne besplatne sisteme, ali ih sutra nećemo imati ako ne možemo da podržimo sutrašnje računare.

Postoje dva načina da se nosite s ovim problemom. Programeri mogu raditi obrnuti inženjering kako bi shvatili kako podržati hardver. Mi ostali možemo izabrati hardver koji je podržan besplatnim softverom; kako se naš broj bude povećavao, tajnost specifikacija će postati samoporažavajuća politika.

Obrnuti inženjering je veliki posao; hoćemo li imati programere sa dovoljno odlučnosti da to preduzmu? Da—ako smo izgradili snažan osjećaj da je besplatni softver stvar principa i da su neslobodni upravljački programi nepodnošljivi. I hoće li veliki broj nas potrošiti dodatni novac, ili čak malo dodatnog vremena, da bismo mogli koristiti besplatne vozače? Da, ako je odlučnost da se ima sloboda široko rasprostranjena.

(Napomena iz 2008: ovaj problem se proteže i na BIOS. Postoji besplatni BIOS, LibreBoot (distribucija coreboot-a); problem je dobijanje specifikacija za mašine tako da ih LibreBoot može podržati bez neslobodnih „blobova“.)

Neslobodne biblioteke

Neslobodna biblioteka koja radi na besplatnim operativnim sistemima djeluje kao zamka za programere slobodnog softvera. Privlačne karakteristike biblioteke su mamac; ako koristite biblioteku, upadaćete u zamku, jer vaš program ne može biti korisno deo besplatnog operativnog sistema. (Strogo govoreći, mogli bismo da uključimo vaš program, ali neće trči s nedostatkom biblioteke.) Još gore, ako program koji koristi vlasničku biblioteku postane popularan, može namamiti druge nesuđene programere u zamku.

Prva instanca ovog problema bio je komplet alata Motif, još 80-ih. Iako još nije bilo besplatnih operativnih sistema, bilo je jasno kakav će im problem Motif kasnije uzrokovati. GNU projekat je odgovorio na dva načina: tražeći od pojedinačnih projekata slobodnog softvera da podrže besplatne X Toolkit widgete kao i Motif, i tražeći da neko napiše besplatnu zamjenu za Motif. Posao je trajao mnogo godina; LessTif, koji su razvili Hungry Programmers, postao je dovoljno moćan da podrži većinu Motif aplikacija tek 1997. godine.

Između 1996. i 1998., druga neslobodna biblioteka GUI alata, nazvana Qt, korišćena je u značajnoj kolekciji besplatnog softvera, desktop KDE.

Besplatni GNU/Linux sistemi nisu mogli koristiti KDE, jer nismo mogli koristiti biblioteku. Međutim, neki komercijalni distributeri GNU/Linux sistema koji nisu bili strogi u vezi sa slobodnim softverom dodali su KDE svojim sistemima – proizvodeći sistem sa više mogućnosti, ali manje slobode. KDE grupa je aktivno ohrabrivala više programera da koriste Qt, a milioni novih “Linux korisnika” nikada nisu bili izloženi ideji da u tome postoji problem. Situacija je izgledala mračna.

Zajednica slobodnog softvera odgovorila je na problem na dva načina: GNOME i Harmony.

GNOME, GNU Network Object Model Environment, je GNU-ov desktop projekat. Započeo je 1997. godine Miguel de Icaza, a razvio ga uz podršku Red Hat Software-a, GNOME je namjeravao obezbijediti slične mogućnosti desktopa, ali koristeći isključivo besplatni softver. ima i tehničke prednosti, kao što je podrška za razne jezike, ne samo za C++, ali njegova glavna svrha je bila sloboda: da ne zahtijeva upotrebu bilo kakvog neslobodnog softvera.

Harmony je kompatibilna zamjenska biblioteka, dizajnirana da omogući pokretanje KDE softvera bez korištenja Qt-a.

Novembra 1998. programeri Qt-a su najavili promjenu licence koja bi, kada se izvrši, trebala učiniti Qt besplatnim softverom. Ne postoji način da budemo sigurni, ali mislim da je to djelomično bilo zbog čvrstog odgovora zajednice na problem koji je Qt postavio kada je bio neslobodan. (Nova licenca je nezgodna i nepravedna, pa je i dalje poželjno izbjegavati korištenje Qt.)

Kako ćemo odgovoriti na sljedeću primamljivu neslobodnu biblioteku? Hoće li cijela zajednica shvatiti potrebu da se kloni zamke? Ili će se mnogi od nas odreći slobode radi pogodnosti i stvoriti veliki problem? Naša budućnost zavisi od naše filozofije.

Softverski patenti

Najgora prijetnja s kojom se suočavamo dolazi od softverskih patenata, koji mogu staviti algoritme i funkcije van granica slobodnog softvera do dvadeset godina. Patenti za LZW algoritam kompresije prijavljeni su 1983. i još uvijek ne možemo izdati besplatni softver za proizvodnju ispravnog komprimovanog GIF-a. Godine 1998., besplatni program za proizvodnju MP3 kompresovanog zvuka uklonjen je iz distribucije pod prijetnjom patentne tužbe.

Postoje načini da se nosimo sa patentima: možemo tražiti dokaze da je patent nevažeći i možemo tražiti alternativne načine za obavljanje posla. Ali svaka od ovih metoda djeluje samo ponekad; kada oba ne uspiju, patent može natjerati sav slobodan softver da nema neke funkcije koje korisnici žele. Nakon dugog čekanja, patenti ističu (očekuje se da će MP3 patenti isteći do 2018. godine), ali šta ćemo do tada?

Oni od nas koji cijene slobodan softver radi slobode ionako će ostati pri slobodnom softveru. Uspjet ćemo obaviti posao bez patentiranih funkcija. Ali oni koji cijene slobodni softver jer očekuju da je tehnički superiorniji vjerovatno će ga nazvati neuspjeh kada ga patent koči. Dakle, iako je korisno govoriti o praktičnoj djelotvornosti „čaršijskog“ modela razvoja, te o pouzdanosti i moći nekog slobodnog softvera, ne smijemo stati na tome. Moramo razgovarati o sloboda i princip.

Besplatna dokumentacija

Najveći nedostatak u našim besplatnim operativnim sistemima nije u softveru – to je nedostatak dobrih besplatnih priručnika koje možemo uključiti u naše sisteme. Dokumentacija je bitan dio svakog softverskog paketa; kada važan besplatni softverski paket ne dolazi sa dobrim besplatnim priručnikom, to je velika praznina. Danas imamo mnogo takvih praznina.

Besplatna dokumentacija, kao i besplatni softver, pitanje je slobode, a ne cijene. Kriterijum za besplatni priručnik je prilično isti kao i za besplatni softver: radi se o tome da se svim korisnicima daju određene slobode. Redistribucija (uključujući komercijalnu prodaju) mora biti dozvoljena, online i na papiru, tako da priručnik može pratiti svaki primjerak programa.

Dozvola za modifikacije je također ključna. Općenito, ne vjerujem da je bitno da ljudi imaju dozvolu za modifikaciju svih vrsta članaka i knjiga. Na primjer, mislim da nismo dužni davati dozvolu za modificiranje članaka poput ovog , koji opisuju naše postupke i naše stavove.

Ali postoji poseban razlog zašto je sloboda modifikacije ključna za dokumentaciju slobodnog softvera. Kada ljudi iskoriste svoje pravo da modifikuju softver i dodaju ili promene njegove karakteristike, ako su savesni, promeniće i priručnik—kako bi mogli da obezbede tačnu i upotrebljivu dokumentaciju sa izmenjenim programom. Neslobodni priručnik, koji ne dozvoljava programerima da budu savjesni i završe posao, ne ispunjava potrebe naše zajednice.

Neke vrste ograničenja načina na koji se modifikacije rade ne predstavljaju problem. Na primjer, zahtjevi za očuvanjem napomene o autorskim pravima originalnog autora, uvjeti distribucije ili lista autora su u redu. Također nije problem zahtijevati da modificirane verzije uključuju obavještenje da su izmijenjene, čak i da imaju čitave dijelove koji ne mogu se brisati ili mijenjati, sve dok se ovi odjeljci bave netehničkim temama. Ovakve vrste ograničenja nisu problem jer ne sprječavaju savjesnog programera da prilagodi priručnik kako bi odgovarao modificiranom programu. Drugim riječima, oni ne blokiraju zajednicu slobodnog softvera da u potpunosti koristi priručnik.

Međutim, mora biti moguće izmijeniti sve tehnički sadržaj priručnika, a zatim distribuirati rezultat u svim uobičajenim medijima, svim uobičajenim kanalima; u suprotnom, ograničenja opstruiraju zajednicu, priručnik nije besplatan i treba nam još jedan priručnik.

Hoće li programeri slobodnog softvera imati svijest i odlučnost da proizvedu cijeli spektar besplatnih priručnika? Još jednom, naša budućnost zavisi od filozofije.

Moramo razgovarati o slobodi

Danas se procjenjuje da postoji deset milijuna korisnika GNU/Linux sistema kao što su Debian GNU/Linux i Red Hat “Linux”. Besplatni softver je razvio takve praktične prednosti da ga korisnici hrle iz čisto praktičnih razloga.

Dobre posljedice ovoga su evidentne: više interesa za razvoj slobodnog softvera, više kupaca za poslove sa slobodnim softverom i više mogućnosti podsticanja kompanija da razvijaju komercijalni besplatni softver umjesto vlasničkih softverskih proizvoda.

Ali interesovanje za softver raste brže od svesti o filozofiji na kojoj se zasniva, a to dovodi do problema. Naša sposobnost da odgovorimo na gore opisane izazove i prijetnje zavisi od volje da se čvrsto zalažemo za slobodu. Kako bismo bili sigurni da naša zajednica ima tu volju, moramo proširiti ideju na nove korisnike kako dođu u zajednicu.

Ali mi to ne uspijevamo: napori da privučemo nove korisnike u našu zajednicu daleko nadmašuju napore da ih naučimo građanskom ponašanju naše zajednice. Moramo učiniti oboje, i moramo održati ravnotežu ta dva napora.

"Open Source"

Podučavanje novih korisnika o slobodi postalo je teže 1998. godine, kada je dio zajednice odlučio da prestane koristiti termin “slobodni softver” i umjesto toga kaže “softver otvorenog koda”.

Neki koji su favorizovali ovaj izraz nastojali su da izbjegnu zabunu "besplatno" sa "gratis" - valjan cilj. Drugi su, međutim, imali za cilj da ostave po strani duh principa koji je motivirao pokret slobodnog softvera i GNU projekat, i umjesto toga apeliraju na rukovodioce i poslovne korisnike, od kojih mnogi drže ideologiju koja stavlja profit iznad slobode, iznad zajednice, iznad princip Dakle, retorika „otvorenog koda“ fokusira se na potencijal za pravljenje visokokvalitetnog, moćnog softvera, ali se kloni ideja slobode, zajednice i principa.

“Linux” časopisi su jasan primjer za to – puni su reklama za vlasnički softver koji radi sa GNU/Linuxom. Kada se pojavi sljedeći Motif ili Qt, hoće li ovi časopisi upozoriti programere da ga se klone ili će za njega postaviti reklame?

Podrška poslovanja može doprinijeti zajednici na mnogo načina; ako je sve ostalo jednako, korisno je. Ali pridobiti njihovu podršku govoreći još manje o slobodi i principima može biti pogubno; to čini prethodnu neravnotežu između terenskog i građanskog obrazovanja još gorom.

“Besplatni softver” i “otvoreni kod” opisuju istu kategoriju softvera, manje-više, ali govore različite stvari o softveru i vrijednostima. GNU projekat nastavlja da koristi termin „slobodni softver“, da izrazi ideju da je sloboda, a ne samo tehnologija, važna.

Pokušajte!

Yodin aforizam („Ne postoji „pokušaj““) zvuči uredno, ali meni ne ide. Odradio sam većinu svog posla dok sam bio zabrinut da li bih mogao da obavim posao, i nisam siguran da bi to bilo dovoljno da postignem cilj ako bih to uradio. Ali ipak sam pokušao, jer između neprijatelja i mog grada nije bilo nikoga osim mene. Iznenađujući sebe, ponekad sam uspio.

Ponekad nisam uspio; neki od mojih gradova su pali. Onda sam našao još jedan ugrožen grad i spremio se za još jednu bitku. Vremenom sam naučio da tražim pretnje i da se stavljam između njih i svog grada, pozivajući druge hakere da mi se pridruže.

Danas, često nisam jedini. Olakšanje je i radost kada vidim puk hakera koji kopaju da održe liniju, i shvatim da ovaj grad može preživjeti—za sada. Ali opasnosti su sve veće. godine, a sada je Microsoft eksplicitno ciljao na našu zajednicu. Budućnost slobode ne možemo uzeti zdravo za gotovo. Ne uzimajte to zdravo za gotovo! Ako želite da sačuvate svoju slobodu, morate biti spremni da je branite.

OSNOVNI STANDARDI

UNIX-ovi koje isporučuju proizvođači računara

Auto operativni sistem "Original"
ned 1,2,10, ... SunOS 4.1.2 BSD 4.3
Ned 10,20,1000 SunOS 5.5 SVR4.0
IBM RS/6000 AIX SV 3.2
HP Apollo 900 HP/UX 10 BSD 4.2 & SV 3.2
Sequent Dynix SV 4.0
Motorola 922 SVR4/88 SVR4.0
Besta-88 Bestix SV 3.1
DEC Ultrix BSD 4.2
DEC Alpha AXP OSF/1 BSD 4.3
SGCS Silicon Graphic IRIX 6.0

Odabirom platforme, automatski dobijamo "svoj" UNIX sa njom. Možda je, sa stanovišta pogodnosti i integriteta korisničkog i administratorskog okruženja, najprijatniji od njih AIX. A najčešći je Solaris 2.5 (prirodno).

Upravo je pojava komercijalnih implementacija Unixa dovela do takozvanih Unix ratova. Svaka od kompanija je, u nastojanju da postigne superiornost na tržištu, u svoj sistem uključila neke karakteristike, svoje modifikacije i poboljšanja, ponekad čak i sa direktnim ciljem da svoj sistem razlikuje od ostalih na tržištu. Razvojne kompanije, u svojim nastojanjima da steknu prednost u odnosu na konkurente, unosile su promjene čak i u interfejs za programiranje aplikacije(API- Applications Programmer's Interface), - specifikacija skupa funkcija sa kojima se moraju pridržavati programeri softvera kako bi njihovi programi bili kompatibilni sa operativnim sistemom. To je dodatno povećalo nekompatibilnost različitih verzija Unixa i dovelo do nekompatibilnosti softvera razvijen od strane različitih (uključujući nezavisne) dobavljača.

Ali mnogo gora posljedica ratova između različitih verzija Unixa bila je to što je okončana besplatna razmjena izvornog koda koja je tako olakšala brzo poboljšanje Unixa u ranim fazama njegovog razvoja. Bez drugog modela za profit od softvera osim čuvanja tajne i potpune kontrole nad razvojem komercijalnog proizvoda, AT&T je strogo zabranio distribuciju izvornog koda. Pretnja sudskim procesom zbog ilegalne distribucije Unix traka nije bila privlačna. Tok novih ideja sa univerziteta je prestao.

Da bi se prevazišao ovaj problem, učinjeno je nekoliko pokušaja da se standardizuje Unix.

Prvi ozbiljan pokušaj standardizacije verzija API-ja (programskog interfejsa) razvijenih za System V i Berkeley preduzela je 1983. inicijativna grupa pod nazivom /usr/group. Međutim, kako je broj verzija operativnog sistema rastao, efikasnost standarda je opadala, a godinu dana kasnije, 1985. godine, stvoren je POSIX standard (Portable Operating System Interface for Computing Environment).



Godine 1988. razvijen je standard POSIX 1003.1-1988, koji je definisao interfejs za programiranje aplikacije. Ovaj standard se široko koristi u mnogim operativnim sistemima, uključujući arhitekture koje nisu UNIX. Dve godine kasnije, standard je usvojen kao IEEE (Institut elektrotehničkih i elektronskih inženjera, koji još uvek postoji) standard IEEE 1003.1-1990. Standard definiše samo interfejs, a ne specifičnu organizaciju, tako da ne pravi razliku između sistemskih poziva i bibliotečkih funkcija, pozivajući sve elemente programskog interfejsa jednostavno funkcijama.

Svi kasniji Unix standardi uključuju POSIX, a sve naredne verzije Unixa se pridržavaju ovog standarda. Jedini veći dodatak koji se kasnije pojavio u jezgru Unixa bili su soketi, koji su došli iz BSD-a.

Neprofitna organizacija, konzorcij X/Open (kasnije Open Group), koju su 1984. godine stvorile brojne evropske kompanije, preuzela je zadatak razvoja zajedničkog skupa interfejsa operativnog sistema, dogovorenog između različitih proizvođača, i kreiranja istinski otvoreni sistemi za koje bi troškovi prenosivosti aplikacija bili minimalni.

Godine 1992. pojavio se dokument poznat kao X/OpenPortable Guide verzija 3 (XPG3), koji je uključivao POSIX 1003.1-1988 i X Windows sistem grafički standard razvijen na Massachusetts Institute of Technology (SAD). 1994. - XPG4.2.

1996. spajanje X/Open i OSF dovelo je do stvaranja konzorcijuma The Open Group, koji je nastavio razvoj u oblasti otvorenih sistema, na primjer, dalji razvoj korisničkog interfejsa Common Desktop Environment, interfejsa za distribuirano računarstvo. okruženje Distributed Computing Environment - DCE, itd.

(Američki nacionalni institut za standarde)

Godine 1989., Američki nacionalni institut za standarde odobrio je standard X3.159-1989 za programski jezik C. Standard definira sintaksu, semantiku i sadržaj standardne biblioteke.

GNU je udruženje programera koji kreiraju besplatne programe raznih vrsta.

GNU je projekat koji je stvorio mnoge besplatne programe kao dio svoje strategije otvorenog koda.

Štaviše, ovi programi mogu sve - od rada sa fajlovima do obrade tekstova, a gcc kompajler (GNU C) je jedan od najpouzdanijih i najefikasnijih kompajlera za UNIX. Ovo omogućava opremiti gotovo svaki UNIX sličan OS besplatnim softverom.

Šta je GNU/Linux?

Pošto je Linux samo kernel, takva oprema je neophodna. Kernel je odgovoran za rad sa memorijom, diskovima i internim uređajima, ali, na primjer, nema uređivač teksta. Ali može pokrenuti i druge programe. Stoga, dopuna besplatnog kernela skupom besplatnih programa izgleda vrlo prirodno. Rezultat je GNU/Linux tandem.

"Skraćenica GNU je skraćenica za "GNU nije UNIX" (GNU - Not UNIX). Glavna ideja koja stoji iza razvoja GNU sistema je njegova potpuna razlika od UNIX-a. UNIX je uvijek bio i ostao vlasnički softver, odnosno lišava sloboda njegovih korisnika da sarađuju kao i kontrolu nad našim računarima. Da bismo postali slobodna računarska zajednica, trebao nam je besplatan operativni sistem. Nismo imali dovoljno novca da otkupimo i učinimo bilo koji od postojećih sistema besplatnim, ali smo " Imali smo dovoljno znanja i vještina da stvorimo novi. Stvaranje GNU-a je bilo monumentalno djelo. Uradili smo to u ime naše slobode, ai vaše."

Godine 1985. R. Stallman je napisao svoj čuveni GNU Manifest (objavljen je u izdanju Dr. Dobb's Journala iz marta 1985.) i osnovao Free Software Foundation (FSF), dobrotvornu fondaciju za razvoj slobodnog softvera. distribuirao Emacs trake i kasnije je počeo isporučivati ​​drugi besplatni softver (nastao i unutar i izvan GNU projekta) i prodavati priručnike za njih, što je obezbjeđivalo sredstva za razvoj GNU projekta. FSF je prihvatao donacije, ali je većina prihoda uvijek dolazila od prodaje kopija slobodnog softvera i srodnih usluga.

Razvoj slobodnog softvera bio je veoma važan korak, ali još važnije je stvaranje GNU Opšte javne licence (GPL). Ovaj naziv na ruski prevode različiti autori na različite načine - Opšta javna licenca, Opšta javna licenca itd. Ali vjeruje se da Samo engleska verzija ove licence je pravno obavezujuća. Osnovna ideja GPL-a je da korisnik mora imati sljedeća četiri prava (ili četiri slobode):

· Pravo pokretanja programa za bilo koju svrhu (sloboda 0)

· Pravo proučavanja strukture programa i prilagođavanja je svojim potrebama (sloboda 1), što podrazumijeva pristup izvornom kodu programa.

· Pravo na distribuciju programa, uz mogućnost pomoći drugima (sloboda 2).

· Pravo na poboljšanje programa i objavljivanje poboljšanja za dobrobit cijele zajednice (sloboda 3), što podrazumijeva i pristup izvornom kodu programa.

Softver koji se distribuira pod ovom licencom može se koristiti, kopirati, modificirati, modificirati, prenijeti ili prodati izmijenjene (ili neizmijenjene) verzije drugima na bilo koji način, pod uslovom da se rezultat takve obrade također distribuira pod GPL licencom. Poslednji uslov je najvažniji i odlučujući u ovoj dozvoli. Osigurava da rezultati napora programera slobodnog softvera ostanu otvoreni i da ne postanu dio bilo kojeg konvencionalno licenciranog proizvoda. Takođe razlikuje besplatni softver od softvera koji se besplatno distribuira. Jedan od uslova ove licence je da kada prodajete softver sa GPL licencom, morate učiniti izvorni kod tog softvera dostupnim svima koji žele da mu pristupe. Prema riječima kreatora FSF-a, GPL licenca "čini softver besplatnim i osigurava da će ostati besplatan."

Glavni cilj GPL-a je zaštita slobodnog softvera od "privatizacije". Ali treba napomenuti da je osmišljen na način da omogući sve “poštene” načine zarađivanja novca od besplatnog softvera, što je veoma značajna tačka na koju treba obratiti posebnu pažnju. Kada se prvi put upoznate sa GPL-om, možda ćete imati zabludu da ova licenca općenito zabranjuje bilo koji način zarađivanja novca od softvera ili njegovog razvoja. U stvari, GPL posebno i FSF općenito direktno ohrabruju kompanije koje se odnose na pružanje srodnih usluga – obuku, savjetovanje i komercijalnu replikaciju softvera. To nam omogućava da u saradnju privučemo i korporacije i ljude kojima su materijalni interesi važniji od moralnih podsticaja.

Svaki korisnik koji je počeo da razumije svijet operativnih sistema nalik UNIX-u i slobodnog softvera vjerovatno će naići na skraćenice u naslovu.

GNU je skraćenica za "GNU nije UNIX" i odnosi se na projekat velikih razmera u okviru kojeg se razvijaju različite sistemske biblioteke i aplikacije. Sve kreirano u okviru ovog projekta je otvorenog koda. To znači da svako sa odgovarajućim znanjem programiranja može koristiti ovaj kod kao osnovu za vlastiti razvoj, s punim pravom da ga mijenja i distribuira.

Softverski proizvodi razvijeni u okviru projekta, dopunjeni jezgrom GNU Hard sistema, činili su osnovu punopravnog operativnog sistema, koji je takođe označen terminom GNU. Ali njegovo stvaranje, započeto 1990. godine, do danas nije završeno. Ali 1991. godine pojavila se zamisao Linusa Torvaldsa - Linux kernel. Ovde je GNU projekat odigrao ogromnu ulogu u razvoju Linuxa kao operativnog sistema. Na kraju krajeva, sistem nije samo kernel, već i integralni set sistemskog softvera, uključujući biblioteke, uslužne programe, drajvere i još mnogo toga. I upravo su razvoji učesnika GNU-a, koji su korišćeni u sprezi sa jezgrom Linuxa, otkrili svetu sam proizvod koji se sada uspešno takmiči sa Windows-om i MacOS-om. I zove se “GNU/Linux”, a prvi dio se najčešće odbacuje, što je u opštem slučaju pogrešno.

Pored softvera, GNU projekat je stvorio Opću javnu licencu (GNU GPL), koja je postala glavna licenca u svijetu otvorenog koda i bila je široko korištena. Reguliše distribuciju slobodnog softvera i izuzetno je demokratski. Navodi da svaki korisnik ima pravo da modificira, distribuira i koristi u svojim projektima izvorni kod aplikacija obuhvaćenih ovom licencom. U isto vrijeme, svi pomoćni programi će također biti predmet GPL-a. Odnosno, programer koji koristi open source proizvodi i open source, pa se sama licenca nasljeđuje. Ovo je obavezno pravilo, ali postoje načini da zaobiđete GPL i zatvorite vlastite kodove na osnovu otvorenih kodova koji se koriste.

GNU i GPL koje je stvorio imali su veliki utjecaj na tehnološku industriju. Besplatni softver privukao je ogroman broj talentovanih programera u svoju industriju, čineći njenu najveću zajednicu. Proizvodi stvoreni pod GPL-om ne samo da su dobili široku praktičnu upotrebu, već su, zahvaljujući visokokvalitetnom i pristupačnom kodu, postali odličan teren za obuku za milione programera početnika. Koncept takve razmjene informacija i najglasnija alternativa tradicionalnim autorskim pravima, iako nije očigledan, omogućio je razvoj softvera i trenutno uzima maha.

GNU 3DLDF podržava 3D crtanje sa izlazom u MetaPost format preko jezika sličnog Metafontu. Prvenstveno je namijenjen da obezbijedi sredstva za kreiranje 3D sadržaja za TeX dokumente, ali takođe može kreirati animacije koje sadrže tekst koji je TeX pisao. (dok)

8sync

8sync (izgovara se eight-sync) je biblioteka asinhrone programiranja za GNU Guile. Koristi ograničene nastavke kako bi se izbjegao nered sa povratnim pozivima, što rezultira čistim, lako čitljivim kodom koji ne blokira. (dok)

a2ps

GNU a2ps konvertuje skoro sve u PostScript fajl, spreman za štampanje. To postiže tako što je u mogućnosti da delegira datoteke vanjskim rukovaocima, kao što su Groff i Gzip. Obrađuje onoliko koraka koliko je potrebno za izradu lijepo ispisane datoteke. Takođe uključuje neke dodatne mogućnosti za posebne slučajeve, kao što je lijepi ispis --help izlaz. (dok)

Acct

GNU acct pruža sredstvo za administratore sistema da odrede obrasce korištenja sistema. Pruža informacije o, na primjer, vezama, izvršenim programima i korištenim sistemskim resursima. (dok)

Acm

GNU ACM je simulator leta u kojem se igrači mogu takmičiti u zračnim borbama sa različitih kompjutera, pilotirajući dobro opremljenim mlaznim avionima sličnim F-16C Falconu ili MiG-29 Fulcrum. (dok)

Adns

GNU adns je C biblioteka koja pruža funkcionalnost DNS rezolucije laku za korištenje. Biblioteka je asinhrona i omogućava nekoliko istovremenih poziva. Paket takođe uključuje nekoliko uslužnih programa komandne linije za upotrebu u skriptama. (dok)

Živ

GNU Alive šalje periodične pingove na server, općenito da bi održao vezu živom. (dok)

Anubis

Anubis je demon koji se nalazi između korisničkog agenta za poštu (MUA) i agenta za prijenos pošte (MTA). Kada korisnik pošalje poštu u MUA-u, ona se prvo prosljeđuje Anubisu, koji vrši dodatnu obradu poruke prije nego što je proslijeđuje za isporuku od strane MTA. Anubis može, na primjer, izmijeniti zaglavlja ili tijelo poruke, ili šifrirati ili potpisati poruku. (dok)

APL

GNU APL je besplatni tumač za programski jezik APL. To je implementacija ISO standarda 13751. (doc)

Arhimed

Archimedes je besplatan paket za simulacije poluvodičkih uređaja. Namijenjen je da pomogne inženjerima u dizajniranju i simulaciji submikronskih i mezoskopskih poluvodičkih uređaja zasnovanih na metodi Ensemble Monte Carlo. U stanju je da rukuje širokim spektrom materijala i struktura koje su opisane jednostavnim skriptama. (dok)

Aris

Aris je program za izvođenje logičkih dokaza. Podržava propozicionu i predikatnu logiku, kao i Bulovu algebru i aritmetičku logiku. Pored unapred definisanih pravila zaključivanja i ekvivalencije, Aris takođe podržava reference na starije dokaze. Njegova upotreba standardnih logičkih simbola i njegovo prirodno sučelje dedukcije čine ga lakim za korištenje za početnike. (dok)

Artanis

GNU Artanis je okvir web aplikacije napisan u shemi Guile. Okvir web aplikacija (WAF) je softverski okvir koji je dizajniran da podrži razvoj dinamičkih web stranica, web aplikacija, web usluga i web resursa. Okvir ima za cilj da ublaži režijske troškove povezane sa uobičajenim aktivnostima koje se obavljaju u web razvoju. Artanis nudi nekoliko alata za web razvoj: pristup bazi podataka, okvire za šabloniranje, upravljanje sesijama, ponovno mapiranje URL-a za RESTful, keširanje stranica i još mnogo toga. (dok)

Aspell

Aspell je provjera pravopisa koji se može koristiti ili kao biblioteka ili kao samostalni program. Značajne karakteristike Aspell-a uključuju njegovu punu podršku za dokumente napisane u UTF-8 kodiranju i njegovu sposobnost da koristi više rečnika, uključujući i lične. (dok)

AUCTeX

AUCTeX je integrisano okruženje za proizvodnju TeX dokumenata u Emacsu. Omogućava umetanje mnogo različitih standardnih TeX makroa jednostavnim pritiskom na tipke ili odabirom menija. Nudi interfejs za eksterne programe, omogućavajući vam da sastavite ili pregledate svoje dokumente iz Emacsa. AUCTeX takođe ima mogućnost postavljanja inline pregleda složenih TeX izjava kao što su matematičke formule. (dok)

Autoconf

Autoconf nudi programeru robustan skup M4 makroa koji se proširuju u shell kod kako bi testirali karakteristike sistema sličnih Unixu i automatski prilagodili svoj softverski paket ovim sistemima. Rezultirajuće shell skripte su samostalne i prenosive, oslobađajući korisnika od potrebe da zna bilo šta o Autoconf ili M4. (dok)

Autoconf-archive

Autoconf Archive je kolekcija od preko 450 novih makroa za Autoconf, koji značajno proširuju domen njegove funkcionalnosti. Ovi makroi su dati kao besplatni softver od strane zajednice. (dok)

Autogen

AutoGen je program koji olakšava održavanje programa koji sadrže velike količine teksta koji se ponavlja. Automatizuje konstrukciju ovih delova koda, pojednostavljujući zadatak sinhronizacije teksta. Takođe uključuje paket dodataka pod nazivom AutoOpts, koji je specijalizovan za održavanje i dokumentovanje programskih opcija. (dok)

Automake

Automatski napravite dio GNU build sistema za proizvodnju Makefile-a usklađenih sa standardima. Zahtjevi za izgradnju se unose u intuitivnom formatu, a zatim Automake radi sa Autoconf-om kako bi proizveo robustan Makefile, pojednostavljujući cijeli proces za programera. (dok)

Avl

libavl pruža veliku kolekciju binarnog stabla pretraživanja i rutina uravnoteženog stabla za C. Ova stabla nude najmanje O(log n) performanse za obično skupe operacije kao što su pretraživanje, umetanje ili brisanje stavki iz strukture podataka. (dok)

Lopta i veslo

Ball and Paddle je klasična arkadna igra u kojoj koristite veslo na dnu ekrana da odbijete loptu o cigle u gornjem dijelu, eliminirajući cigle kada ih udarite. Kao novi zaokret, događaji i atributi svih objekata (cigle, lopte, itd.) mogu biti skriptirani pomoću GNU Guilea. (dok)

Barkod

GNU Barcode je fleksibilan alat za proizvodnju odštampanih barkodova iz tekstualnih nizova. Podržava različite standarde kodiranja i mjerenja veličine. Barkodovi se mogu ispisati u PostScript ili Encapsulated PostScript formatu. (dok)

Bash

Bash je ljuska, ili interpreter komandne linije, GNU sistema. Kompatibilan je sa Bourne Shell-om, ali također integrira korisne karakteristike iz Korn Shell-a i C Shell-a te nova poboljšanja. Omogućava uređivanje u komandnoj liniji, neograničenu historiju komandi, funkcije ljuske i pseudonime i kontrolu poslova, dok i dalje dozvoljava pokretanje većine sh skripti bez modifikacija. (dok)

Bayonne

Bayonne je telefonski server projekta GNU Telephony. Nudi skalabilno okruženje za razvoj i implementaciju telefonskih rješenja, s fokusom na SIP. (dok)

Bazaar

GNU Bazaar je sistem kontrole verzija koji vam omogućava da snimite promjene projektnih datoteka tokom vremena. Podržava i distribuirani tok rada kao i klasični centralizirani tok posla. (dok)

bc je jezik za numeričku obradu proizvoljne preciznosti. Uključuje interaktivno okruženje za evaluaciju matematičkih iskaza. Njegova sintaksa je slična onoj u C-u, tako da je osnovna upotreba poznata. Takođe uključuje dc , kalkulator obrnutog poliranja. (dok)

B.F.D.

Binutils

GNU Binutils je kolekcija alata za rad sa binarnim datotekama. Možda su najistaknutiji ld, linker i as, asembler. Ostali alati uključuju programe za prikaz informacija o binarnom profiliranju, popis stringova u binarnoj datoteci i uslužne programe za rad sa arhivama. Uključena je i bfd biblioteka za rad sa izvršnim i objektnim formatima. (dok)

Bison

GNU Bison je generator parsera opće namjene. Može izgraditi deterministički ili generalizirani LR parser iz anotirane gramatike bez konteksta. Dovoljno je svestran da ima mnogo aplikacija, od parsera za jednostavne alate do složenih programskih jezika. (dok)

Bool

GNU Bool je uslužni program za obavljanje tekstualnih pretraga datoteka koristeći Booleove izraze. Na primjer, pretraga hello AND world bi vratila datoteku koja sadrži frazu Hello, world! . Podržava i izraze AND i OR, kao i naredbu NEAR za traženje pojavljivanja riječi u neposrednoj blizini jedna drugoj. Graciozno obrađuje kontekst, uzimajući u obzir nove redove i promjene pasusa. Takođe ima snažnu podršku za raščlanjivanje HTML datoteka. (dok)

BPEL2oWFN

GNU BPEL2oWFN prevodi web uslugu izraženu u jeziku za izvršavanje poslovnih procesa web usluge (WS-BPEL) u otvorenu mrežu radnog toka (oWFN). Može dodatno pretvoriti BPEL4Chor koreografiju u Petri Net model. Svojstva Petrijevih mreža mogu se efikasno analizirati, zahvaljujući upotrebi statičke analize kako bi modeli bili kompaktni. Dostupne su kontrole i analiza toka podataka, kao i osnovne provjere za zastoje i druga takva svojstva. (dok)

C-graf

GNU C-Graph je alat za demonstraciju teorije konvolucije. Stoga može poslužiti kao odlična pomoć studentima teorije signala i sistema u vizualizaciji procesa konvolucije. Umjesto da prisiljava učenika da piše kod, program nudi intuitivan interfejs sa interaktivnim dijalozima koji će ih voditi. (dok)

ccAudio

GNU ccAudio2 je prenosiva C++ klasa za rad sa audio podacima sa diska. Klase su i endian i svjesne sadržaja; Umjesto da tretira audio kao binarne podatke, ova biblioteka ga tretira kao niz uzoraka. Takođe može da obrađuje informacije o metapodacima. ccAudio2 podržava Sun audio, sirove uzorke i RIFF kodirane audio podatke. (dok)

CCd2cue

GNU ccd2cue je predprocesor za softver za narezivanje CD-a koji omogućava konverziju vlasničkog CCD formata u CUE format, koji je dobro podržan besplatnim softverom. Ove datoteke se obično distribuiraju sa CD slikama i koriste se za opisivanje kako su numere raspoređene na slici. (dok)

Ccide

GNU Ccide je generator koda tablice odluka za C jezik. Ovo pomaže da se izbjegnu lanci ugniježđenih if-else izraza kojima se ne može upravljati i skloni greškama. Umjesto toga, tablice odluka se unose u intuitivnom i lako čitljivom formatu, koji se zatim proširuje u prenosivi C kod. (dok)

ccRTP

GNU ccRTP je implementacija RTP-a, transportnog protokola u realnom vremenu iz IETF-a. Pogodan je i za servere velikog kapaciteta i za lične klijentske aplikacije. Fleksibilan je u svom dizajnu, što mu omogućava da funkcioniše kao okvir za okvir, a ne samo kao biblioteka za manipulaciju paketima. (dok)

ccScript

GNU ccScript3 je biblioteka za dodavanje izvršnog sistema virtuelne mašine za upotrebu sa/kao skriptni ili asemblerski jezik za sisteme vođene tranzicijom stanja u realnom vremenu. (dok)

Cflow

GNU cflow analizira C izvorne datoteke i proizvodi graf koji prikazuje kontrolni tok programa. Može prikazati graf u nekoliko stilova iu POSIX formatu ili u proširenom GNU formatu. cflow također uključuje glavni način za Emacs za ispitivanje dijagrama toka koje proizvodi. (dok)

Cgicc

GNU cgicc je ANSI-kompatibilna C++ biblioteka za pisanje CGI aplikacija, sa podrškom za FastCGI. Biblioteka podržava nekoliko funkcija, uključujući rukovanje i GET i POST podacima, rukovanje raznim tipovima podataka obrazaca i generisanje HTML-a u hodu. (dok)

Šah

GNU Chess je šahovska mašina. Omogućava vam da se takmičite protiv računara u igri šaha, bilo kroz podrazumevani terminalski interfejs ili preko eksternog vizuelnog interfejsa kao što je GNU XBoard. (dok)

Cim

Cim je GNU kompajler za Simula, prvi objektno orijentisani programski jezik. (dok)

Classpath

GNU Classpath pruža osnovne biblioteke za Java virtuelne mašine i kompajlere. Kompatibilan je sa velikim procentom jezičkih API specifikacija i pruža široku lepezu funkcionalnosti. (dok)

CLISP

GNU CLISP je implementacija ANSI Common Lisp-a. Common Lisp je objektno orijentisan funkcionalni programski jezik visokog nivoa. CLISP uključuje tumač, kompajler, program za otklanjanje grešaka i još mnogo toga. (dok)

Kombinujte

GNU kombinovanje radi na spajanju datoteka na osnovu zajedničkog ključa u hash tabeli. Može se smatrati sličnim, iako mnogo moćnijim od standardnog uslužnog programa za spajanje. Za razliku od join , bilo koji broj datoteka može se spojiti na osnovu pronađenih podudaranja. Kombinat takođe ima i druge napredne karakteristike, kao što je raščlanjivanje datuma i prelazak preko direktorijuma. (dok)

[u]Uobičajeni C++

GNU Common C++ je prenosivi, optimizirani okvir klasa za aplikacije s nitima, koji podržava istovremenu sinhronizaciju, međuprocesnu komunikaciju putem utičnica i različite metode za rukovanje podacima, kao što su serijalizacija i XML raščlanjivanje. Uključuje uCommon C++ biblioteku, manju reimplementaciju. (dok)

Složenost

GNU složenost pruža alate za pronalaženje procedura koje su zamršene, preduge ili na drugi način teško razumljive. Ovo može pomoći u učenju ili pregledavanju nepoznatog koda ili možda naglašavanju vlastitog koda koji se činio razumljivim kada ste ga napisali. (dok)

Config

Skripta config.guess pokušava pogoditi trostruki kanonski sistem, a config.sub potvrđuje i kanonikalizira. Oni se koriste kao dio konfiguracije u gotovo svim GNU paketima (i mnogim drugim). (dok)

Coreutils

GNU Coreutils uključuje sve osnovne alate komandne linije koji se očekuju u POSIX sistemu. Oni pružaju osnovne funkcije upravljanja datotekama, školjkama i tekstom GNU sistema. Većina ovih alata nudi proširenu funkcionalnost izvan one koja je opisana u POSIX standardu. (dok)

Cpio

GNU cpio kopira datoteke u ili iz cpio ili tar arhive. Zaista, mnogi formati su podržani, uključujući i stare formate. Format automatski određuje program i njime se rukuje na odgovarajući način. Nadalje, lokacija arhive nije bitna. To može biti druga datoteka na drajvu, traka ili podaci na cijevi. (dok)

Cppi

GNU Cppi obrađuje datoteke C izvornog koda kako bi pravilno uvukao direktive preprocesora kako bi odražavao njihovo ugniježđenje. Također vrši druge standardizacije, kao što je ispravljanje broja razmaka između direktiva i teksta koji ih slijedi. (dok)

CSSC

GNU CSSC obezbeđuje zamenu za stari Unix sistem kontrole izvornog koda SCCS. Ovo omogućava pristup starom kodu koji je još uvijek pod tim sistemom i migrira na moderne sisteme. (dok)

Cursynth

GNU cursynth je polifoni sintisajzer koji radi grafički u terminalu. Izgrađen je na potpuno funkcionalnom mehanizmu za subtraktivnu sintezu. Bilješke i promjene parametara mogu se unijeti preko MIDI-a ili tastature računara. (doc)

Dap

GNU Dap je statistički i grafički paket. Može čitati programe napisane za vlasnički statistički sistem SAS. Njegova sintaksa je slična, ali jednostavnija od C, čineći izvođenje većine zadataka relativno lakim, a istovremeno pruža napredne grafičke mogućnosti. (dok)

Datamash

Izvršite osnovne numeričke, tekstualne i statističke operacije na obični tekstualnim datotekama. Dizajniran za rad unutar standardnih cevovoda bez dodatnog koda. (dok)

DDD

GNU DDD, Data Display Debugger, je grafički front-end za otklanjanje grešaka iz komandne linije. Podržani su mnogi back-end debuggeri, posebno GNU debugger, GDB. Pored uobičajenih funkcija za otklanjanje grešaka, kao što je pregled izvornih datoteka, DDD ima dodatne grafičke, interaktivne karakteristike koje pomažu u otklanjanju grešaka. (dok)

ddrescue

GNU ddrescue je potpuno automatizirani alat za oporavak podataka. Kopira podatke iz jedne datoteke u drugu, radeći na spašavanju podataka u slučaju grešaka čitanja. Program također uključuje alat za manipuliranje njegovim log datotekama, koje se koriste za efikasnije obnavljanje podataka samo čitanjem potrebnih blokova. (dok)

DejaGnu

DejaGnu je okvir za testiranje softvera. U stvari, on služi kao front-end za sve testove napisane za program. Dakle, svaki program može imati više testnih paketa, kojima se onda upravlja pomoću jednog pojasa. (dok)

Denemo

GNU Denemo je uređivač muzičkih zapisa koji pruža zgodan interfejs za moćni program za graviranje muzike Lilypond. Muzika se može kucati pomoću kompjuterske tastature, puštati pomoću MIDI tastature ili čak unositi preko mikrofona spojenog na zvučnu karticu. Konačni proizvod je muzička nota kvaliteta publikacije koja se kontinuirano generiše u pozadini dok radite. (dok)

Dia

Dico

GNU Dico implementira fleksibilni poslužitelj rječnika i klijent prema RFC 2229 (DICT server). Može pristupiti bilo kojoj dostupnoj bazi podataka, bez obzira na format, zahvaljujući svojoj modularnoj strukturi. Novi moduli mogu biti napisani u C, Guile ili Python. Dico također uključuje klijenta komandne linije, koji se može koristiti za ispitivanje udaljenih baza podataka rječnika. (dok)

Diction

Paket koji pruža dvije klasične Unix komande, stil i dikciju. Dikcija se koristi za identifikaciju višeslojnih i često pogrešno korištenih fraza u tekstu. Stil umjesto toga analizira površinske aspekte pisanog djela, kao što su dužina rečenice i druge mjere čitljivosti. (dok)

Diffutils

GNU Diffutils je paket koji sadrži alate za pronalaženje razlika između datoteka. Naredba diff se koristi da pokaže kako se dvije datoteke razlikuju, dok cmp pokazuje pomake i brojeve redova gdje se razlikuju. diff3 vam omogućava da uporedite tri fajla. Konačno, sdiff nudi interaktivno sredstvo za spajanje dva fajla. (dok)

Dioniz

GNU Dionysus je zgodan sistem za brzo pronalaženje vrednosti matematičkih konstanti koje se koriste u nauci i inženjerstvu. Vrijednosti se mogu pretraživati ​​pomoću jednostavnog alata komandne linije, birajući između tri baze podataka: univerzalne konstante, atomski brojevi i konstante vezane za poluvodiče. (dok)

Direvent

Daemon koji nadgleda direktorije za događaje, kao što su kreiranje, brisanje ili modificiranje datoteka. Može pratiti različite skupove direktorija za različite događaje. Kada se otkrije događaj, direvent poziva određeni eksterni program sa informacijama o događaju, kao što je lokacija unutar sistema datoteka na kojoj se dogodio. Stoga, direvent pruža jednostavan način da se odmah reaguje ako se date datoteke podvrgnu promjenama, na primjer, za praćenje promjena u važnim sistemskim konfiguracijskim datotekama. (dok)

Dominion

GNU Dominion je simulacija svijeta za više igrača. U njemu svaki igrač vlada nacijom i mora održati svoju naciju suočen sa konkurencijom drugih igrača. Igrači moraju donositi političke, ekonomske, vojne i diplomatske odluke kako bi njihove nacije opstale. Ova igra je namijenjena da je igraju igrači koji imaju pristup istom kompjuterskom sistemu. (dok)

Easejs

ease.js je klasičan objektno orijentisan okvir za JavaScript, namenjen da eliminiše šablonski kod i olakša prelazak na JavaScript sa drugih objektno orijentisanih jezika. (dok)

Ed je uređivač teksta orijentisan na red: umesto da nudi pregled dokumenta, ed uređuje red po red. Može se izvršiti i interaktivno i putem shell skripti. Njegov način unosa komandi omogućava da se složeni zadaci izvode na automatizovan način. GNU ed nudi nekoliko proširenja u odnosu na standardni uslužni program. (dok)

EDMA

GNU EDMA je razvojno okruženje koje kombinuje ideje iz objektno orijentisanog programiranja i sistema baziranih na komponentama. Koristi se za izgradnju modularnih aplikacija koje se razvijaju, kao i komponenti za višekratnu upotrebu. EDMA pruža pogodno sredstvo za izgradnju objektno orijentisanih programa u C-u bez potrebe za C++. Takođe, ima jedinstven sistem komponenti, za razliku od drugih sistema baziranih na komponentama slobodnog softvera koji imitiraju dizajn vlasničkih parnjaka. Uključuje grafičkog čarobnjaka, gidfwizard, alat za pravljenje definicionih datoteka GNU EDMA interfejsa i za kreiranje skelet fajlova neophodnih za izgradnju EDMA klasa, i grafički pretraživač klasa, gecb. (dok)

Električni

GNU Electric je CAD program za projektovanje električnih kola, rukovanje prilagođenim IC rasporedom, šematskim crtežom i specifikacijama jezika za opis hardvera. Podržano je nekoliko CAD operacija, kao što su provjera pravila i simulacija. Mnogo različitih tipova dizajna može biti proizvedeno i uneseno ili izlazno u širokom spektru formata. (dok)

Emacs

GNU Emacs je proširiv i vrlo prilagodljiv uređivač teksta. Zasnovan je na Emacs Lisp interpreteru sa ekstenzijama za uređivanje teksta. Emacs je proširen u suštini na sva područja računarstva, što je dovelo do velikog niza paketa koji podržavaju, na primjer, e-poštu, IRC i XMPP poruke, proračunske tablice, uređivanje udaljenog servera i još mnogo toga. Emacs uključuje obimnu dokumentaciju o svim aspektima sistema, od osnovnog uređivanja do pisanja velikih Lisp programa. Ima punu Unicode podršku za skoro sve ljudske jezike. (dok)

Emacs-muse

Muse je autorsko i izdavačko okruženje za GNU Emacs. Podržava unos teksta u prikladnom formatu koji se lako uči. Kasnije, vaši dokumenti mogu biti objavljeni u nizu različitih formata, kao što su HTML, LaTeX ili PDF. Muse podržava projekte koji se sastoje od nekoliko dokumenata, koji su pravilno spojeni prema izlaznom formatu. (dok)

EMMS

EMMS je Emacs multimedijalni sistem. To je mali front-end koji može kontrolirati jedan od podržanih vanjskih playera. Dakle, podržava sve formate koje podržava vaš muzički plejer. Takođe podržava označavanje i upravljanje plejlistom, sve iza čistog i laganog korisničkog interfejsa. (dok)

Enscript

GNU Enscript je program za pretvaranje ASCII tekstualnih datoteka u PostScript, HTML ili RTF formate, koji se pohranjuju u datoteke ili odmah šalju na štampač. Takođe uključuje mogućnost da se izvrši isticanje sintakse za nekoliko različitih programskih jezika. (dok)

Fdisk

GNU fdisk pruža GNU verziju uobičajenog alata za particioniranje diska fdisk. fdisk se koristi za kreiranje i manipulaciju tabelama particija diska, i razumije niz različitih formata. (dok)

Ferret

GNU Ferret je grafički modeler podataka za paradigmu entitet/odnos. Može automatski kreirati relacijske šeme iz modela podataka i može se koristiti za generiranje SQL izraza na različitim dijalektima. (dok)

Findutils

Findutils isporučuje osnovne alate za pretraživanje direktorija datoteka GNU sistema. Sastoji se od dva primarna uslužna programa za pretraživanje: rekurzivno pronalazi datoteke u direktoriju prema datim kriterijima i locira datoteke u bazi podataka koje odgovaraju upitu. Uključena su dva pomoćna alata: updatedb ažurira bazu podataka imena datoteke i xargs se mogu koristiti za primjenu naredbi sa proizvoljno dugim argumentima. (dok)

FisicaLab

GNU FisicaLab je obrazovna aplikacija za rješavanje problema iz fizike. Njegov glavni cilj je omogućiti korisniku da se fokusira na koncepte fizike, ostavljajući po strani matematičke detalje. (dok)

Foliot

GNU Foliot je aplikacija za praćenje vremena provedenog u radu na projektima. (dok)

Fontopia

Fontopia je konzolni uređivač fontova koji je jednostavan za korištenje, baziran na tekstu. Koristi se za uređivanje fontova koje GNU/Linux koristi za prikaz teksta na tekstualnim terminalima. Fontopia radi na PSF 1 i 2, BDF, Code Paged (CP) fontovima i Raw fajlovima fontova. prijateljski uređivač glifova koji je jednostavan za korištenje i može lako promijeniti metriku fonta (npr. dužinu, širinu i visinu) i pretvoriti između različitih formata fonta. (doc)

Fontutils

GNU Fontutils je kolekcija programa za rukovanje fontovima. Bitmape se mogu izdvojiti iz skeniranih slika znakova, urediti i pretvoriti u fontove okvira. Općenito, Fontutils podržava formate fontova koje podržava TeX okruženje za postavljanje teksta, uključujući PostScript Type 1 fontove. (dok)

FreeDink

GNU FreeDink je besplatna i prenosiva re-implementacija motora za igranje uloga Dink Smallwood. Podržava ne samo originalne datoteke podataka igre, već podržava i modifikacije igara koje proizvodi korisnik ili D-Modove. U toj mjeri, uključuje i front-end za upravljanje svim vašim D-Modovima. (dok)

Besplatni UCS Outline fontovi

GNU FreeFont je kolekcija skalabilnih okvirnih fontova koji su pogodni za opštu upotrebu računara i za desktop izdavaštvo. Uključeni su serif, sans serif i monospace font, svi dostupni u TrueType i OpenType formatima. Fontovi podržavaju širok spektar znakova za mnoge različite sisteme pisanja i imaju odličnu pokrivenost matematičke notacije. (dok)

FreeIPMI

GNU FreeIPMI je kolekcija in-band i van-band IPMI softvera u skladu sa IPMI v1.5/2.0 specifikacijom. Ovi programi pružaju skup interfejsa za upravljanje platformom. Uobičajena funkcionalnost uključuje praćenje senzora, praćenje sistemskih događaja, kontrolu napajanja i serijski preko LAN-a. (dok)

Freetalk

GNU Freetalk je Jabber/XMPP klijent za ćaskanje sa komandne linije. Posebno koristi Readline biblioteku za rukovanje unosom, tako da ima zgodnu navigaciju po tekstu, kao i popunjavanje tabulatorima imena prijatelja, komandi i engleskih riječi. Također se može skriptirati i proširiti putem Guilea. Ovaj paket traži održavaoca. (dok)

FriBiDi

GNU FriBidi je implementacija Unicode dvosmjernog algoritma. Ovaj algoritam se koristi za pravilno prikazivanje teksta u redoslijedu slijeva nadesno ili zdesna nalijevo po potrebi. (dok)

G-Golf

G-Golf (Gnome: (Guile Object Library for)) je biblioteka za razvoj modernih aplikacija u Guile Scheme. Sastoji se od direktnog povezivanja sa GObject Introspection API-jem i funkcionalnosti višeg nivoa za uvoz Gnome biblioteka i omogućavanje GObject klasa (i metoda) dostupnih u Guileovom objektno orijentisanom programskom sistemu, GOOPS. (doc)

Gama

GNU Gama je program za prilagođavanje geodetskih mreža. Koristan je u mjerenjima gdje Global Positioning System (GPS) nije dostupan, kao što je pod zemljom. Sadrži mogućnost podešavanja u lokalnim kartezijanskim koordinatama, kao i delimičnu podršku za prilagođavanja u globalnim koordinatnim sistemima. (dok)

Besplatni ARP Daemon

GNU garpd emituje besplatne ARP (Address Resolution Protocol) zahtjeve/odgovore za listu MAC adresa<->Mapiranje IP adresa na određenim interfejsima u redovnim intervalima. Besplatni ARP paketi zahtjeva su oni kod kojih su i izvorna i odredišna IP adresa IP stroja koji traži. Besplatni ARP odgovori su oni bez odgovarajućeg zahtjeva. (dok)

Gawk

Gawk je GNU implementacija Awk-a, specijalizovanog programskog jezika za laku manipulaciju formatiranim tekstom, kao što su tabele podataka. Gawk ima mnoga proširenja izvan tradicionalne implementacije, uključujući pristup mreži, sortiranje i velike biblioteke. (dok)

Gbehistun

GNU Behistun se sastoji od softvera i uslužnih programa za geološko i geofizičko modeliranje i mapiranje unutrašnjih struktura i dinamike. Poput višejezičnog natpisa Behistun, softverski uslužni programi Behistun pružaju znanje i funkcionalnost za rad na planetarnim sistemima i istraživanje njihove unutrašnjosti u slobodi. (dok)

Gcal

Gcal je program za izračunavanje i štampanje kalendara na komandnoj liniji. Kalendari se mogu štampati u 1-mjesečnom, 3-mjesečnom ili cjelogodišnjem pregledu. Osim toga, za mnoge zemlje se mogu generirati liste vječnih praznika, koje se mogu dopuniti korisničkim listama fiksnih datuma kako bi se napravio dnevni red. Gcal također može izračunati astronomske podatke, kao što su mjesečeve faze, i podržava alternativne formate kalendara: julijanski, gregorijanski, islamski, kineski i još mnogo toga. (dok)

GCC

GCC je zbirka GNU kompajlera. Pruža front-end kompajlera za nekoliko jezika, uključujući C, C++, Objective-C, Fortran, Java, Ada i Go. Takođe uključuje biblioteke podrške za ove jezike. (dok)

Gcide

GCIDE je besplatni rečnik zasnovan na kombinaciji izvora. Može se koristiti putem GNU Dico programa ili pristupiti online na http://gcide.site.ua/ (doc)

GNU Common Lisp

GCL je implementacija Common Lisp jezika. Ima mogućnost kompajliranja u izvorni objektni kod i učitavanja modula izvornog objektnog koda direktno u svoju lisp jezgru. Takođe sadrži stratifikovanu strategiju sakupljanja smeća, debager na nivou izvora i ugrađeni interfejs za Tk widget sistem. (dok)

GCompris

GCompris je paket obrazovnog softvera za djecu. Sadrži niz aktivnosti pogodnih za djecu uzrasta od 2 do 10 godina. Paket uključuje aktivnosti za uvođenje i razvoj vještina korištenja računara, algebre, nauke, čitanja i još mnogo toga. Takođe sadrži neke igre kao što su šah i sudoku. (dok)

G.D.B.

GDB je GNU debugger. Pomoću njega možete pratiti šta program radi dok radi ili šta je radio neposredno prije pada. Omogućava vam da odredite uslove izvođenja, da definišete tačke prekida i da promenite način na koji se program izvodi kako biste pokušali da popravite greške. Može se koristiti za otklanjanje grešaka u programima napisanim u C, C++, Ada, Objective-C, Pascal i još mnogo toga. (dok)

Gdbm

GDBM je biblioteka za manipulisanje heširanim bazama podataka. Koristi se za pohranjivanje parova ključ/vrijednost u datoteci na način sličan Unix dbm biblioteci i pruža interfejse za tradicionalni format datoteke. (dok)

Gengen

GNU Gengen je program za generiranje tekstualnih generatora, tj. funkcija koje proizvode tekst s promjenjivim dijelovima. Tekst prvo specificira korisnik u datoteci šablona koja sadrži parametre, a zatim ga obrađuje gengen kako bi kreirao generator teksta. U vremenu izvođenja, promjenljivi tekst definira ostatak programa i prosljeđuje je generatoru teksta, koji ga zatim zamjenjuje u parametre šablona i vraća rezultat. Gengen se može koristiti za generiranje C i C++ koda. (dok)

Gengetopt

GNU Gengetopt je program za generiranje C/C++ funkcije za raščlanjivanje opcija komandne linije koristeći getopt_long funkciju koja se nalazi u GNU libc, uklanjajući dio dosade ovog zadatka za velike programe koji prihvataju mnoge opcije. Opcije koje generira funkcija analizira mogu biti i u kratkom (npr. -h) iu dugom (--help) formatu, kako je navedeno u GNU standardima kodiranja. Dodatno, izlaz standardnih opcija --pomoć i --verzija se generiše automatski. (dok)

Gettext

GNU Gettext je paket koji pruža okvir za prevođenje tekstualnog izlaza programa na više jezika. On pruža prevodiocima sredstva za kreiranje kataloga poruka, kao i Emacs mod za rad s njima i runtime biblioteku za učitavanje prevedenih poruka iz kataloga. Gotovo svi GNU paketi koriste Gettext. (dok)

Gforth

Gforth je brza i prenosiva implementacija ANSI Forth jezika. Uključuje način uređivanja za Emacs i tumač koji sadrži završetak i povijest. Generičko okruženje virtuelne mašine, vmgen, je takođe uključeno. (dok)

Ggradebook

GNU Gradebook je aplikacija za nastavnike za praćenje ocjena učenika. Podržava nekoliko stilova ocjenjivanja, uključujući američke (A, B, C, D, F) i europske numeričke skale. (dok)

GNU Ghostscript

Ghostscript je tumač za jezik PostScript i format PDF datoteke. Takođe uključuje C biblioteku koja implementira grafičke mogućnosti PostScript jezika. Podržava širok izbor formata izlaznih datoteka i štampača. (dok)

POKLON

GNU alat za pronalaženje slika (GIFT) je sistem za pronalaženje slika zasnovan na sadržaju. Koristi sadržaj slika za obavljanje upita nad kolekcijom, omogućavajući vam da postavljate upite na primjeru. Također, uključen je alat za indeksiranje cijelih stabala direktorija. (dok)

GIMP

GIMP je aplikacija za zadatke manipulacije slikama kao što su retuširanje fotografija, kompozicija i autorstvo. Podržava sve uobičajene formate slika kao i one specijalizovane. Poseduje veoma prilagodljiv interfejs koji je proširiv preko sistema dodataka. (dok)

Glean

GNU glean je modularni sistem za samostalno učenje, znatno složeniji od standardne metode fleš kartica. Vrlo je prilagodljiv, omogućavajući korisniku da definira predmete od interesa i aktivnosti za njihovo proučavanje. Za sada ima sučelje zasnovano na tekstu unutar Guile REPL-a i eksperimentalno web sučelje. (dok)

Gleem

GNU gleem je biblioteka za Javu i C++ koja nudi skup 3D vidžeta koji podržavaju direktnu interakciju korisnika sa 3D scenom. Ovi widgeti se koriste za prevođenje duž linije, prevođenje u ravni i za trodimenzionalno prevođenje i rotaciju. Ovaj paket traži održavaoca. (dok)

GLib

Global

GNU GLOBAL je sistem označavanja izvornog koda koji funkcioniše na isti način u širokom spektru okruženja, kao što su različiti uređivači teksta, ljuske i web pretraživači. Rezultirajuće oznake su korisne za brzo kretanje u velikom, duboko ugniježđenom projektu. (dok)

GLPK

GLPK je C biblioteka za rešavanje linearnog programiranja velikih razmera (LP), mešovitog celobrojnog programiranja (MIP) i drugih srodnih problema. Podržava jezik za modeliranje GNU MathProg, podskup jezika AMPL, i sadrži prevodilac za jezik. Pored C biblioteke, u paketu je uključen i samostalni LP/MIP solver. (dok)

Gmediaserver

GMediaServer je UPnP-kompatibilan medijski server. Služi audio i video fajlove medijskim plejerima koji su povezani na mrežu preko programa komandne linije koji radi u pozadini. (dok)

GMP

GMP je biblioteka za proizvoljnu preciznu aritmetiku, koja radi na predpisanim cijelim brojevima, racionalnim brojevima i brojevima s pomičnim zarezom. Preciznost je ograničena samo dostupnom memorijom. Biblioteka je visoko optimizirana, sa fokusom na dizajnu na brzinu izvršavanja. Namijenjen je upotrebi u, na primjer, kriptografiji i računskoj algebri. (dok)

Gnash

Gnash je besplatni Flash player za filmove. Podržava SWF verziju v7 i neke od v8 i v9. Moguće je konfigurirati Gnash da koristi nekoliko različitih audio ili video pozadina, osiguravajući dobre performanse. (dok)

GNAT

GNATS

GNATS je skup alata za praćenje grešaka i drugih problema sa softverom koje su prijavili korisnici. Potpuno je otvorenog tipa u pogledu načina na koji se njegova baza podataka može ispitivati, uređivati ​​i održavati, sa interfejsima u rasponu od komandne linije do Emacs-a, iako je glavni način interakcije preko njegovog web interfejsa. Takođe je dovoljno fleksibilan da podrži uslužne programe koje kreiraju korisnici. (dok)

Gnatsweb

Gneuralna mreža

Gneuralna mreža implementira programabilnu neuronsku mrežu. Trenutno podržava mreže za prosljeđivanje koje mogu naučiti jednostavne zadatke kao što je prilagođavanje krivulje. (dok)

GNOME

GNOME je grafička radna površina za GNU. Uključuje širok spektar aplikacija za pregledavanje weba, uređivanje teksta i slika, kreiranje dokumenata i dijagrama, reprodukciju medija, skeniranje i još mnogo toga. (dok)

GNU C referentni priručnik

Ovo je referentni priručnik za programski jezik C, kako ga implementira GNU C kompajler (gcc). Kao referenca, nije namijenjena da bude vodič za jezik. Umjesto toga, ocrtava sve konstrukcije jezika. Funkcije biblioteke nisu uključene. (dok)

GNU-pw-mgr

Ovaj program je dizajniran da olakša rekonstrukciju teških lozinki kada su potrebne uz ograničavanje rizika od napada. Korisnik ovog programa unosi samodefiniranu transformaciju URL-a web stranice i dobiva nagovještaj lozinke i korisničkog imena za tu web stranicu. (dok)

GNUbatch

GNUbatch je napredni sistem za planiranje paketa. Izvršava računske poslove na određene datume i vrijeme ili prema međuzavisnostima. Poslovi se mogu završiti na bilo kojem broju procesora koji se dijele na mreži. Potpuna kontrola pristupa poslovima je podržana. (dok)

Backgammon

GNU backgammon aplikacija se može koristiti za igranje, analizu i podučavanje igre. Ima napredni mehanizam za evaluaciju baziran na umjetnim neuronskim mrežama pogodan i za početnike i za napredne igrače. Pored interfejsa komandne linije, takođe ima atraktivan, 3D prikaz table za igru. (dok)

GNUbiff

GNUbiff je program koji provjerava poštu i obavještava vas kada stignu nove poruke. Podržava više poštanskih sandučića kojima se može pristupiti putem raznih metoda kao što su POP3, IMAP, MH i mailfiles. Grafička obaveštenja su obezbeđena sa GTK i podržana je potpuna integracija sa GNOME-om. (dok)

GNUbik

GNUbik je puzzle igra u kojoj morate manipulirati kockom kako bi svako njeno lice imalo ujednačenu boju. Igra je prilagodljiva, omogućavajući vam da podesite veličinu kocke (podrazumevano je 3x3) ili da promenite boje. Možete čak primijeniti fotografije na lica umjesto boja. Igra se može skriptirati uz Guile. (dok)

GNUcap

GNUcap je paket za analizu kola. Nudi simulator kola opće namjene i može izvoditi DC i tranzijentne analize, Furierovu analizu i AC analizu. Motor je dizajniran za pravu simulaciju mješovitog načina rada. (dok)

GnuCash

GnuCash je lični i profesionalni finansijsko-računovodstveni softver. Može se koristiti za praćenje bankovnih računa, zaliha, prihoda i rashoda, na osnovu računovodstvene prakse dvostrukog unosa. Uključuje podršku za QIF/OFX/HBCI uvoz i usklađivanje transakcija. Takođe automatizuje nekoliko zadataka, kao što su finansijske kalkulacije ili zakazane transakcije. (dok)

GnuComm

Telekom podsistem GNU projekta: krovni projekat za softver GNU telefonije, trenutno Bayonne, SIP Witch, i njihove prateće biblioteke (Common C++ / uCommon, ccAudio, ccScript, ccRTP i ZRTP / ZRTP4J). (dok)

GnuDOS

GnuDOS je skup programa dizajniranih da pomognu novim korisnicima GNU sistema da se naviknu na sistem, posebno korisnicima koji možda dolaze iz DOS pozadine. Sastoji se od upravitelja datoteka, uređivača teksta i dizajnera obrazaca za konzolu, kao i osnovne biblioteke za pravljenje sličnih uslužnih programa. (dok)

GNU Enterprise

GNU Enterprise podržava planiranje preduzeća. Uključuje server aplikacija, zajedničku razvojnu biblioteku, IDE za dizajniranje obrazaca podataka, interfejs obrazaca, navigator i sistem menija, i sistem za izveštavanje o podacima. (dok)

GNUgo

GNU Go je program koji igra igru ​​Go, u kojoj igrači postavljaju kamenje na mrežu kako bi formirali teritoriju ili uhvatili drugo kamenje. Iako se može igrati direktno sa terminala, prikazan u ASCII znakovima, također je moguće igrati GNU Go sa grafičkim interfejsima treće strane ili čak u Emacsu. Podržava standardni format pohrane igara (SGF, Smart Game Format) i međuprocesni komunikacijski format (GMP, Go Modem Protocol). (dok)

GNU interaktivni alati

GNU interaktivni alati su skup lakih, interaktivnih alata komandne linije. Oni uključuju proširivi, ortodoksni (dva panela) upravitelj datoteka, ASCII/hex preglednik datoteka i preglednik/ubicu procesa. Paket također uključuje neke povezane uslužne programe i skripte, kao što je alat za dekompresiju bilo koje vrste arhivske datoteke. Svi alati se mogu poboljšati i proširiti kroz njihove konfiguracijske datoteke za izvođenje novih naredbi. (dok)

GNUjump

GNUjump je jednostavna, ali zarazna igra u kojoj morate skakati s platforme na platformu kako biste izbjegli pad, dok platforme padaju bržim stopama što više idete. Igra ima multiplayer, neograničen FPS, glatko spuštanje poda, tematsku grafiku i zvukove, te reprize. (dok)

GNUlib

Gnulib je centralna lokacija za zajedničku infrastrukturu potrebnu GNU paketima. Pruža široku paletu funkcionalnosti, npr. prenosivost na mnoge sisteme, rad sa Unicode stringovima, kriptografsko izračunavanje i još mnogo toga. Kod je namijenjen da se dijeli na nivou izvornih datoteka, umjesto da bude samostalna biblioteka koja se distribuira, gradi i instalira. Uključena skripta gnulib-tool pomaže u korištenju Gnulib koda u drugim paketima. Gnulib takođe uključuje kopije datoteka za licenciranje i održavanje, radi praktičnosti. (dok)

Mach

GNUmed

GNUmed je softver za elektronsku medicinsku dokumentaciju, koji podržava medicinske prakse bez papira. Podržano je nekoliko jezika interfejsa. (dok)

GNUmeric

GNUmeric je GNU aplikacija za proračunske tablice, koja radi pod GNOME-om. Interoperabilan je sa drugim aplikacijama za tabelarne proračune. Ima široku lepezu funkcija izvan tipične funkcionalnosti proračunskih tablica, kao što je podrška za linearne i nelinearne rješavače, statističku analizu i telekomunikacijski inženjering. (dok)

GNUmp3d

GNUMP3d je streaming server za MP3 i Ogg Vorbis audio datoteke, filmove i druge medijske formate. Mali je i samostalan, predstavlja jednostavan, tematski HTML interfejs. Audio datoteke se zatim mogu reproducirati u bilo kojem playeru koji podržava streaming preko HTTP-a. (dok)

GNUnited Nations

GNUnited Nations je izgrađen sistem za prevođenje web stranice na www.site. Radi preko šablonskih datoteka, koje omogućavaju spajanje promjena u pojedinačne prijevode stranice, iz kojih se generira konačni HTML. U stvari, ovo pomaže da svi prijevodi stranice budu ažurni. (dok)

GNUnet

GNUnet je okvir za sigurno peer-to-peer umrežavanje. Cilj visokog nivoa je da se obezbedi snažna osnova slobodnog softvera za globalnu, distribuiranu mrežu koja obezbeđuje sigurnost i privatnost. GNUnet u tom smislu ima za cilj zamijeniti trenutni stog internet protokola. Zajedno sa aplikacijom za bezbedno objavljivanje fajlova, narastao je tako da uključuje sve vrste osnovnih aplikacija za osnivanje GNU interneta. (dok)

GnuPG

GNU Privacy Guard je potpuna implementacija OpenPGP standarda. Koristi se za šifriranje i potpisivanje podataka i komunikacije. Ima moćno upravljanje ključevima i mogućnost pristupa serverima javnih ključeva. Uključuje nekoliko biblioteka: libassuan (IPC između GnuPG komponenti), libgpg-error (centralizovane GnuPG vrednosti greške) i libskba (rad sa X.509 sertifikatima i CMS podacima). (dok)

GNUpod

GNUpod je kolekcija skripti za korišćenje iPod-a sa GNU/Linuxom i drugim operativnim sistemima. Može se koristiti za prijenos muzike i omota, pretraživanje datoteka, uklanjanje datoteka, uređivanje oznaka, kreiranje lista za reprodukciju i još mnogo toga. (dok)

GNUprologjava

GNU Prolog za Javu je implementacija standarda ISO Prolog kao Java biblioteka (gnu.prolog). Dakle, uz njega možete koristiti Prolog iz Java programa. (dok)

Radio

GNU Radio je komplet alata za implementaciju softverskih radija. Njegovi blokovi za obradu signala mogu se kombinovati sa jeftinim eksternim RF hardverom za kreiranje softverski definisanih radija. Bez hardvera, može se koristiti za simulaciju. Radio aplikacije su prvenstveno napisane na Python-u, sa C++ podrškom za zadatke obrade kritične za performanse. (dok)

Roboti

GNU Robots je igra u kojoj programirate robota da istražuje svijet pun neprijatelja koji ga mogu povrijediti, prepreka i hrane koju treba jesti. Cilj igre je ostati živ i skupljati nagrade. Program robota pogodno može biti napisan u običnom tekstualnom fajlu u programskom jeziku Scheme. (dok)

GNUschool

GNUschool je web aplikacija za učenike, nastavnike i školske administratore. Uz to, nastavnici mogu kreirati testove koje učenici mogu polagati na mreži, davati povratne informacije i dodjeljivati ​​ocjene. Školski administratori mogu ga koristiti za praćenje pohađanja učenika i uređivanje informacija o učenicima. (dok)

GNUshogi

GNU Shogi je program koji igra igru ​​Shogi (japanski šah). Takođe uključuje grafički interfejs za igru. Iako je slična standardnom šahu, ova varijanta je daleko složenija. (dok)

GNUsound

GNUsound je višestruki uređivač zvuka za GNOME 1 i 2. Može čitati i pisati mnoge formate audio datoteka kao što su WAV, MP3 i FLAC. Može raditi sa OSS, ALSA ili JACK audio backendovima. Pruža mnogo različitih ugrađenih modula za obradu zvuka, kao što su bledi ulaz/izlaz, kašnjenje i filteri. GLADSPA dodaci se takođe mogu koristiti za dalju obradu. (dok)

GNUspool

GNUspool je napredni sistem spooliranja ispisa. Pored funkcionalnosti standardnog sistema za štampanje, pruža mogućnost naknadne obrade, rukovanje tipom obrasca, poravnavanje stranica i druge karakteristike. Funkcioniše transparentno na mreži, dijeleći poslove na bilo kojem hostu sa štampačima na bilo kom drugom hostu. Dostupno je nekoliko različitih korisničkih interfejsa. (dok)

GNUstep

GNUstep je potpuno funkcionalno objektno orijentirano razvojno okruženje; uključen je i veliki broj korisničkih aplikacija. Usko prati Cocoa API-je, ali je nezavisan od platforme. (dok)

GnuTLS

GnuTLS je sigurna komunikacijska biblioteka koja implementira SSL, TLS i DTLS protokole. Pruža se u obliku C biblioteke za podršku protokolima, kao i za raščlanjivanje i pisanje X.5009, PKCS 12, OpenPGP i drugih potrebnih struktura. (dok)

GNUtrition

GNUtrition je besplatni softver za analizu ishrane. Pomoću njega se mogu pratiti nutritivne informacije hrane. Softver koristi bazu podataka o nutrijentima standardne reference Ministarstva poljoprivrede SAD-a kao izvor informacija o nutrijentima u hrani. (dok)

GNUzilla

Goptical

Goptical je biblioteka za optički dizajn i simulaciju u C++. Pruža klase modela za optičke komponente, površine i materijale. Pomoću njega se može simulirati izgradnju optičkog sistema kreiranjem i postavljanjem optičkih komponenti u 3d prostor, te vizualizirati svjetlost koja se širi kroz sistem. (dok)

Gorm

Gpaint

GNU Paint je jednostavan, lak za korištenje program za bojenje za GNOME okruženje. Podržava crtanje slobodnom rukom, kao i osnovne oblike i tekst. Sadrži isecanje i lepljenje za nepravilne regione ili poligone. (dok)

Gperf

gperf je savršen generator hash funkcija. Za datu listu stringova, proizvodi hash funkciju i hash tablicu u C ili C++ kodu. To što je hash funkcija savršena znači da ne mogu postojati kolizije i da se traženja mogu izvršiti poređenjem jednog niza. (dok)

Gprolog

GNU Prolog je Prolog kompajler usklađen sa standardima sa rješavanjem ograničenja preko konačnih domena. On prihvata Prolog+ programe ograničenja i proizvodi kompajliran, izvorni binarni fajl koji može da funkcioniše samostalno. Takođe sadrži interaktivni tumač. (dok)

phpGrabComics

phpGrabComics je program koji preuzima i sprema stripove s weba. Poseduje i server, koji može da preuzima trake iz različitih izvora, i portove, male aplikacije koje dobijaju listu dostupnih stripova sa servera. (dok)

Greg

GNU Greg je okvir za testiranje programa i biblioteka. Pruža jedan front-end za sve testove paketa, kao i jednostavan okvir za pisanje testova. Učitava se kao Guile modul u bilo koji softver sa ugrađenim Guile interpretatorom. Takođe pruža kompajlirani modul koji se može dinamički povezati u Guile kako bi se omogućilo testiranje eksternih programa. (dok)

Grep

grep je alat za pronalaženje teksta unutar datoteka. Tekst se pronalazi uparivanje uzorka koji je dao korisnik u jednoj ili više datoteka. Obrazac se može dati kao osnovni ili prošireni regularni izraz, ili kao fiksni nizovi. Prema zadanim postavkama, odgovarajući tekst se jednostavno ispisuje na ekran, međutim izlaz se može uvelike prilagoditi tako da uključuje, na primjer, brojeve redova. GNU grep nudi mnoga proširenja u odnosu na standardni uslužni program, uključujući, na primjer, rekurzivno pretraživanje direktorija. (dok)

Gretl

GNU Gretl je paket za izvođenje statističkih proračuna za ekonometriju. Sastoji se od klijenta komandne linije i grafičkog klijenta. Sadrži niz procjena kao što su najmanji kvadrati i maksimalna vjerovatnoća; nekoliko metoda vremenskih serija kao što su ARIMA i GARCH; ograničene zavisne varijable kao što su logit, probit i tobit; i moćan skriptni jezik. Može da prikaže modele kao LaTeX fajlove. Takođe može biti povezan sa GNU R i GNU Octave radi dalje analize podataka. (dok)

Groff

Groff je paket za slaganje teksta koji čita običan tekst i proizvodi formatirani izlaz na osnovu naredbi za formatiranje sadržanih u tekstu. Obično je to formater stranica dokumentacije man. (dok)

GRUB

GRUB je multiboot bootloader. Koristi se za početno učitavanje kernela operativnog sistema, a zatim za prenos kontrole na njega. Kernel zatim nastavlja da učitava ostatak operativnog sistema. Kao multiboot bootloader, GRUB upravlja prisustvom više operativnih sistema instaliranih na istom računaru; nakon pokretanja računara, korisniku se prikazuje meni za izbor jednog od instaliranih operativnih sistema. (dok)

Gsasl

GNU SASL je implementacija okvira Jednostavne provjere autentičnosti i sigurnosnog sloja. Na mrežnim serverima kao što su IMAP ili SMTP serveri, SASL se koristi za rukovanje klijent/server autentifikacijom. Ovaj paket sadrži i biblioteku i alat sa komandne linije za pristup biblioteci. (dok)

Gsegrafix

GSEGrafix je aplikacija koja proizvodi visokokvalitetne grafičke crteže za nauku i inženjerstvo. Ploče su specificirane putem jednostavnih ASCII datoteka parametara i datoteka podataka i predstavljene su u anti-aliased GNOME platnu. Program podržava pravougaone dvodimenzionalne dijagrame, histograme, dijagrame polarnih ose i trodimenzionalne dijagrame. Ploče se mogu odštampati ili sačuvati u BMP, JPEG ili PNG formatima slika. (dok)

GNU Scientific Library

GNU Scientific Library je biblioteka za numeričku analizu u C i C++. Uključuje širok spektar matematičkih rutina, sa preko 1000 funkcija ukupno. Predmetne oblasti koje pokriva biblioteka uključuju: diferencijalne jednačine, linearnu algebru, brze Fourierove transformacije i slučajne brojeve. (dok)

GNU Slip

GNU Slip je funkcionalno proširenje mogućnosti koje se nalaze u C++ standardnoj biblioteci predložaka (STL) listi i kontejnerima u redu čekanja, iako SLIP nije zamjena za STL kontejnere. SLIP podatkovne ćelije se mogu koristiti u proračunima specifičnim za aplikaciju, između ostalih poboljšanja. (dok)

GSRC podržava instaliranje najnovijih izdanja GNU paketa na postojeći sistem. Nove verzije se instaliraju na posebnom mjestu kako ne bi ometale verzije sistema. Cilj je olakšati rad s originalnim, uzvodnim, GNU izvorima, i možda pomoći u razvoju i testiranju. (dok)

Generička služba bezbednosti

GNU Generic Security Service pruža besplatnu implementaciju GSS-API specifikacije. Pruža generički interfejs za programiranje aplikacija za programe za pristup sigurnosnim uslugama. Sigurnosne usluge predstavljaju generički, GSS interfejs, s kojim aplikacija koja poziva stupa u interakciju preko ove biblioteke, oslobađajući programera aplikacije od potrebe da zna o osnovnoj implementaciji sigurnosti. (dok)

GTick

GTick je aplikacija za metronom. Podržava različite mjerače, kao što su 2/4, 3/4, 4/4, itd. Takođe podržava širok raspon brzina, od 10 do 1000 BPM. Pruža korisničko sučelje zasnovano na GTK+ i može koristiti i OSS i ALSA kao audio pozadinu. (dok)

GTK+

Gtypist

GNU Typist je univerzalni tutor za kucanje. Može se koristiti za učenje i vježbanje kucanja dodirom. Uključeno je nekoliko tutorijala; pored tutorijala za standardni QWERTY raspored, tu su i tutorijali za alternativne rasporede Dvorak i Colemak, kao i za numeričku podlogu. Tutorijali su prvenstveno na engleskom jeziku, ali postoje i neki na drugim jezicima. (dok)

Prevara

Guile je GNU sveprisutni inteligentni jezik za proširenja, službeni jezik proširenja GNU sistema. To je implementacija jezika Scheme koji se lako može ugraditi u druge aplikacije kako bi se pružio pogodan način proširenja funkcionalnosti aplikacije bez potrebe za ponovnim pisanjem izvornog koda. (dok)

Guile-cv

Guile-CV je biblioteka funkcionalnog programiranja Computer Vision za jezik Guile Scheme. Guile-CV je baziran na Vigra (Vizija sa generičkim algoritmima). Sastoji se od direktnog vezivanja za vigra_c (C omotač za podskup Vigra biblioteke) i API višeg nivoa napisan u Guile Scheme. (dok)

Guile-dbi

guile-dbi je biblioteka za Guile koja pruža pogodan interfejs za SQL baze podataka. Programiranje baze podataka sa guile-dbi je generičko po tome što je predstavljen isti programski interfejs bez obzira koji se sistem baze podataka koristi. Trenutno podržava MySQL, Postgres i SQLite3. (dok)

Gnome

Uključuje guile-clutter, guile-gnome-gstreamer, guile-gnome-platform (GNOME programerske biblioteke) i guile-gtksourceview. (dok)

Prevarne psovke

guile-ncurses obezbeđuje Guile jezičke veze za biblioteku ncurses. (dok)

Guile-opengl

Guile-OpenGL je biblioteka za Guile koja obezbeđuje vezivanja za OpenGL grafički API. (dok)

Guile-SDL

Guile-SDL je skup vezivanja za Simple DirectMedia Layer (SDL). Uz njih, Guile programeri mogu imati lak pristup grafici, zvuku i unosu uređaja (tastature, džojstici, miševi, itd.). (dok)

Guix

GNU Guix je funkcionalni menadžer paketa za GNU sistem, a takođe je i njegova distribucija. Uključuje sliku virtuelne mašine. Osim uobičajenih funkcija za upravljanje paketima, također podržava transakcijske nadogradnje i vraćanja, profile po korisniku i još mnogo toga. Zasnovan je na Nix paket menadžeru. (dok)

Gurgle

GURGLE proizvodi liste izvještaja baze podataka iz zapisa i informacija o polju iz datoteke. Koristi izvještaj za proizvodnju (La)TeX formatiranog izlaza, običnog ASCII teksta, troff, PostScript, HTML, XML ili bilo kojeg drugog izlaznog formata zasnovanog na ASCII. Može se koristiti za izradu velikih tijela teksta gdje se mali dijelovi teksta zamjenjuju informacijama iz baze podataka. GURGLE podržava GNUSQL, PostgreSQL, MySQL i CA-Ingres baze podataka. (dok)

GNU GV je grafičko korisničko sučelje za Ghostscript interpreter. Sa njim se može pregledati i kretati kroz PostScript i PDF dokumente u X Windows-u. (dok)

GVPE

GNU Virtual Private Ethernet stvara virtuelnu mrežu sa više čvorova koristeći različite transportne protokole. Radi tako što kreira šifrirane tunele host-to-host između više krajnjih točaka. (dok)

G.W.L.

GWL je jezik toka posla koji proširuje Guix-ov deklarativni jezik za upravljanje paketima kako bi se automatiziralo izvršavanje programa. Osim toga, GWL može koristiti Grid Engine za oslobađanje od izvršavanja programa. (doc)

Gxmessage

GNU gxmessage je program koji iskače dijaloške prozore, koji prikazuju poruku korisniku i čekaju njihovu akciju. Program tada izlazi sa izlaznim kodom koji odgovara odgovoru. (dok)

Gzip

GNU Gzip pruža alate za kompresiju i dekompresiju podataka; tipična ekstenzija je .gz. Za razliku od zip formata, komprimuje jednu datoteku; kao rezultat toga, često se koristi u sprezi sa tar, što rezultira .tar.gz ili .tgz, itd. (dok)

HaliFAX

HaliFAX podržava slanje i pregled faksova, uključujući omotač oko komande lpr. Ovaj paket traži održavaoca. (dok)

Zdravlje

GNU Health je besplatni medicinski softverski sistem, uključujući podršku za elektronske medicinske kartone (EMR), bolnički informacioni sistem (HIS) i zdravstveni informacioni sistem. Podržava i španski i engleski interfejs. Usvojen je od strane Univerziteta Ujedinjenih nacija za implementaciju i obuku, te nekoliko bolnica i ministarstava zdravlja širom svijeta. (dok)

zdravo

GNU Hello ispisuje poruku Zdravo, svijete! a zatim izlazi. Služi kao primjer standardne prakse GNU kodiranja. Kao takav, podržava argumente komandne linije, više jezika i tako dalje. (dok)

Help2man

GNU help2man je program koji automatski konvertuje izlaz standardnih --help i --version argumenata komandne linije u ručnu stranicu. (dok)

Hp2xx

GNU hp2xx konvertuje vektorsku grafiku specificiranu u jeziku plotera HP-GL u različite grafičke formate, i vektorske i rasterske, uključujući EPS, PCX, IMG i formate namenjene za upotrebu u TeX dokumentima. (dok)

httptunnel

GNU httptunnel kreira dvosmjernu putanju podataka tuneliranu u HTTP zahtjevima. Ovo omogućava korisnicima iza zaštitnih zidova da šalju i primaju podatke koji bi inače bili blokirani, kao što su telnet ili ssh veze. (dok)

Hurd

Hurd je kernel za GNU sistem, zamjena i proširenje standardnih Unix kernela. To je kolekcija protokola za interakciju sistema (sistemi datoteka, mreže, autentifikacija) i servera koji ih implementiraju. Podprojekti uključuju Mach, mikrokernel na kojem je Hurd baziran, koji pruža osnovni mehanizam međuprocesne komunikacije, i MIG, generator interfejsa za Mach. (dok)

Hiperbola

Hyperbole je programabilni informacijski i hipertekstualni sistem za GNU Emacs. Omogućava da se hipertekst ugradi u dokumente, poruke pošte i novinske članke. Ovo omogućava kontrolu prikazanih informacija baziranu na mišu. (dok)

Icecat

IceCat je GNU verzija pretraživača Firefox. To je potpuno besplatan softver, koji ne preporučuje neslobodne dodatke i dodatke. Takođe ima ugrađene funkcije za zaštitu privatnosti. (dok)

Idutils

Paket GNU idutils uključuje alate za kreiranje indeksa tekstualnih tokena koji se koriste u listi imena datoteka i zatim za ispitivanje tog indeksa. Dakle, omogućava korisniku da, na primjer, pronađe sve upotrebe određene funkcije u velikom programskom projektu. Osim rukovanja tekstualnim tokenima, može također rukovati numeričkim konstantama i sadržajem znakovnih nizova. (dok)

Ignuit

Ignuit je alat za pomoć pri pamćenju novih informacija baziran na Leitner flashcard sistemu. U ovom sistemu, nove kartice se proučavaju sve manje učestalosti kako stare, osim ako ne naiđete na poteškoće da ih zapamtite, nakon čega se susrećete sve češće. Kartice mogu sadržavati ugrađeni zvuk, slike i matematičke formule, a kolekcija kartica se može izvesti u nekoliko formata. (dok)

Indent

Indent je program koji čini izvorni kod lakšim za čitanje preformatiranjem u dosljednom stilu. Može promijeniti stil u jedan od nekoliko različitih stilova kao što su GNU, BSD ili K&R. Ima određenu fleksibilnost da se nosi s nekompletnom ili pogrešno oblikovanom sintaksom. GNU indent nudi nekoliko proširenja u odnosu na standardni uslužni program. (dok)

Inetutils

Inetutils je kolekcija uobičajenih mrežnih programa, kao što su ftp klijent i server, telnet klijent i server, i rsh klijent i server. (dok)

Inklingreader

GNU InklingReader je paket koji podržava Wacom Inkling uređaj, uključujući konverziju podataka u različite besplatne formate, osnovne funkcije za uređivanje i Inkscape dodatak. (dok)

Intlfonts

GNU intlfonts sadrži besplatne X11 fontove u BDF i TrueType formatima. Oni posebno pokrivaju veliki broj znakova iz različitih sistema pisanja: evropski, azijski, kineski, japanski, korejski, etiopski i drugi. (dok)

JACAL

GNU JACAL je interaktivni program simboličke matematike zasnovan na Scheme. On manipuliše i pojednostavljuje niz matematičkih izraza kao što su jednačine, skalari, vektori i matrice. (dok)

Jami

Jami je program za univerzalnu komunikaciju koji poštuje slobode i privatnost svojih korisnika. Jami koristi distribuirane hash tablice za uspostavljanje komunikacije. Time se izbjegava vođenje centraliziranih registara korisnika i pohranjivanje ličnih podataka. (dok)

Java-getopt

java-getopt pruža Java port za GNU getopt funkciju iz glibc-a. Podržava raščlanjivanje dugih i kratkih argumenata komandne linije na fleksibilan način, koji je potpuno kompatibilan sa C verzijom. (dok)

Jel

GNU JEL je biblioteka koja dozvoljava programu da prihvati korisnički definirane izraze koji se unose i procjenjuju u vrijeme izvođenja. U stvari, JEL kompajlira izraze u Java bajtkod kako bi se izbjegla kazna za performanse dodavanja interpretiranih izraza već interpretiranom jeziku. (dok)

Java Training Wheels

GNU Java Training točkovi pružaju manje strmu krivulju učenja za učenje programiranja u Javi. Sistem pokreće pretprocesor koji dodaje karakteristike Javi kao što su makro za superfor i sistem za uključivanje datoteka slično pretprocesoru jezika C. (doc)

Jwhois

GNU jwhois je klijent za WHOIS protokol, koji vam omogućava da pitate vlasnika imena domene. Program koristi proširivu konfiguracijsku datoteku da odredi najprikladniji server za upit i, nakon uspjeha, prikazuje rezultat korisniku, inače može opciono preusmjeriti upit na drugi server. (dok)

Kawa

GNU Kawa je implementacija programskog jezika Scheme koji je izgrađen na vrhu Java platforme. Zbog toga je zgodno integrisan sa Javom i ima koristi od toga jer ima kompajler, opciono statičko kucanje i tako dalje. Kawa također služi kao okvir za implementaciju drugih programskih jezika na Java platformi. Uključen u Kawa je qexo, djelomična implementacija XQueryja u Javi. (dok)

Noga

GNU Leg je skup biblioteka za motore igara i razvoj igara. Pored biblioteka, uključuje i uređivače resursa dizajnirane da olakšaju kreiranje igara. Paket je dizajniran da bude generički i modularan, podržavajući mnoge različite stilove igara. (dok)

Manje

GNU less je pejdžer, program koji vam omogućava da vidite velike količine teksta u delovima veličine stranice. Za razliku od tradicionalnih pejdžera, omogućava kretanje unazad i unapred kroz dokument. Također ne mora pročitati cijelu ulaznu datoteku prije pokretanja, tako da se pokreće brže od većine tekstualnih uređivača. (dok)

GNU C biblioteka

GNU C biblioteka je standardna C biblioteka GNU sistema. Definira sistemske pozive i druge osnovne funkcionalnosti potrebne za pisanje programa u jeziku C. Obrađuje funkcionalnost niskog nivoa koja komunicira sa kernelom, kao što je upravljanje procesima i datotekama, kao i funkcionalnost višeg nivoa kao što je manipulacija stringovima ili rukovanje argumentima komandne linije. (dok)

Libcdio

GNU Compact Disc Input and Control Library (libcdio) je biblioteka za pristup CD-ROM-u i CD datotekama slike. Omogućava programeru da doda pristup CD-u aplikaciji bez brige o svojstvima CD-ROM-a zavisnim od OS-a i uređaja ili specifičnim detaljima formata CD slika. Uključuje pycdio, Python interfejs za libcdio, i libcdio-paranoia, biblioteku koja omogućava ekstrakciju zvuka sa CD-a bez podrhtavanja i grešaka. (dok)

Libdbh

libdbh pruža hash tablice zasnovane na disku, pružajući brzo traženje parova ključ/vrijednost. Iako je njegova upotreba općenito slična upotrebi (G)DBM-a, ima drugačiji dizajn koji podržava naprednu, netipičnu upotrebu. (dok)

Liberty Eiffel

Liberty Eiffel projekat je GNU Eiffel Compiler. Eiffel je napredni objektno orijentirani programski jezik koji naglašava dizajn i konstrukciju visokokvalitetnog softvera za višekratnu upotrebu. Liberty Eiffel je kompletan, mali i brz Eiffelov kompajler, uključujući Eiffel to C kompajler, alate za dokumentaciju, lijepi pisač, debuger i razne druge alate. Takođe uključuje veliku biblioteku klasa kao i sveobuhvatan skup omota/vezivanja za široko rasprostranjene biblioteke slobodnog softvera. (dok)

Libextractor

GNU libextractor je biblioteka za izdvajanje metapodataka iz datoteka. Podržava vrlo veliki broj formata datoteka, uključujući audio datoteke, datoteke dokumenata i arhivske datoteke. Svaki format datoteke implementiran je kao dodatak, tako da se novi formati mogu lako dodati. Paket također sadrži alat naredbene linije za izdvajanje metapodataka iz datoteke i ispis rezultata. (dok)

Libgcrypt

Libgcrypt je kriptografska biblioteka opšte namene. Pruža standardne kriptografske građevne blokove kao što su simetrične šifre, hash algoritmi, algoritmi javnog ključa, velike cjelobrojne funkcije i generiranje slučajnih brojeva. (dok)

Libiconv

libiconv pruža implementaciju funkcije iconv za sisteme kojima nedostaje. iconv se koristi za konvertovanje između kodiranja znakova u programu. Podržava širok izbor različitih kodiranja. (dok)

Libidn

libidn je biblioteka koja implementira Stringprep, Punycode i IDNA specifikacije. Oni se koriste za kodiranje i dekodiranje internacionaliziranih imena domena. Uključuje izvorne C, C# i Java biblioteke. (dok)

Libmatheval

GNU libmatheval je biblioteka za raščlanjivanje i evaluaciju simboličkih izraza koje je korisnik unio kao tekst. Može se učitati i sa C i sa Fortrana. Interpretator je fleksibilan, podržava bilo koji broj varijabli proizvoljnih imena, decimalnih i simboličkih konstanti, osnovnih unarnih i binarnih operatora i elementarnih matematičkih funkcija. Također može izračunati simboličke derivate i izlazne izraze u nizove. (dok)

Libmicrohttpd

GNU libmicrohttpd je mali HTTP server koji se može ugraditi i implementiran kao C biblioteka. Olakšava pokretanje HTTP servera kao dijela druge aplikacije. Biblioteka je u potpunosti kompatibilna sa HTTP 1.1. Može da sluša na više portova, podržava četiri različita modela niti i podržava IPv6. Takođe sadrži sigurnosne karakteristike kao što su osnovna i sažeta autentifikacija i podrška za SSL3 i TLS. (dok)

librejs

LibreJS je dodatak za GNU Icecat i druge pretraživače zasnovane na Firefoxu. On otkriva da se netrivijalni i neslobodni JavaScript kod ne učitava bez vašeg pristanka kada pretražujete web. Dozvoljeno je učitavanje JavaScript koda koji je besplatan ili trivijalan. (dok)

Libsigsegv

GNU libsigsegv je biblioteka za rukovanje greškama stranice, koje se javljaju kada program pokuša da pristupi nedostupnom regionu memorije, u korisničkom režimu. Hvatanje i rukovanje greškama stranice, program može implementirati virtualnu memoriju koja se može stranicama, rukovaoce prekoračenjem steka i tako dalje. (dok)

Libtasn1

GNU libtasn1 je biblioteka koja implementira ASN.1 notaciju. Koristi se za prenos mašinski neutralnog kodiranja objekata podataka u računarskom umrežavanju, omogućavajući formalnu validaciju podataka prema nekim specifikacijama. (dok)

Libtool

GNU Libtool pomaže u kreiranju i korištenju dijeljenih biblioteka, predstavljajući jedno konzistentno, prenosivo sučelje koje skriva uobičajenu složenost rada sa zajedničkim bibliotekama na različitim platformama. (dok)

Libunistring

GNU libunistring je biblioteka koja pruža funkcije za manipuliranje Unicode stringovima i za manipulaciju C stringovima prema Unicode standardu. (dok)

Libxmi

GNU libxmi je biblioteka za rasterizaciju 2D vektorske grafike za C i C++. Podržava crtanje 2D primitiva u matricu piksela koju je dostavio korisnik. Takođe podržava specifikacije sofisticiranih stilova linija kao što su višebojni isprekidani uzorci. Takođe je podržano popunjavanje i teksturiranje poligona. (dok)

Munja

GNU Lightning je biblioteka koja generiše kod asemblerskog jezika u toku rada. Stoga je koristan u kreiranju kompajlera Just-In-Time. On apstrahuje preko ciljnog CPU-a tako što klijentima izlaže standardizovani skup RISC instrukcija. (dok)

Lilypond

GNU LilyPond je muzički slagač koji proizvodi notne zapise visokog kvaliteta. Muzika se unosi u tekstualnu datoteku koja sadrži kontrolne sekvence koje LilyPond tumači kako bi proizveo konačni dokument. Može se proširiti pomoću Guilea. (dok)

Lims

GNU LIMS je sistem za upravljanje laboratorijskim informacijama. Koristi se za upravljanje naučnom laboratorijom bilo koje oblasti. Sastoji se od skupa modula za okvir za upravljanje preduzećima Tryton, tako da je fleksibilan prema specifičnim potrebama laboratorije. Na primjer, sistem uključuje module za upravljanje uzorcima, integraciju laboratorijske opreme, računovodstvo i upravljanje zalihama. (dok)

Linux-libre

GNU Linux-Libre je besplatna (kao u slobodi) varijanta Linux kernela. Modificiran je da ukloni sve neslobodne binarne mrlje. (dok)

Liquid War 6

GNU Liquid War 6 je brza, jedinstvena akciona igra. Svaki igrač kontrolira mrlju tekućine s ciljem osvajanja cijele mape. Podrazumevano ima 13 nivoa i preko 100 više sa bonus paketom; novi nivoi se mogu lako kreirati pomoću jednostavnih slikovnih datoteka. (dok)

Lispintro

Lrzsz

GNU lrzsz je komunikacioni paket koji podržava XMODEM, YMODEM i ZMODEM protokole za prijenos datoteka. (dok)

Lsh

GNU lsh je besplatna implementacija SSH verzije 2 protokola. Koristi se za kreiranje bezbedne linije komunikacije između dva računara, obezbeđujući pristup ljusci serverskom sistemu sa klijenta. Pruža i serverski demon i klijentsku aplikaciju, kao i alate za manipulaciju ključnim datotekama. (dok)

GNU M4 je implementacija makro jezika M4, koji ima neke ekstenzije u odnosu na druge implementacije, od kojih su neke potrebne za GNU Autoconf. Koristi se kao makro procesor, što znači da obrađuje tekst, proširujući makroe kako ih naiđe. Također ima neke ugrađene funkcije, na primjer za pokretanje komandi ljuske ili za aritmetiku. (dok)

MAC Changer

GNU MAC Changer je uslužni program za pregled i promjenu MAC adresa mrežnih uređaja. Nove adrese se mogu postaviti eksplicitno ili nasumično. Oni mogu uključivati ​​MAC adrese istih ili drugih proizvođača hardvera ili, općenito, MAC adrese iste kategorije hardvera. (dok)

Mailman

GNU Mailman je softver za upravljanje raspravama putem e-pošte i mailing listama. I korisnici i administratori uglavnom obavljaju svoje radnje u web interfejsu, iako su takođe obezbeđeni interfejsi e-pošte i komandne linije. Sistem ima ugrađeno arhiviranje, automatsku obradu odbijanja, filtriranje sadržaja, isporuku sažetka i još mnogo toga. (dok)

Mailutils

GNU Mailutils je kolekcija programa za upravljanje, pregled i obradu elektronske pošte. Sadrži i uslužne programe i serverske demone i svi rade na način koji ne zavisi od protokola. Dostupne su i osnovne biblioteke, što pojednostavljuje dodavanje mogućnosti pošte novom softveru. (dok)

Make

Make je program koji se koristi za kontrolu proizvodnje izvršnih ili drugih datoteka iz njihovih izvornih datoteka. Procesom se upravlja iz Makefile-a, u kojem programer specificira kako se svaki fajl generiše iz svog izvora. Ima moćnu rezoluciju ovisnosti i mogućnost određivanja kada se datoteke moraju regenerirati nakon promjene izvora. GNU nudi mnoga moćna proširenja u odnosu na standardni uslužni program. (dok)

MARST

GNU MARST je Algol-to-C prevodilac. Paket se sastoji od samog prevodioca, biblioteke koja sadrži potrebne Algol 60 procedure i pretvarača koji pretvara postojeće Algol 60 programe iz drugih reprezentacija u MARST reprezentaciju. (dok)

Maverik

GNU MAVERIK je razvojni alat koji podržava 3D virtuelna okruženja i interakciju sa tim okruženjima. On se nalazi na vrhu mašine za renderovanje niskog nivoa koji koristi OpenGL ili Mesa, i obezbeđuje mehanizme za renderovanje različitih vrsta objekata, za upravljanje okruženjima i za pružanje podrške za 3D interakciju. (dok)

Ponoćni komandant

GNU Midnight Commander je upravitelj datoteka na komandnoj liniji postavljen u uobičajenom formatu s dva okna. Pored standardnih zadataka upravljanja datotekama kao što su kopiranje i premještanje, Midnight Commander također podržava pregled sadržaja datoteka RPM paketa i drugih arhiva i upravljanje datotekama na drugim računarima putem FTP-a ili FISH-a. Takođe uključuje moćan uređivač teksta za otvaranje tekstualnih datoteka. (dok)

Mcron

GNU Mcron je potpuna zamjena za Vixie cron. Koristi se za izvršavanje zadataka po rasporedu, kao što je svaki sat ili svaki ponedjeljak. Mcron je napisan u Guile, tako da se njegova konfiguracija može napisati u Scheme; originalni cron format je također podržan. Ovaj paket traži održavaoca. (dok)

MCSim

GNU MCSim je paket za izvođenje simulacija. Podržava statističke ili determinističke simulacijske modele putem Monte Carlo stohastičkih simulacija ili dinamičkih simulacija zasnovanih na ODE. Takođe može izvesti Bayesian zaključak kroz simulacije Markovljevog lanca Monte Carlo. (dok)

MIX Development Kit

GNU MDK je Mix Development Kit, emulacija pedagoškog računara MIX i njegovog asemblerskog jezika MIXAL. MIX ima virtuelni CPU sa standardnim karakteristikama kao što su registri, memorijske ćelije, preklopni prekidač, zastavice za poređenje, ulazno-izlazni uređaji i skup binarnih instrukcija. Paket uključuje kompajler, virtuelnu mašinu, GUI za virtuelnu mašinu i još mnogo toga. (dok)

Mediagoblin

GNU MediaGoblin je besplatna platforma za objavljivanje medija. Radi na federaliziran način, oslobađajući korisnika od centraliziranih web usluga. Podržava slike, video i audio. (dok)

Topljenje

GNU MELTING izračunava entalpiju, entropiju i temperaturu topljenja prelaza heliks-coil dupleksa nukleinske kiseline. (dok)

MemPool

Biblioteka MemPool je samostalna biblioteka za dodjelu memorije. To je biblioteka alokatora blokova koja koristi jednu memoriju fiksne veličine za dodjelu memorijskih blokova promjenjive veličine i izvozi funkcije slične malloc, realloc i free. Namijenjen je ili da simulira ciljeve niske memorije na GNU/Linuxu i drugim sistemima, ili da u potpunosti zamijeni upravljanje sistemskom memorijom. (dok)

Mes

GNU Mes ima za cilj da pomogne u kreiranju potpunog pokretanja izvora za GNU/Linux sisteme kao što je GuixSD. Sadrži interpretator sheme za međusobno samo-hostovanje napisan u jednostavnom C-u i Nyacc-baziran C kompajler napisan u GNU Guile-kompatibilnoj shemi. Biblioteka Mes C podržava pokretanje gcc-a. (dok)

Metahtml

GNU MetaHTML je programski jezik na strani servera dizajniran za World Wide Web. Ima sintaksu koja je slična HTML-u i Lisp-u. Pruža veliku biblioteku funkcija, uključujući podršku za utičnice, kreiranje slika i povezivanje s drugim programima. (dok)

Mifluz

GNU mifluz je C++ biblioteka za pohranjivanje invertovanog indeksa punog teksta. Pohranjuje pojavljivanja riječi u skupu tekstova na način da se kasnije mogu pretraživati. Nakon traženja riječi, indeks vraća listu dokumenata koji sadrže tu riječ. (dok)

Mig

Miscfiles

GNU Miscfiles je zbirka uobičajenih datoteka podataka. Oni uključuju, na primjer, skraćenice zemalja, imena i glavne gradove; kratice i nazivi valuta; indeks najbolje trenutne prakse; mapa ASCII skupa znakova; spisak troslovnih kodova aerodroma; i spisak engleskih riječi. (dok)

MIT/GNU šema

GNU/MIT Scheme je implementacija programskog jezika Scheme. Pruža interpreter, kompajler i debager. Takođe sadrži integrisani uređivač sličan Emacsu i veliku runtime biblioteku. (dok)

Moe

GNU Moe je moćan, ali jednostavan za korištenje uređivač teksta. Radi na nemoderan način i ima intuitivan skup povezivanja tastera koji svakom tasteru dodeljuje stepen ozbiljnosti; na primjer, kombinacije tipki s tipkom Alt služe za bezopasne komande kao što je pomicanje kursora, dok kombinacije s tipkom Control služe za komande koje će modificirati tekst. Moe ima više prozora, neograničeno poništavanje/ponavljanje, neograničenu dužinu reda, globalno pretraživanje i zamjenu i još mnogo toga. (dok)

Motti

GNU Motti je jednostavna strateška igra za više igrača koja se igra u terminalu. Cilj igre je osvojiti neprijateljske prestonice okupacijom i okruživanjem teritorije. (dok)

MPc

GNU MPC je C biblioteka za izvođenje aritmetike na kompleksnim brojevima. Podržava proizvoljno visoku preciznost i ispravno zaokružuje rezultate. (dok)

Mpfr

GNU MPFR je C biblioteka za izvođenje višestruke preciznosti, računanja s pomičnim zarezom sa ispravnim zaokruživanjem. (dok)

Mpria

GNU MPRIA je C biblioteka za izvođenje racionalnih aritmetičkih izračunavanja sa proizvoljno visokom preciznošću. Nadovezuje se na GMP biblioteku. (dok)

Mtools

GNU Mtools je skup uslužnih programa za pristup MS-DOS diskovima iz GNU ili Unix sistema. Podržava duga imena datoteka i više formata diskova. Takođe podržava neke funkcije specifične za FAT kao što su oznake volumena i atributi datoteka specifični za FAT. (dok)

Nana

GNU Nana je okvir za dodavanje provjere tvrdnji, evidentiranja i mjerenja performansi u C i C++ programe. Operacije se mogu implementirati direktno u C ili generiranjem komandi za otklanjanje grešaka. Funkcije provjere i evidentiranja mogu se omogućiti ili onemogućiti tokom kompajliranja ili runtimea. (dok)

Nano

GNU nano je mali i jednostavan uređivač teksta za upotrebu u terminalu. Osim osnovnog uređivanja, podržava: poništavanje/redo, isticanje sintakse, provjeru pravopisa, pravljenje, automatsko uvlačenje, podudaranje zagrada, interaktivno pretraživanje i zamjenu (sa regularnim izrazima) i uređivanje više datoteka. (dok)

Nano-arhimed

nano-archimedes je besplatan paket za simulaciju kvantnih sistema. Zasniva se na Wignerovoj jednačini, formulaciji kvantne mehanike u terminima faznog prostora koji je matematički ekvivalentan Schroedingerovoj jednačini. nano-arhimed implementira Wigner Monte Carlo metod. Kod se lako može proširiti na teoriju funkcionalne gustine (DFT) i vremenski zavisne ab-initio simulacije. (dok)

Ncurses

GNU Ncurses je biblioteka koja pruža mogućnost pisanja teksta na terminal na način nezavisan od terminala. Podržava jastučiće i boju, kao i višestruko naglašavanje i formiranje znakova. Obično se koristi za implementaciju korisničkih interfejsa za aplikacije sa komandne linije. Prateća biblioteka ncursesw pruža široku podršku karaktera. (dok)

Kopriva

GNU Nettle je kriptografska biblioteka niskog nivoa. Dizajniran je tako da se lako uklapa u gotovo svaki kontekst. Može se lako uključiti u kriptografske alate za objektno orijentirane jezike ili u same aplikacije. (dok)

Ocrad

GNU Ocrad je program za optičko prepoznavanje znakova zasnovan na metodi ekstrakcije karakteristika. Može čitati slike u PBM, PGM ili PPM formatima i proizvodi tekst u 8-bitnim ili UTF-8 formatima. (dok)

Octave

GNU Octave je interpretirani jezik visokog nivoa koji je specijalizovan za numerička izračunavanja. Može se koristiti i za linearne i za nelinearne aplikacije i pruža odličnu podršku za vizualizaciju rezultata. Rad se može obavljati i na interaktivnoj komandnoj liniji, kao i putem skript datoteka. (dok)

Oleo

GNU Oleo je program za proračunske tablice. Nudi i terminalski interfejs i LessTif-bazirano grafičko korisničko sučelje. Sadrži poznate, Emacs-ove veze tipki. Podržava mnoge standardne funkcije proračunskih tablica kao što su makroi i funkcije. (dok)

OrgaDoc

siteDoc je sistem za jednostavno održavanje skupa dokumenata između računara. Dokumenti se sinkroniziraju rsync ili unison; nije potrebna baza podataka ili HTTP server. (dok)

oSIP

GNU oSIP je implementacija SIP protokola. Koristi se da se programerima multimedijalnog i telekom softvera obezbedi interfejs za pokretanje i kontrolu SIP sesija. (dok)

Panorama

GNU Panorama je okvir za proizvodnju 3D grafike. Može izvoditi različite efekte, kao što su fokalno zamućenje, proizvoljni izvori svjetlosti, mapiranje neravnina i nekoliko svjetlosnih efekata. (dok)

Paralelno

GNU Parallel je alat za paralelno izvršavanje poslova ljuske pomoću jednog ili više računara. Poslovi se mogu sastojati od pojedinačnih naredbi ili skripti i izvršavaju se na listama datoteka, hostova, korisnika ili drugih stavki. (dok)

Rastavljeni

GNU Parted je paket za kreiranje i manipulaciju tabelama particija diska. Uključuje biblioteku i pomoćni program komandne linije. (dok)

Patch

Patch je program koji primjenjuje promjene na fajlove na osnovu razlika postavljenih u programu diff. Promjene se mogu primijeniti na jednu ili više datoteka ovisno o sadržaju diff datoteke. Prihvata nekoliko različitih diff formata. Može se koristiti i za poništavanje prethodno primijenjenih razlika. (dok)

Paxutils

GNU paxutils je paket uslužnih programa za arhiviranje. Sadrži verzije cpio, tar i pax arhivatora. (dok)

Pcb

GNU PCB je interaktivni alat za uređivanje rasporeda štampanih ploča. Sadrži implementaciju gnijezda pacova, uvoz shema/mreža i provjeru pravila dizajna. Takođe uključuje autoruter i optimizator praćenja; i može proizvesti fotorealistične slike i slike za pregled dizajna. (dok)

Pem

GNU Pem je jednostavan alat za praćenje ličnih prihoda i troškova. Radi iz komandne linije i pohranjuje svoje podatke u osnovnom tekstualnom formatu u vašem kućnom direktoriju. Može lako ispisati izvještaje o vašoj potrošnji na različite troškove putem osnovne funkcije pretraživanja. (dok)

Pexec

GNU pexec je program za paralelno izvršavanje komandi ili shell skripti na jednom ili više računara. Dok radi, parametri izvršavanja kao što su varijable okruženja ili standardni ulaz, izlaz i greška mogu se mijenjati. (dok)

Pite

GNU pies je program koji nadzire pozivanje i izvršavanje drugih programa. Čita listu programa koje treba pokrenuti iz svoje konfiguracijske datoteke, izvršava ih, a zatim prati njihov status, ponovo ih izvršavajući po potrebi. (dok)

Plotutils

GNU Plotutils je paket za crtanje i rad sa 2D grafikom. Uključuje biblioteku, libplot, za C i C++ za izvoz 2D vektorske grafike u mnogim formatima datoteka. Takođe ima podršku za 2D vektorske grafičke animacije. Paket takođe sadrži programe komandne linije za crtanje naučnih podataka. (dok)

Poke

GNU poke je interaktivni, proširivi uređivač za binarne podatke. Ne ograničavajući se na uređivanje osnovnih entiteta kao što su bitovi i bajtovi, on pruža punopravni proceduralni, interaktivni programski jezik dizajniran da opiše strukture podataka i operiše na njima. (dok)

Proxyknife

GNU proxyknife je alat za provjeru valjanosti besplatnih proksija iza firewall-a. Proces validacije je u potpunosti prilagodljiv kako bi zadovoljio vaše potrebe. (dok)

PSPP

GNU PSPP je program statističke analize. Može izvoditi deskriptivnu statistiku, T-testove, linearnu regresiju i neparametarske testove. Ima i grafički interfejs kao i unos iz komandne linije. PSPP je dizajniran da radi sa Gnumeric, LibreOffice i OpenOffice. Podaci se mogu uvoziti iz proračunskih tabela, tekstualnih datoteka i izvora baze podataka i mogu se izvesti u tekstu, PostScript-u, PDF-u ili HTML-u. (dok)

Psychosynth

GNU Psychosynth je interaktivni, modularni soft-synth. On emulira 3D površinu na koju se postavljaju moduli i manipuliše, generišući i mijenjajući muziku. Psychosynth se sastoji od C++ biblioteke, 3D interfejsa i interfejsa komandne linije. (dok)

Pth

GNU Pth je prenosiva biblioteka koja pruža ne-preemptivno planiranje zasnovano na prioritetu za višestruke niti izvršavanja. Svaka nit ima svoj programski brojač, run-time stack, signalnu masku i errno varijablu. Niti se raspoređuju na kooperativan način, a ne na standardni preventivni način, tako da se njima upravlja prema prioritetu i događajima. Međutim, Pth takođe ima emulaciju POSIX.1c niti (pthreads) za kompatibilnost unatrag. (dok)

Pyconfigure

GNU pyconfigure obezbeđuje datoteke šablona za jednostavnu implementaciju skripti za konfigurisanje usklađenih sa standardima i Makefile za pakete zasnovane na Python-u. Dizajniran je da radi zajedno sa postojećim Python skriptama za postavljanje, što olakšava integraciju u postojeće projekte. Dostupni su moćni i fleksibilni makroi Autoconf, koji vam omogućavaju da lako prilagodite proceduru instalacije na osnovu mogućnosti ciljnog računara. (dok)

Qexo

R je jezik i okruženje za statističko računanje i grafiku. Pruža niz statističkih tehnika, kao što su linearno i nelinearno modeliranje, klasični statistički testovi, analiza vremenskih serija, klasifikacija i grupisanje. Takođe pruža robusnu podršku za izradu grafikona podataka kvaliteta publikacije. Dostupna je velika količina paketa treće strane, što značajno povećava njegovu širinu i opseg. (dok)

Radijus

Radius je server za autentifikaciju i računovodstvo korisnika na daljinu. Općenito je koristan za mreže koje zahtijevaju centraliziranu autentifikaciju i računovodstvene usluge za svoje radne stanice. Autentifikacija se može izvesti na različite načine, kao što je putem /etc/passwd ili vjerodajnica pohranjenih u SQL bazi podataka. (dok)

R.C.S.

RCS je originalni sistem kontrole revizije. Radi na bazi fajl po fajl, za razliku od kasnijih sistema kontrole verzija kao što su CVS, Subversion i Git. Ovo ga može učiniti pogodnim za datoteke administracije sistema, na primjer, koje su često inherentno lokalne na jednom stroju. (dok)

Readline

GNU biblioteka readline omogućava korisnicima da uređuju komandne linije kako se upisuju. Može održavati pretražujuću historiju prethodno unesenih naredbi, omogućavajući vam da lako opozovete, uredite i ponovo unesete prethodne komande. Sadrži i Emacs-slike i vi-like povezivanja tipki, čineći njegovu upotrebu ugodnom za svakoga. (dok)

Recutils

GNU Recutils je skup alata i biblioteka za kreiranje i upravljanje tekstualnim bazama podataka koje mogu uređivati ​​ljudi. Uprkos tome što su bazirane na tekstu, baze podataka kreirane pomoću Recutilsa nose sve očekivane karakteristike kao što su jedinstvena polja, primarni ključevi, vremenske oznake i još mnogo toga. Podržano je mnogo različitih tipova polja, kao i enkripcija. (dok)

Reftex

GNU RefTex je paket za implementaciju oznaka, referenci, citata i indeksa u LaTeX dokumentima. Radi tako što obmotava četiri LaTeX makroa: label, ref, cite i index. Automatizira uobičajene zadatke koji su obično potrebni pri korištenju ovih makroa. (dok)

Daljinski upravljač

GNU Remotecontrol je web aplikacija za upravljanje HVAC termostatima i drugim uređajima za automatizaciju zgrada. Aplikacija može čitati podatke i pisati podatke na više takvih uređaja. (dok)

Rottlog

GNU Rot[t]log je program za upravljanje log datotekama. Koristi se za automatsko rotiranje datoteka dnevnika kada dostignu zadatu veličinu ili prema datom rasporedu. Također se može koristiti za automatsko komprimiranje i arhiviranje takvih dnevnika. Rot[t]log će slati izvještaje o svojim aktivnostima administratoru sistema. (dok)

Rpge

GNU Role Playing Game Engine pruža motor za kreiranje dvodimenzionalnih, grafičkih igara za igranje uloga, pružajući, na primjer, mrežu za postavljanje sprite-ova, renderiranje sprite-a i rukovanje događajima. (dok)

Rush

GNU Rush je ograničena korisnička ljuska, za sisteme na kojima korisnicima treba pružiti samo ograničenu funkcionalnost ili resurse. Administratori postavljaju korisnička prava putem konfiguracijske datoteke koja se može koristiti za ograničavanje, na primjer, komandi koje se mogu izvršiti, CPU vremena ili korištenja virtualne memorije. (dok)

Sather

GNU Sather je objektno orijentirani programski jezik sličan Eiffelu. Dizajniran je tako da bude jednostavan, efikasan, siguran i bez vlasništva. Sadrži prikupljanje smeća, statički provjereno snažno kucanje, višestruko nasljeđivanje, parametrizirane klase i još mnogo toga. Ovaj paket se sastoji od kompajlera, biblioteke klasa, specifikacije jezika i priručnika za programiranje i pretraživača za prikaz izvora i usmjerenih grafova nasljeđivanja klasa. (dok)

SCM

GNU SCM je implementacija Scheme. Ova implementacija uključuje Hobbit, Scheme-to-C kompajler, koji može generirati C datoteke čije binarne datoteke mogu biti dinamički ili statički povezane sa SCM izvršnom datotekom. (dok)

Ekran

GNU Screen je upravitelj prozora terminala koji multipleksira jedan terminal između nekoliko procesa. Svaki virtuelni terminal nudi karakteristike kao što su bafer za pomeranje unazad i mehanizam kopiranja i lepljenja. Screen zatim upravlja različitim virtuelnim terminalima, omogućavajući vam da lako prelazite između njih, da ih odvojite od trenutne sesije, ili čak podijelite prikaz da prikažete dva terminala odjednom. (dok)

Sed

Sed je neinteraktivan uređivač tekstualnih tokova. On prima tekstualni unos iz datoteke ili standardnog unosa, a zatim primjenjuje seriju naredbi za uređivanje teksta na tok i ispisuje svoj izlaz na standardni izlaz. Često se koristi za zamjenu tekstualnih obrazaca u toku. GNU implementacija nudi nekoliko proširenja u odnosu na standardni uslužni program. (dok)

Serveez

GNU Serveez je serverski okvir koji pruža rutine potrebne za jednostavnu implementaciju IP-baziranih servera u vašu aplikaciju. On demonstrira aspekte mrežnog programiranja na prenosiv način, čineći ga pogodnim i za pojednostavljenje procesa dodavanja servera vašoj aplikaciji ili za učenje o tome kako mrežne usluge rade. Nekoliko primjera servera je već dostupno, kao što su HTTP server i IRC server. (dok)

Sharutils

GNU sharutils je paket za kreiranje i manipulaciju arhivama ljuske koji se mogu lako poslati e-poštom. Arhiva ljuske je datoteka koju može obraditi ljuska Bourneovog tipa kako bi se raspakirala originalna zbirka datoteka. Ovaj paket je uglavnom za kompatibilnost i istorijski interes. (dok)

pastir

GNU Shepherd je demon koji upravlja demonima, što znači da nadzire izvršavanje sistemskih usluga, zamjenjujući sličnu funkcionalnost koja se nalazi u tipičnim init sistemima. Pruža rukovanje ovisnostima kroz pogodan interfejs i baziran je na GNU Guileu. (dok)

Shishi

GNU Shishi je besplatna implementacija Kerberos 5 mrežnog sigurnosnog sistema. Koristi se da omogući nebezbednim mrežnim čvorovima da komuniciraju na bezbedan način kroz međusobnu autentifikaciju klijent-server putem tiketa. (dok)

Shmm

GNU SHMM je upravitelj zajedničke memorije. Može čitati ili pisati u zajedničku memoriju. Takođe podržava druge komande kao što je zaključavanje ili otključavanje bloka zajedničke memorije identifikovane ključem i veličinom. (dok)

Shtool

GNU shtool je višenamjenski ljuski alat. Može obavljati funkcije mnogih različitih naredbi, kako bi obezbijedio jedan alat za distribuciju sa izvornom distribucijom kako bi se osigurala prenosivost shell skripti. Na primjer, shtool može obavljati poslove uobičajenih naredbi install , mkdir ili echo na sistemima kojima nedostaju. (dok)

Sipwitch

GNU SIP Witch je peer-to-peer Voice-over-IP server koji koristi SIP protokol. Pozivi se mogu obavljati iza NAT zaštitnih zidova i bez potrebe za provajderom usluga. Njegov peer-to-peer dizajn osigurava da nema centralne tačke za presretanje ili hvatanje medija i stoga se može koristiti za izgradnju sigurnog telefonskog sistema koji radi preko javnog interneta. (dok)

SLIB

GNU SLIB je prenosiva zajednička biblioteka za programski jezik Scheme. Podržava veliki izbor različitih implementacija šeme, nudeći im okvir za korišćenje paketa šeme procedura i sintakse. (dok)

Mali razgovor

GNU Smalltalk je besplatna implementacija Smalltalk jezika. On implementira ANSI standard za jezik i također uključuje dodatne klase kao što su one za umrežavanje i GUI programiranje. (dok)

Solfege

GNU Solfege je program za vježbanje muzičkog treninga sluha. Pomoću njega možete vježbati svoje prepoznavanje različitih muzičkih intervala i akorda. Sadrži pregled statistike tako da možete pratiti svoj napredak u nekoliko sesija. Solfege je također dizajniran da bude proširiv tako da možete lako pisati vlastite lekcije. (dok)

SpaceChart

GNU SpaceChart vam omogućava da vidite kako su zvijezde raspoređene u trodimenzionalnom prostoru. Omogućava vam, na primjer, da odredite udaljenosti između zvijezda, da ih vidite iz bilo koje tačke gledišta ili da filtrirate svoj pogled prema spektralnoj klasi i luminoznosti. (dok)

Speex

GNU Speex je kodek za audio kompresiju bez patenta posebno dizajniran za govor. Dobro je prilagođen internet aplikacijama, kao što je VoIP. Sadrži kompresiju različitih opsega u istom bitstreamu, stereo kodiranje intenziteta i detekciju glasovne aktivnosti. (dok)

Spell

Spell je program za provjeru pravopisa na komandnoj liniji. Čita kroz unos teksta i ispisuje svaku pogrešno napisanu riječ u vlastitom redu. Implementiran je kao omot za GNU aspell ili ispell. (dok)

Sqltutor

GNU Sqltutor je interaktivni SQL tutorijal zasnovan na webu. Sadrži više tutorijala dostupnih na različitim jezicima. Tutorijali predstavljaju niz pitanja u dijalogu i, kada su završeni, prikazuju konačnu evaluaciju uključujući tačne odgovore za pogrešna rješenja. (dok)

Src-highlite

GNU source-highlight čita datoteku izvornog koda i proizvodi izlaznu datoteku u kojoj su ključne riječi istaknute različitim bojama kako bi se označila njihova sintaksička uloga. Podržava preko 150 različitih jezika i može emitovati u 8 različitih formata, uključujući HTML, LaTeX i ODF. Takođe može da emituje u ANSI izlazne sekvence boja, tako da se označeni izvorni kod može videti u terminalu. (dok)

Spread Sheet Widget

Gtk+ widget koji pruža dvodimenzionalni niz za pregled i manipulaciju tabelarnim podacima sličnim onima koje pružaju popularni programi za proračunske tablice. Dizajn prati paradigmu model-pogled-kontrolor i O(1) je u vremenu i prostoru, pružajući vrlo brz i efikasan rad čak i na vrlo velikim podacima. Uključene su funkcije kao što su isecanje i lepljenje, prevlačenje i ispuštanje itd. (dok)

Stow

GNU Stow je menadžer simbolskih veza. Generira simbolične veze do direktorija podataka i čini da se čini da su spojeni u isti direktorij. Obično se koristi za upravljanje softverskim paketima instaliranim iz izvora, tako što vam omogućava da ih instalirate odvojeno u različite direktorije, a zatim kreirate simbolične veze do datoteka u zajedničkom direktoriju kao što je /usr/local. (dok)

Stump

GNU STUMP je program robomoderatora za USENET news grupe i mailing liste, koji sadrži web baziranu moderaciju. Podržava grupno moderiranje preko više ljudskih moderatora. Također može automatski odbaciti nesukladne poruke bez ljudske intervencije. Uključuje web interfejs. (dok)

Superopt

GNU Superopt je generator niza funkcija za superoptimizaciju. Koristi iscrpan pristup generiranja i testiranja da pronađe najkraći niz instrukcija za datu funkciju. (dok)

Swbis

Swbis je sistem administracije softvera koji je specificirao POSIX. Sadrži mrežno transparentno upravljanje softverskim paketima za sistemske administratore. Na primjer, cijeli direktoriji sistema datoteka mogu se kopirati od hosta do hosta preko mreže na transparentan način. Paket također sadrži napredne metode kreiranja tarball-a i mehanizme za provjeru integriteta. (dok)

Talkfilters

GNU Talk filteri su programi koji pretvaraju engleski tekst u stereotipne ili na neki drugi način duhovite dijalekte. Filteri su obezbeđeni kao C biblioteka, tako da se lako mogu integrisati u druge programe. (dok)

Tar

Tar pruža mogućnost kreiranja tar arhiva, kao i mogućnost izdvajanja, ažuriranja ili listanja datoteka u postojećoj arhivi. Korisno je za kombiniranje više datoteka u jednu veću datoteku, uz održavanje strukture direktorija i informacija o datoteci kao što su dozvole i datumi kreiranja/modifikacije. GNU tar nudi mnoga proširenja u odnosu na standardni uslužni program. (dok)

Termcap

GNU termcap je biblioteka i baza podataka koji se koriste za omogućavanje upotrebe terminala za prikaz na terminal-neovisan način. Baza podataka opisuje mogućnosti mnogih različitih terminala za prikaz. Biblioteka tada može prilagoditi generalizirane instrukcije koje daje program specifičnim mogućnostima terminala za prikaz koji se nalaze u bazi podataka. (dok)

Termutils

GNU Termutils paket sadrži dva programa, tput i tabs. tput se koristi u shell skriptama za manipulisanje prikazom terminala, na primjer brisanjem ili pomicanjem kursora na određenu tačku, centriranje teksta ili podvlačenje teksta. tabs se koristi za određivanje i postavljanje hardverskih tabulatora na terminalima koji ga podržavaju. (dok)

Teseq

GNU Teseq je program koji analizira datoteke koje sadrže kontrolne sekvence. On pretvara sekvence na koje naiđe u čovjeku čitljiv opis radnji koje te sekvence izvode. Takođe može prevesti svoj izlaz nazad u mašinski čitljive kontrolne sekvence. (dok)

TeX za nestrpljive

TeX za nestrpljive je knjiga od ~350 stranica o TeX-u, običnom TeX-u i Eplainu, koju su napisali Paul Abrahams, Kathryn Hargreaves i Karl Berry. (dok)

Texinfo

Texinfo je službeni format dokumentacije GNU projekta. Koristi jednu izvornu datoteku koristeći eksplicitne naredbe za proizvodnju konačnog dokumenta u bilo kojem od nekoliko podržanih izlaznih formata, kao što su HTML ili PDF. Ovaj paket uključuje i alate potrebne za proizvodnju Info dokumenata iz njihovog izvora i čitač informacija iz komandne linije. Naglasak jezika je na semantičkom izražavanju sadržaja, izbjegavajući fizičke naredbe za označavanje. (doc)doc

Vc-dwim paket sadrži dva alata, vc-dwim i vc-chlog. vc-dwim je alat koji pojednostavljuje zadatak održavanja ChangeLog-a i istovremenog korištenja kontrole verzija, na primjer ispisivanjem podsjetnika kada je promjena datoteke opisana u ChangeLog-u, ali datoteka nije dodana u VC. vc-chlog skenira izmijenjene datoteke i generiše unose ChangeLog usklađene sa standardima na osnovu promjena koje otkrije. (dok)

VCDImager

GNU VCDImager je paket programa za rad sa Video CD-ovima i Super Video CD-ovima. Može se koristiti za izradu, rastavljanje i analizu diskova. Podržava potpunu kontrolu reprodukcije, segmentiranje stavki za reprodukciju, automatsko popunjavanje MPEG streamova u hodu i ekstrakciju video CD-a u datoteke. (dok)

Vera

V.E.R.A. (Virtuelni entitet relevantnih akronima) je lista računalnih akronima distribuiranih kao info dokument. (dok)

Vmgen

GNU WB je disk baziran, sortiran, asocijativni niz baze podataka paket za C, Scheme, Java i C#. Umjesto da se implementira putem heširanja, WB koristi B-stabla, koja su optimizirana za korištenje minimalnog broja operacija na disku. (doc doc)

XBoard

GNU XBoard je grafička ploča za sve varijante šaha, uključujući međunarodni šah, xiangqi (kineski šah), shogi (japanski šah) i Makruk. Podržano je i nekoliko manje poznatih varijanti. Predstavlja potpuno interaktivno grafičko sučelje i može učitavati i spremati igre u Portable Game Notation. (dok)

Xlogmaster

GNU Xlogmaster je program sa grafičkim korisničkim interfejsom koji vam omogućava da nadgledate sistemske dnevnike na zgodan način. Dnevnici se mogu prikazati sa filterima za isticanje ili skrivanje linija. Program se također može koristiti za automatsko preduzimanje radnji na korisnički definiranim događajima. (dok)

Xnee

GNU Xnee je program koji može snimati, reproducirati i distribuirati korisničke akcije u X11. Može se koristiti za automatizaciju interakcija korisnika u svrhe testiranja ili demonstracije. (dok)

Xorriso

GNU Xorriso je alat za kopiranje datoteka na i sa ISO 9660 Rock Ridge, a.k.a. Compact Disc File System, fajl sistemi i omogućava manipulaciju njima na nivou sesije. Poseduje formater i snimač za CD, DVD i BD. Može raditi na postojećim ISO slikama ili može kreirati nove. xorriso se tada može koristiti za kopiranje datoteka direktno u ISO datoteke ili iz njih. (dok)

Zile

GNU Zile je lagani klon Emacsa. Njegova upotreba je slična zadanoj konfiguraciji Emacsa, ali ima mnogo lakši skup funkcija. (

GNU Opća javna licenca (GNU General Public License ili GNU Open License Agreement) je možda najpopularnija licenca za slobodni softver, kreirana od strane GNU projekta 1988. godine. Također se naziva GNU GPL skraćeno, ili čak samo GPL, ako kontekst je jasan. , da govorimo konkretno o ovoj licenci (postoji još dosta licenci koje sadrže riječi „opća javna licenca“ u naslovu). Druga verzija ove licence objavljena je 1991. godine, a treća verzija, nakon dugogodišnjeg rada i duge rasprave, 2007. godine. GNU manja opšta javna licenca (LGPL) je oslabljena verzija GPL-a za određene softverske biblioteke. GNU Affero General Public License je ojačana verzija GPL-a za programe namijenjene za pristup preko mreže.

Svrha GNU GPL-a je pružiti korisniku prava na kopiranje, modificiranje i distribuciju (uključujući komercijalne) programa (što je po defaultu zabranjeno zakonom o autorskim pravima), kao i da osigura da korisnici svih izvedenih programa dobiju gore navedena prava . Princip “nasljeđivanja” prava naziva se “copyleft” (transliteracija engleskog “copyleft”) i izmislio ga je Richard Stallman. Za razliku od GPL-a, vlasničke softverske licence vrlo rijetko daju korisniku takva prava i obično imaju tendenciju da ih ograniče, na primjer zabranom obnavljanja izvornog koda.

GPL daje primaocima kompjuterskih programa sljedeća prava, ili "slobode":

* sloboda pokretanja programa za bilo koju svrhu;
* sloboda proučavanja kako program radi i modifikacije (preduslov za to je pristup izvornom kodu);
* sloboda distribucije kopija;
* sloboda poboljšanja programa i objavljivanja poboljšanja u javnosti (preduslov za to je pristup izvornom kodu).
izvor

GNU OS

GNU je rekurzivni akronim iz engleskog. GNU's Not UNIX - "GNU nije Unix!") je besplatni operativni sistem sličan UNIX-u koji je razvio GNU Project.

Razvoj GNU sistema je počeo 27. septembra 1983. godine, kada je Richard Stallman objavio najavu o projektu u net.unix-wizards i net.usoft news grupama. 5. januara 1984. Stallman je dao ostavku na MIT kako bi posvetio svoje vrijeme pisanju besplatnog operativnog sistema, kao i da bi osigurao da institut ne može tražiti nikakva prava na izvorni kod sistema. Prvi GNU program je bio Emacs uređivač teksta.

Trenutno je GNU/Linux sistem, šire poznat kao jednostavno Linux, prilično raširen (posebno na tržištu servera) i prilično je kompletan. Sastoji se od velikog broja GNU projektnih programa (prvenstveno sistemskih uslužnih programa i GNU alata), Linux kernela – dijela sistema koji je odgovoran za pokretanje drugih programa, uključujući drajvere uređaja, itd. – i mnogih drugih besplatnih programa.

Najnoviji materijali u sekciji:

Stvaranje i testiranje prve atomske bombe u SSSR-u
Stvaranje i testiranje prve atomske bombe u SSSR-u

Generalni sekretar Centralnog komiteta KPSS Mihail Gorbačov je 29. jula 1985. objavio odluku SSSR-a da jednostrano zaustavi sve nuklearne eksplozije prije 1.

Svjetske rezerve uranijuma.  Kako podijeliti uranijum.  Vodeće zemlje po rezervama uranijuma
Svjetske rezerve uranijuma. Kako podijeliti uranijum. Vodeće zemlje po rezervama uranijuma

Nuklearne elektrane ne proizvode energiju iz zraka, one također koriste prirodne resurse - prije svega, uranijum je takav resurs...

Kineska ekspanzija: fikcija ili stvarnost
Kineska ekspanzija: fikcija ili stvarnost

Informacije sa terena - šta se dešava na Bajkalskom jezeru i na Dalekom istoku. Da li kineska ekspanzija prijeti Rusiji? Anna Sochina Siguran sam da više puta...