Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja

Ovaj članak govori o tome kako su grafike strukturirane u Linux i od kojih komponenti se sastoji. Sadrži mnogo snimaka ekrana različitih implementacija desktop okruženja. 

Ako ne pravite veliku razliku između KDE-a i GNOME-a, ili ako pravite, ali biste željeli znati koje druge alternative postoje, onda je ovaj članak za vas. To je pregled i, iako sadrži mnogo naziva i nekoliko termina, materijal će biti koristan i početnicima i onima koji tek istražuju ovo područje. Linux.

Ova tema bi mogla biti zanimljiva naprednim korisnicima, bez obzira da li postavljaju udaljeni pristup ili implementiraju tankog klijenta. Često susrećem iskusne Linux korisnike koji tvrde: "Server ima samo komandnu liniju, a ne planiram detaljno proučavati grafiku, jer je to sve za osnovne korisnike." Ali čak i stručnjaci... Linux Sa velikim iznenađenjem i radošću otkrivaju opciju "-X" ssh naredbe (a za to je korisno razumjeti rad i funkcije X servera).

Kako su grafike raspoređene u LinuxPregled različitih desktop okruženjaIzvor

Predajem kurseve već skoro 15 godina. Linux u "Mrežna akademija LANIT"i siguran sam da mnogi od više od pet hiljada ljudi koje sam obučio čitaju i vjerovatno pišu članke na Habr-u. Kursevi su uvijek vrlo intenzivni (prosječno trajanje kursa je pet dana), pokrivajući teme za čije bi potpuno razumijevanje bilo potrebno najmanje deset dana. A tokom kursa, u zavisnosti od publike (početnici ili iskusni administratori) i "pitanja iz publike", uvijek biram šta ću detaljnije prenijeti, a šta površnije obraditi, posvećujući više vremena uslužnim programima komandne linije i njihovoj praktičnoj primjeni. Ima mnogo takvih tema koje se moraju malo žrtvovati. Ovo je "Historija" Linux", "Razlike u distribucijama Linux"," "O licencama: GPL, BSD, ...", "O grafici i desktop okruženjima" (tema ovog članka), itd. Nije da su nevažna, ali obično postoji mnogo hitnijih pitanja "ovdje i sada" i samo nekih pet dana... Međutim, za opće razumijevanje osnova OS-a Linux, razumijevanje dostupne raznolikosti (tako da čak i korištenje jedne specifične distribucije Linux, ipak imaju širi pogled na cijeli ovaj ogroman i beskrajan svijet koji se zove "Linux„“) Korisno je i potrebno proučavati ove teme. 

U cijelom članku, za svaku komponentu, dajem veze za one koji žele dublje zaroniti u temu, na primjer, na članke na Wikipediji (dok ukazujem na potpuniju / korisniju verziju ako postoje članci na engleskom i ruskom).

Za osnovne primjere i snimke ekrana koristio sam openSUSE distribuciju. Bilo je moguće koristiti bilo koju drugu distribuciju razvijenu u zajednici sa velikim brojem paketa u spremištu. Teško je, ali moguće, demonstrirati raznolikost dizajna desktopa na komercijalnoj distribuciji, jer često koriste samo jedno ili dva od poznatijih desktop okruženja. Dakle, programeri sužavaju zadatak izdavanja stabilnog OS sa otklonjenim greškama. Na istom sistemu sam instalirao sve DM/DE/WM (objašnjenje ovih pojmova ispod), koje sam našao u spremištu. 

Snimci ekrana sa "plavim okvirima" su upravo napravljeni na openSUSE. 

Snimci ekrana sa "belim okvirima" napravljeni su na drugim distribucijama, oni su naznačeni na snimku ekrana. 

Snimke ekrana sa "sivim obrubama" preuzete su sa interneta, kao primjeri desktop dizajna iz prošlosti.

Dakle, počnimo.

Glavne komponente koje čine grafiku

Izdvojiću tri glavne komponente i navesti ih redosledom kojim se pokreću pri pokretanju sistema: 

  1. DM (Display Manager);
  2. server za prikaz;
  3. DE (Desktop okruženje).

Pored toga, kao važne podstavke desktop okruženja: 

  • Upravitelj/Pokretač/Prekidač aplikacija (dugme Start); 
  • WM (Window Manager);
  • razni softver koji dolazi sa desktop okruženjem.

Više detalja o svakoj stavci.

DM (Display Manager)

Prva aplikacija koja se pokreće kada se pokrene "grafika" je DM (Display Manager), upravitelj zaslona. Njegovi glavni zadaci:

  • pitati koje korisnike pustiti u sistem, tražiti podatke za autentifikaciju (lozinka, otisak prsta);
  • odaberite koje okruženje radne površine želite pokrenuti.

Trenutno se široko koriste različite distribucije: 

  • SDDM (promijenjeno kdm),
  • GDM,
  • LightDM,
  • xdm.
  • Također vrijedi spomenuti Fly-DM (koristi se u AstriLinux).

Lista postojećih DM-a se ažurira Wiki članak. 

Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
Vrijedi napomenuti da sljedeći snimci ekrana koriste isti LightDM display manager, ali u različitim distribucijama (nazivi distribucija su u zagradama). Provjerite koliko drugačije ovaj DM može izgledati zahvaljujući radu dizajnera različitih distribucija.

Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
Glavna stvar u ovoj raznolikosti je da se jasno stavi do znanja da postoji aplikacija koja je odgovorna za pokretanje grafike i omogućavanje korisniku pristup toj grafici, a postoje različite implementacije ove aplikacije koje se razlikuju po izgledu i određenoj funkcionalnosti (izbor dizajna okruženja, izbor korisnika, verzija za loše vidljive korisnike, mogućnost daljinskog pristupa putem protokola XDMCP).

Display Server

Display Server je svojevrsna grafička osnova, čiji je glavni zadatak rad sa video karticom, monitorom i raznim ulaznim uređajima (tastatura, miš, touchpad). Odnosno, aplikacija (na primjer, pretraživač ili uređivač teksta) koja je prikazana u "grafici" ne mora znati kako raditi direktno s uređajima, ne mora znati o drajverima. Za sve to brine X Window.

Kada je u pitanju Display Server, on postoji već dugi niz godina. Linux, a u Unixu je to bilo zamišljeno kao aplikacija X sistem prozora ili kod običnih ljudi X (X). 

Sada mnoge distribucije zamjenjuju X sa Wayland. 

Također možete pročitati:

Prvo, pokrenimo X-ove i nekoliko grafičkih aplikacija u njima.

Praktikum "pokreni X i aplikacije u njemu"

Sve ću raditi od novokreiranog webinaruser korisnika (bilo bi lakše, ali ne i sigurnije, sve raditi iz root-a).

  • Pošto je H'amu potreban pristup uređajima, dajem pristup: Odredio sam listu uređaja gledajući greške prilikom pokretanja X-a u dnevniku (/home/webinaruser/.local/share/xorg/Xorg.77.log) 

% sudo setfacl -m u:webinaruser:rw /dev/tty8 /dev/dri/card0 /dev/fb0 /dev/input/*

  • Nakon toga pokrećem X-ove:

% X -retro :77 vt8 & 

Opcije: * -retro - počnite sa "sivom" klasičnom pozadinom, a ne crnom kao zadanom; * :77 - Postavio sam (moguće je bilo koji u razumnom opsegu, samo :0 je najvjerovatnije već zauzeto već pokrenutom grafikom) broj ekrana, neki stvarni jedinstveni identifikator pomoću kojeg će biti moguće razlikovati nekoliko aktivnih X-ova; * vt8 - specificira terminal, ovdje /dev/tty8, na kojem će biti prikazani X). 

  • Pokretanje grafičke aplikacije:

Da bismo to učinili, prvo postavljamo varijablu pomoću koje će aplikacija razumjeti koji od X-ova pokrećem da pošalje ono što treba nacrtati: 

% export DISPLAY=":77" 

Listu pokrenutih X-ova možete vidjeti ovako: 

ps -fwwC X

Nakon što je varijabla postavljena, možemo pokrenuti aplikacije u našim X-ovima - na primjer, pokrećem sat:

% xclock -update 1 & 

% xcalc & 

% xeyes -g 200x150-300+50 &

Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
Glavne ideje i zaključci iz ovog fragmenta:

  • X treba pristup uređajima: terminalu, video kartici, ulaznim uređajima,
  • Sami X ne prikazuju nikakve elemente interfejsa - to je sivo (ako je sa opcijom "--retro") ili crno platno određenih veličina (na primjer, 1920 × 1080 ili 1024 × 768) za pokretanje grafičkih aplikacija u njemu.
  • Kretanje "križa" pokazuje da X prati poziciju miša i prenosi ove informacije aplikacijama koje se u njemu pokreću.
  • Također, X-ovi hvataju tipke na tastaturi i prosljeđuju ove informacije aplikacijama.
  • Varijabla DISPLAY govori grafičkim aplikacijama na kojem ekranu (svaki X-ovi se pokreću s jedinstvenim brojem ekrana pri pokretanju), a time i koji od onih koji rade na mojoj mašini da nacrtaju X-ove. (Takođe je moguće postaviti ovu varijablu na udaljenu mašinu i poslati izlaz na X-ove koji rade na drugoj mašini na mreži.) Pošto su X-ovi pokrenuti bez opcije -auth, nema potrebe da se bavite promenljivom XAUTHORITY ili xhostom komanda.
  • Grafičke aplikacije (ili kako ih zovu X-klijenti) crtaju se u X-ovima - dok bez mogućnosti pomicanja/zatvaranja/promjene "-g (Širina)x(Visina)+(ShiftFromLeftEdge)+(ShiftFromTopEdge)". Sa znakom minus, s desne i donje ivice.
  • Dva termina vrijedna spomena su X server (kako se X zove) i X klijenti (kako se zove svaka grafička aplikacija koja radi u X). Postoji mala zbrka u razumijevanju ove terminologije, mnogi je razumiju upravo suprotno. U slučaju kada se povežem sa „klijent mašine“ (u terminologiji udaljenog pristupa) na „server“ (u terminologiji udaljenog pristupa) da bih prikazao grafičku aplikaciju sa servera na svom monitoru, tada se X server pokreće na mašina na kojoj se monitor (odnosno na "klijentskoj mašini", a ne na "serveru") i X klijenti pokreću i pokreću na "serveru", iako su prikazani na monitoru "klijentske mašine". 

Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja

DE komponente

Zatim ćemo analizirati komponente koje obično čine radnu površinu.

DE komponente: dugme Start i traka zadataka

Počnimo sa takozvanim dugmetom "Start". Često je ovo poseban aplet koji se koristi na "traci zadataka". Obično postoji i aplet za prebacivanje između pokrenutih aplikacija.

Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
Nakon što bih pogledao različita desktop okruženja, takve aplikacije bih sažeo pod opštim nazivom "Upravitelj aplikacijama (Launcher / Switcher)", odnosno alat za upravljanje aplikacijama (pokretanje i prebacivanje između pokrenutih), a također bih naveo uslužne programe koji su primjer aplikacije ovog tipa.

  • To se događa u obliku dugmeta "Start" na klasičnoj (cijela dužina jedne od ivica ekrana) "traci zadataka":

    ○ xfce4-panel,
    ○ mate-panel/gnome-panel,
    ○ vala panel,
    ○ nijansa2.

  • Također možete posebno istaknuti "trake zadataka u obliku MacOS-a" (ne cijelom dužinom ivice ekrana), iako se mnoge trake zadataka mogu pojaviti u oba. Ovdje je, prije, glavna razlika čisto vizualna - prisutnost "efekta povećanja ikona pri lebdenju".

    ○ priključna stanica,
    ○ latte dock,
    ○ pristanište u Kairu,
    ○ daska.

  • I / Ili servis koji pokreće aplikacije kada se pritisnu prečice (u mnogim desktop okruženjima slična komponenta je nužno prisutna i omogućava vam da konfigurišete sopstvene prečice):

    ○ sxhkd.

  • Tu su i razni "lanseri" u obliku menija (od engleskog. Launch (pokreni)):

    ○ dmenu-run,
    ○ rofi -show drun,
    ○ Albert,
    ○ grunge.

Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja

DE komponente: WM (Window Manager)

Pročitajte više na ruskom

Pročitajte više na engleskom

WM (Window Manager) - vrsta aplikacije koja je odgovorna za upravljanje prozorima, dodaje mogućnost:

  • pomeranje prozora po radnoj površini (uključujući i standardni sa držanjem tastera Alt za bilo koji deo prozora, a ne samo za naslov);
  • promjena veličine prozora, na primjer, povlačenjem "prozorskog okvira";
  • dodaje “naslov (naslov)” i dugmad za minimiziranje/maksimiziranje/zatvaranje aplikacije u prozorski interfejs;
  • koncept čija je aplikacija u "fokusu".

Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
Navešću one najpoznatije (u zagradama označavam koji se DE koristi podrazumevano):

Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
Navešću i "stari WM sa DE elementima". One. pored menadžera prozora, imaju elemente kao što su dugme Start i traka zadataka, koji su više svojstveni punopravnom DE. Iako su "stari" ako su i IceWM i WindowMaker već objavili svoje ažurirane verzije 2020. Ispostavilo se da je ispravnije ne "stari", već "oldtajmeri":

Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
Osim "klasičnih" ("upravljači prozorima steka"), vrijedi posebno napomenuti popločan WM, koji omogućava postavljanje prozora na cijeli ekran, a za neke aplikacije i zasebnu radnu površinu za svaku pokrenutu aplikaciju na cijelom ekranu. Ovo je malo neuobičajeno za ljude koji ih ranije nisu koristili, ali s obzirom da i sam koristim takav interfejs dosta dugo, mogu reći da je prilično zgodan i da se brzo naviknete na takav interfejs, nakon čega „klasični“ menadžeri prozora ne izgledaju zgodni.

Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
Također je vrijedno posebno spomenuti projekat Compiz i koncept "kompozitnog upravitelja prozora", koji koristi hardversko ubrzanje za prikaz transparentnosti, sjena i raznih 3D efekata. Prije otprilike 10 godina, došlo je do procvata 3D efekata na Linux-desktopovi. Danas mnogi upravitelji prozora ugrađeni u DE djelimično koriste mogućnosti kompozitinga. Nedavno, Wayfire - proizvod sa sličnom Compiz funkcionalnosti za Wayland.

Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
Detaljnu listu raznih menadžera prozora možete pronaći i na  uporedni članak.

DE komponente: ostalo

Također je vrijedno napomenuti sljedeće komponente desktopa (ovdje koristim ustaljene termine na engleskom da opišem vrstu aplikacije - ovo nisu nazivi samih aplikacija):

  • Apleti:
  • Softver (Widget toolkit) - često određeni "minimalni set" softvera dolazi sa okruženjem:

DE (Desktop okruženje)

Pročitajte više na engleskom

Od gore navedenih komponenti dobija se takozvano "Desktop okruženje". Često se sve njegove komponente razvijaju koristeći iste grafičke biblioteke i koristeći iste principe dizajna. Tako se, barem, održava opći stil izgleda aplikacija.

Ovdje možemo istaknuti sljedeća trenutno postojeća desktop okruženja:

GNOME i KDE se smatraju najčešćim, a XFCE im je za petama.

Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
Poređenje po različitim parametrima u obliku tabele može se pogledati u odgovarajućem Wikipedia članak.  

Variety DE

Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
Project_Looking_Glass

Postoje čak i takvi zanimljivi primjeri iz historije: u periodu 2003-2007. Linux Sun je kreirao "3D temu za radnu površinu" pod nazivom "Project Looking Glass". I sam sam koristio ovu radnu površinu, ili bolje rečeno "igrao se s njom", jer je bila teška za korištenje. Ova "3D tema" je napisana u Javi u vrijeme kada još nisu postojale 3D grafičke kartice. Stoga je procesor preračunavao sve efekte, a računar je morao biti vrlo moćan, inače bi sve radilo sporo. Ali ispalo je prekrasno. Paneli 3D aplikacije mogli su se rotirati i rasklapati. Mogli ste se rotirati u cilindru radne površine s panoramskom pozadinom od 360 stepeni. Bilo je nekoliko lijepih aplikacija: na primjer, slušanje muzike u obliku "CD changera" itd. Možete je pogledati na YouTubeu. видео u vezi sa ovim projektom, samo će kvalitet ovih videa najvjerovatnije biti loš, jer tih godina nije bilo moguće uploadati video zapise visokog kvaliteta.

Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
Xfce

Lagana radna površina. Projekat postoji dugo, od 1996. godine. Posljednjih godina prilično popularan, za razliku od težih KDE-a i GNOME-a, na mnogim distribucijama koje zahtijevaju lagan i "klasičan" desktop interfejs. Ima mnogo postavki i veliki broj svojih programa: terminal (xfce4-terminal), upravitelj datoteka (thunar), preglednik slika (ristretto), uređivač teksta (podloga za miš).

 
Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
panteon 

Koristi se u Elementary OS distribuciji. Može se reći da postoje desktop računari razvijeni i korišteni unutar jedne distribucije, a ne široko korišteni (ako ne i potpuno nekorišteni) u drugim distribucijama. Barem još nisu stekli popularnost niti uvjerili veliku publiku u prednosti svog pristupa. Pantheon ima za cilj izgraditi interfejs sličan macOS. 

Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
Opcija priključne ploče:

Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
prosvjećivanje

Snažan fokus na grafičke efekte i widgete (još od vremena kada druga desktop okruženja nisu imala vidžete na radnoj površini, kao što je kalendar/sat). Koristi vlastite biblioteke. Postoji veliki skup njegovih "lijepih" aplikacija: terminal (Terminologija), video plejer (Rage), preglednik slika (Ephoto).

Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
Moksha

Ovo je fork Enlightenment17, koji se koristi u Bodhi distribuciji.Linux. 

Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
GNOME

Prvobitno "klasično" desktop interfejs, kreiran u suprotnosti sa KDE, koji je napisan na QT biblioteci, u to vreme distribuiran pod licencom koja nije bila baš zgodna za komercijalne distribucije. 

Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
GNOME_Shell

Od treće verzije GNOME-a, GNOME je počeo da se isporučuje sa GNOME Shell-om, koji ima "neklasičan izgled", što se nije svidjelo svim korisnicima (sve iznenadne promjene u interfejsima korisnici teško mogu prihvatiti). Kao rezultat - pojava fork projekata koji nastavljaju razvoj ove radne površine u "klasičnom" stilu: MATE i Cinnamon. Standardno se koristi u mnogim komercijalnim distribucijama. Ima veliki broj postavki i njegovih aplikacija. 

Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
MATE 

Pojavio se na bazi GNOME2 i nastavlja da razvija ovo okruženje. Ima veliki broj podešavanja i forks aplikacija koje su korišćene još u GNOME2 (novi nazivi se koriste kako se viljuške ne bi pobrkale sa njihovom novom verzijom za GNOME3).

Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
cimet

Fork GNOME Shell-a koji korisnicima pruža "klasični" stil interfejsa (kao što je bio u GNOME2). 

Ima veliki broj postavki i iste aplikacije kao za GNOME Shell.

Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
Budgie

Fork GNOME-a u "klasičnom" stilu koji se razvio kao dio Solus distribucije, ali sada dolazi i kao samostalna radna površina na raznim drugim distribucijama.

Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
KDE_Plasma (ili, kako se to često naziva, samo KDE) 

Desktop okruženje razvijeno od strane KDE projekta. 

Ima ogroman broj postavki dostupnih jednostavnom korisniku iz grafičkog interfejsa i mnoge grafičke aplikacije razvijene u okviru ove radne površine.

Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
trojstvo

U 2008, KDE je objavio svoju novu implementaciju KDE Plasma (desktop engine je uvelike prepisan). Takođe, kao i sa GNOME/MATE, nije se svideo svim KDE fanovima. Kao rezultat toga, pojavio se fork projekta, koji nastavlja razvoj prethodne verzije, nazvan TDE (Trinity Desktop Environment).

Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
Deepin_DE

Jedno od novih desktop okruženja, napisano korištenjem Qt-a (istog jezika koji koristi KDE). Nudi širok raspon opcija prilagođavanja i prilično lijep (iako subjektivan) i sofisticiran interfejs. Razvija se kao dio Deepin distribucije. LinuxPostoje i paketi za druge distribucije.

Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
letjeti 

Primjer desktop okruženja napisanog korištenjem Qt-a. Razvijeno kao dio distribucije Astra Linux. 

Kako su grafike raspoređene u LinuxPregled različitih desktop okruženja
LXQt

Lagano desktop okruženje. Kao i nekoliko prethodnih primjera, napisanih pomoću Qt. Zapravo, to je nastavak LXDE projekta i rezultat spajanja s projektom Razor-qt.

Kao što vidite, radna površina je u Linux Interfejs može izgledati vrlo različito, i postoji nešto za svačiji ukus: od vrlo lijepih sa 3D efektima do minimalističkih, od "klasičnih" do neobičnih, od onih koji aktivno koriste sistemske resurse do laganih, od velikih ekrana do tableta/pametnih telefona.

Pa, nadam se da sam uspio dati ideju o glavnim komponentama koje čine grafiku i radnu površinu u operativnom sistemu. Linux.

Materijal za ovaj članak testiran je u julu 2020. na webinaru. Može se pogledati ovdje.

To je sve. Nadam se da je bilo od pomoći. Ako imate bilo kakvih pitanja i komentara, pišite. Biće mi drago da odgovorim. Pa, dođi i uči Mrežna akademija LANIT!

izvor: www.habr.com

Kupite pouzdan hosting za sajtove sa DDoS zaštitom, VPS VDS servere 🔥 Kupite pouzdan web hosting sa DDoS zaštitom, VPS VDS servere | ProHoster