Okna.  Wirusy.  Notatniki.  Internet.  biuro.  Narzędzia.  Kierowcy

Pozdrowienia! Przekopując się przez szkice, znalazłem stary szkic artykułu, który zamierzałem napisać kilka miesięcy temu. Niestety okoliczności życiowe (i nie tylko) nie pozwoliły na wykonanie tego w terminie. Ale teraz w końcu znalazłem czas i dzisiaj porozmawiamy o kilku menedżerach okien w popularnych środowiskach graficznych dla Linuksa. Omówię szczegółowo funkcje menedżera okien, funkcjonalność, napiszę o tak zwanych złożonych menedżerach okien i tak dalej. Mam nadzieję, że wszyscy będą zainteresowani. Zaczynajmy.

menedżer okien to program zarządzający oknami aplikacji w systemie. Mianowicie: pozycjonuje okna na ekranie, odpowiada za zmianę ich wielkości, ustawianie ostrości i tak dalej. W której menedżer okien działa na istniejącym systemie okiennym. Mówiąc najprościej, menedżer okien po prostu zarządza oknami i interakcją sprzętu wejściowego z nimi i nie robi z nimi nic więcej. W tym przypadku obciążenie renderowania spada na procesor centralny (tzw renderowanie oprogramowania). Niektóre menedżery okien, oprócz zarządzania oknem, mogą rysować cienie na jego krawędziach, dodawać różne animacje, gładkość, przezroczystość i tak dalej. W tym przypadku jest to menedżer okien złożony. Jedną z najważniejszych (ale opcjonalnych) funkcji złożonego menedżera okien jest wykorzystanie okna możliwości karty graficznej do rysowania, zwykle poprzez OpenGL. Zwiększa to jakość renderowania i znacznie zmniejsza obciążenie procesora. Funkcjonalność złożonego menedżera może być wbudowana w menedżera okien lub być oddzielny program. Często rysowanie okna za pomocą złożonego menedżera okien nazywa się po prostu - komponowanie. Jeśli znasz system Windows, oto przykład z System Windows 7: gdy efekty są wyłączone Aero, rysowanie odbywa się siłami procesor. Obciążenie karty graficznej jest mniejsze, jednak podczas odtwarzania wideo na ekranie pojawiają się artefakty zwane rozrywaniem (gdy klatki zmieniają się zbyt szybko, a na środku widoczny jest przezroczysty, migoczący pasek).

Gdy efekty Aero są włączone, renderowaniem zajmuje się karta graficzna. Co staje się oczywiste, ponieważ są animacje wyglądu i minimalizacji okna, przezroczystości i tak dalej.

Jednak komponowanie ma również wady. Podczas renderowania pulpitu z kartą graficzną liczba klatek na sekundę jest zsynchronizowana z częstotliwością monitora (zwykle 60 klatek na sekundę, co odpowiada standardowym monitorom 60 Hz), więc w grach liczba klatek na sekundę będzie nieco niższa, ponieważ będzie dwukrotnie synchronizacja ramek. W ciężkich przypadkach wydajność gry może spaść o połowę. Dlatego często można znaleźć zalecenia dotyczące wyłączania efektów graficznych podczas uruchamiania gier (na przykład wyłącz to samo Aero w Windows 7). Wróćmy do Linuksa. W ten moment Dominującym podsystemem graficznym w Linuksie jest Xorg(X). A praca menedżera okien w nim jest dokładnie taka sama, jak opisałem powyżej. Jednocześnie funkcjonalność tworzenia kompozycji nie była pierwotnie w Xorg i została zaimplementowana znacznie później, ponieważ menedżer kompozycji działa tam niejako z boku. Ogólnie okazuje się, że jest to bardzo gruba kanapka. różne warstwy, przez które rysowany jest obraz.

W większości przypadków nie jest to istotne dla użytkownika. Ale w grach daje namacalne ograniczenia. Teraz Xorg jest zastępowany przez dwa podsystemy graficzne - Waylanda I Mir. Pierwszy nie jest powiązany z żadną dystrybucją ani powłoką graficzną, podczas gdy drugi jest opracowywany ubuntu i jej powłoka graficzna Jedność i działa już w mobilnej wersji Ubuntu. O Mirze porozmawiamy w osobnym artykule. Jeśli chodzi o Waylanda, brakuje mu typowych koncepcji menedżera okien i kompozytów. Ma tylko kompozytor, który wykonuje wszystkie operacje na oknach, bez zbędnych warstw. Jednocześnie rysunek aplikacji przypada na narzędzie programowe (zestaw narzędzi), na którym jest napisany. Na przykład Qt, Lub GTK. Ten tzw renderowanie po stronie klienta. Jeśli okno jest rysowane bezpośrednio w kompozytorze Waylanda, nazywa się to renderowanie po stronie serwera. W przypadku renderowania po stronie klienta tytuł okna aplikacji, jego wygląd i tak dalej leży wyłącznie po stronie twórcy aplikacji. W efekcie tzw. efekt okien": jeśli aplikacja nie posiada funkcji zmiany rozmiaru okna, to okno aplikacji zawsze będzie miało stały rozmiar. Przykład okna z dekoracją tytułu po stronie klienta (zwróć uwagę na przyciski kontrolne aplikacji w tytule okna):

Ta funkcjonalność jest zaimplementowana w środowisku GNOME. W KDE używane jest renderowanie po stronie serwera, w wyniku czego wszystkie okna będą miały ten sam tytuł i łatwo zmienią rozmiar:

Nawiasem mówiąc, jeśli uruchomisz aplikację z CSD (Client-Side Decorations) w menedżerze okien, który nie obsługuje renderowania po stronie klienta, aplikacja otrzyma dwa nagłówki:

CSD, nawiasem mówiąc, okazało się całkiem niezłym rozwiązaniem. Tak udany, że został przejęty przez samego Apple:

Wayland działa już w samochodowych systemach operacyjnych, w mobilnych systemach operacyjnych Tizen I SailfishOS, oraz w wielu innych miejscach. Filozofia Waylanda - „Każda klatka wyjściowa musi być idealna”. I rzeczywiście tak jest. Rysowanie w Wayland jest lepszej jakości niż w Xorg (na przykład łzawienie jest w zasadzie niemożliwe w Wayland), plus wszystko - w Wayland bardzo trudno jest stworzyć keyloggery(przechwytywacze klawiatury), co pozytywnie wpływa na bezpieczeństwo. Jednak Wayland nie jest jeszcze obsługiwany przez zastrzeżone sterowniki. Nvidia I AMD, co bardzo utrudnia domyślne wprowadzenie go do Dystrybucje Linuksa. Do kwestii wspierania go za pomocą powłok graficznych Linuksa wrócimy nieco później. Na ten temat można mówić bardzo długo, dlatego proponuję przejść bezpośrednio do przeglądu menedżerów okien w popularnych środowiskach graficznych w systemie Linux.

metamiasto- menedżer okien nieżyjącego już środowiska graficznego GNOME2. Przyszedł, aby wymienić te używane tam Ryba piła I Oświecenie. Ma bardzo skromne zużycie zasobów. Obsługuje proste komponowanie oprogramowania (rzucanie cieni, przezroczystości, podglądy okien). Pierwotnie został napisany w GTK+2, później przepisany na GTK+3, co umożliwiło użycie go w GNOME 3.0-3.8. Obecnie część projektu Flashback GNOME, stosuje się w środowisko graficzne Cynamon działać na sprzęcie, który nie obsługuje sprzętowej akceleracji graficznej i jest również dostępny jako opcja w Mennica Linuksa KUMPEL I UbuntuMATE.

Mruczeć- dalszy rozwój Metacity dla GNOME 3. Mutter jest w pełni menedżerem kompozycji, używa wysokowydajnej biblioteki do renderowania 2D Grafika wektorowa Kair, a do renderowania 3D — Nieład, który służy do przyspieszenia OpenGL. Operacja powłoki Powłoka GNOME zaimplementowany jako wtyczka do Muttera, w wyniku czego wszystkie funkcje tego menedżera okien są wykorzystywane we wszystkich funkcjach GNOME 3. Począwszy od GNOME 3.10, środowisko nie może działać bez Muttera. Mutter jest również menedżerem okien z najbardziej kompletnym i kompletnym wsparciem dla Waylanda, rysowanie odbywa się po stronie klienta (klientem jest biblioteka GTK+3). Funkcjonalność Muttera można rozszerzyć o wtyczki. Mutter nie jest lekkim menedżerem okien i absolutnie nie nadaje się do starego i słabego sprzętu.

muffinka- rozwidlenie Muttera od twórców środowiska graficznego Cynamon. Opracowany przez zespół programistów Mennica Linuksa. Muffin dziedziczy wiele funkcji Mutter, a także używa Cairo i Clutter do renderowania. Jednak nie obsługuje Wayland (programiści nie uważają go jeszcze za gotowy do użycia), a także abstrakty z dala od funkcji GTK + (jeśli wydania Mutter są powiązane z wydaniami GTK +, to Muffin można zbudować z dowolną wersją GTK +, nie niższy niż minimalny obsługiwany). W przeciwieństwie do Mutter, Muffin konsumuje prawie o połowę mniej pamięć o swobodnym dostępie, a także mniej ładuje podsystem wideo, co czyni Cinnamon idealnym rozwiązaniem dla budżetowych laptopów. Funkcjonalność można również rozszerzyć za pomocą wtyczek.

Marco- rozwidlenie Metacity od twórców środowiska graficznego KUMPEL. Wykorzystuje te same zasady renderowania okien, tworzenia oprogramowania i tak dalej. Można zastąpić Metacity lub Compiz.

Komp- jeden z pierwszych w pełni złożonych menedżerów okien z dużą funkcjonalnością i obsługą rozszerzeń. Początkowo Compiz działał tylko z obsługiwanym sprzętem 3D. xgl: głównie karty graficzne NVIDIA I ATi. Ale od 22 maja 2006 Compiz działa na standardowym serwerze X.org używając AIGLX . Z wyjątkiem karty graficzne Intela Obsługuje GMA, AIGLX karty graficzne AMD(zaczynając od R300) w przypadku korzystania z otwartych sterowników. Słynny Pulpity Cube i innych wtyczek dekoracyjnych. W połączeniu z dekoratorem okien Szmaragd, był kiedyś najpopularniejszym sposobem pokazywania możliwości graficzne Linux (wiele stworzonych przez niego efektów nie było dostępnych w innych system operacyjny tamtych czasów, a niektóre zostały skopiowane z Compiza). Compiz może być używany jako całkowicie samodzielny menedżer okien, renderujący całkowicie sprzętowo za pośrednictwem OpenGL. Menedżery okien Metacity, Marco i Xfwm4 są bardzo często zastępowane przez Compiza, przede wszystkim po to, by pozbyć się łzawienia. Obecnie oficjalny rozwój Compiza jest zamknięty. Gałąź 0.8 jest utrzymywana przez entuzjastów, a 0.9 przez programistów Ubuntu, dla powłoki graficznej Unity 7, która, podobnie jak powłoka GNOME dla Mutter, jest wtyczką do Compiza. Compiz jest również dostępny jako opcja w Linux Mint MATE i UbuntuMATE.




xfwm4- standardowy graficzny menedżer okien xfce. Od wersji 4.2 nauczyłem się komponowania oprogramowania. Ten menedżer okien jest bardzo lekki, prosty i można go używać nie tylko w Xfce, ale także np. w MATE. Twórcy obecnie przenoszą go do GTK+ 3, a także wdrażają obsługę renderowania przez OpenGL. Może być zastąpiony przez Compiza, Metacity lub Marco.

królowa jest jednym z najbardziej kompletnych, stabilnych i elastycznych menedżerów okien w systemie Linux. Jest standardem dla środowiska graficznego KDE. Począwszy od KDE 4, stał się w pełni kompozytowy, obsługuje wiele efektów z Compiza, może być używany do renderowania OpenGL 2.0, 3.1 , OpenGL ES lub renderowanie przez rozszerzenie Xrender, może zostać zablokowany przez aplikację pełnoekranową (na przykład grę, zwiększając tym samym wydajność), ma szerokie możliwości dostosowywania efektów, animacji, a od wersji 5 - obsługuje Wayland, rysowanie przez rozszerzenia EGL(zamiast standardowego interfejsu GLX), i wiele więcej. W KDE 4 można go łatwo zastąpić przez Compiz. Królowa jest wpisana Qt i wykorzystuje wiele funkcji tego środowiska. Ale jeśli GNOME jest praktycznie przybity do GTK+ 3, którego programiści ciągle łamią jego API nowymi wydaniami, to w Qt sytuacja jest wielokrotnie lepsza, a wydania KDE nie są sztywno powiązane z wydaniami Qt. W sytuacjach awaryjnych Kwin wykazuje niesamowitą stabilność - automatycznie przełączy tryby renderowania, w przypadku problemów ze sterownikiem wideo uruchomi się ponownie, ale nie zatrzyma renderowania. Ponadto Kwin, przy całej swojej funkcjonalności, jest bardzo lekki (w porównaniu do Muttera i częściowo Muffina), co sprawia, że ​​nadaje się do użytku na słabych laptopach, netbookach i tym podobnych.




Compton- kierownik kompozytowy, widelec xcompmgr. Nie jest menedżerem okien, ale po prostu uzupełnia istniejącą funkcjonalność złożonego. Często używany w połączeniu z Openbox, Metacity i Marco. Nie jest bogaty w efekty, ale najpopularniejsze, takie jak przezroczystość, cienie, animacje, płynne przejścia i oczywiście renderowanie przez OpenGL, są w pełni zaimplementowane. Dostępne również jako opcja w Linux Mint MATE i UbuntuMATE.

otwierać pudełko to popularny super lekki menedżer okien. Nie ma złożonej funkcjonalności, nawet programowo. Jest domyślnym menedżerem okien w środowiskach LXDE I LXQt. Może być zastąpiony dowolnym innym, a także używany jako zamiennik w wielu środowiskach, takich jak MATE i Xfce.


Oczywiście to nie wszystkie menedżery okien dostępne w Linuksie. A w przyszłości napiszę jak stworzyć własne środowisko graficzne z różnych komponentów. Jakiś potwór Frankensteina, uszyty z różnych kawałków :) Jeśli macie jakieś życzenia - piszcie w komentarzach.

Teraz opowiem ci o moim ulubionym menedżerze okien.

Próbowałem różnych:

KDE, co wizualnie mi zupełnie nie pasuje. Wygląda na to, że twórcy chcieli skopiować interfejs maku, ale zrobili to bardzo źle.

Gnom, który niedawno zamienił się w obudowę tabletu, ponieważ teraz są tylko ogromne przyciski i wszystkie elementy sterujące. Wydaje się, że wszystko jest przeskalowane o 300%. Z tego powodu znika duża liczba wolna przestrzeń.

Jedność Mnie też się to nie podobało.

XFCE moim zdaniem nie jest źle, ale jednocześnie jego UI pozostawia wiele do życzenia. Podoba mi się interfejs MacOS-a ze względu na to, że wszędzie są bardzo poprawne proporcje wszystkich elementów względem siebie. Żadnych guzików za dużych ani za małych. Wszędzie poprawne wcięcia wewnątrz okna. Dzięki temu wszystko wygląda bardzo harmonijnie. To jest dokładnie to, czego obecnie brakuje XFCE. Chociaż jeśli nie jesteś perfekcjonistą, to zrobisz.

Oprócz zwykłego WM istnieją również kafelki. Są to WM, w których okna nie zachodzą na siebie.

Wspaniały, Lubię go. Ale Lua jest trochę myląca. Ale jeśli nagle zauważysz zalety Awesome w porównaniu z i3wm, opowiedz mi o nich, chciałbym z tobą porozmawiać.

DWM, co nie jest złe, ale jakoś dziwne jest to, że trzeba go przekompilować za każdym razem, gdy zmieniasz konfigurację. Cóż, ktoś może być w porządku. Ale dość często zmieniam coś w moim interfejsie albo widzę coś fajnego i chcę to dodać. I mam dość tego zamieszania. Chociaż bardzo go lubię, bo jest bardzo mały i prawie nigdy nie buggy. I bardzo podoba mi się sama filozofia bezkarności. I na pewno wrócę do niego w przyszłości i spróbuję ponownie. Sami faceci. Jeśli używasz DWM i uważasz, że jest lepszy niż i3 to napisz do mnie, chętnie z Tobą porozmawiam. Pisz do mnie gdziekolwiek.

Xmonad. Ale jakoś do mnie nie przyszedł. Skonfiguruj na Lua jeszcze mniej więcej. Ale konfiguracja napisana w Haskell w jakiś sposób nie jest ludzka.

i3 w tej chwili podoba mi się bardziej niż inne. I ogólnie podoba mi się ideologia kafelkowania menedżerów. Podoba mi się, ponieważ przede wszystkim bardzo ułatwia pracę z oknami. Nie musisz ciągle przesuwać czegoś myszką i ciągle podnosić lub opuszczać coś w trzecim wymiarze.

Po drugie, podoba mi się to, ponieważ nie marnuje miejsca na ekranie. Po prostu nie masz wolnego miejsca. Nigdy nie rozciągaj okien. Cóż, kolejne miejsce jest uratowane dzięki temu, że okna nie mają już obramowań.

Ale na początku wydaje się to bardzo niezwykłe. W końcu wszyscy jesteśmy przez długi czas już przyzwyczajony do tego, że są to takie okna. Że musisz wchodzić z nimi w interakcję w określony sposób.

A tu huk i kolejne podejście. Na początku wydaje się to dziwne.

Ale potem zakochujesz się w nim i nie chcesz go z powrotem. Teraz, gdy jestem w systemie Windows 10 lub Mac, jakoś nie lubię ciągle przesuwać okien myszą i zmieniać ich rozmiaru.

Generalnie powinieneś spróbować. Albo kochasz albo nienawidzisz.

Przejdźmy do samego i3.

Jak powiedziałem, okno tutaj zawsze zajmuje całą przestrzeń


A kiedy otworzysz nowe okno, przestrzeń zostanie podzielona na pół. Możesz otworzyć tyle okien, ile chcesz.


Możesz sam zdecydować, jak podzielić przestrzeń.


Możesz także zmienić rozmiar każdego okna.

To jest główny tryb i3, ale są też dwa dodatkowe. W jednym przypadku okna zachowują się jak listy, w drugim nakładają się na siebie

Ale jeśli nagle naprawdę tego potrzebujesz, możesz sprawić, że dowolne okno unosi się.


i3 ma wiele komputerów stacjonarnych. I możesz łatwo przełączyć się na nie za pomocą ustawionego skrótu klawiszowego.

Bardzo wygodne jest również to, że możesz go ustawić tak, aby otwierało się jakieś okno na wirtualnym stole, którego potrzebujesz.

I zawsze będziesz dokładnie wiedzieć, co masz i gdzie. U mnie na przykład Slack i Telegram są zawsze w wirtualnej tabeli 9. Mój projekt go znajduje się w wirtualnej tabeli 8. A mój projekt Node.js znajduje się na wirtualnym pulpicie 7. Cała moja osobista baza wiedzy jest zawsze otwarta w 6. wirtualnym stole. Na pierwszym wirtualnym pulpicie zawsze mam przeglądarkę. A na drugim wirtualnym stole mam zawsze wszystkie informacje o pracy.

Ale jeśli to konieczne, mogę to wszystko zmienić samodzielnie.

W ten sposób nigdy się nie mylę. Zawsze wiem, gdzie co mam.

To nie ma znaczenia, nawet jeśli okno jest zamknięte, kiedy je otworzę, wiem, gdzie się otworzy.

Uruchamianie programów

Teraz o tym, jak uruchamiać programy. Istnieją dwa sposoby. Pierwszy to skróty klawiszowe. To, co najczęściej uruchamiasz, możesz związać. Na przykład używam CTRL + SHIFT + P, aby uruchomić kalkulator. Również na przyciskach są zawieszone i wyłączone z VPN. Albo zrobić zrzut ekranu. Zasadniczo, co chcesz.

A wszystko inne można przepuścić przez coś, co wygląda jak reflektor w maku. Nazywa się Rofi.


Wystarczy nacisnąć control i spację, a okno zostanie wywołane. Zacznij coś pisać i naciśnij enter. Jeśli program jest przypisany do jakiegoś ekranu, to otworzy się tam, jeśli nie, otworzy się na bieżącym wirtualnym stole.

Jeśli potrzebujesz, możesz przenieść program do innego wirtualnego stołu.

i3 jest również odpowiedzialny za wszystkie automatyczne ładowanie programów. I robi się to dość łatwo w konfiguracji.

bar

Możesz też włączyć jakiś pasek, na przykład ten, który widzisz nade mną. Ten konkretny nazywa się Polybar. Ale jest tak wiele innych na każdy gust.

Porozmawiajmy o Polybarze.

Po prawej stronie widzisz ikony, jest to zwykła taca. Po lewej stronie widzisz liczby, to tylko wirtualne stoły.

Wszystko pomiędzy to moduły. który pobierasz. Moduły to w zasadzie tylko skrypty. nieważne co. Na wieży lub na pytonie. Możesz użyć czegokolwiek.

Tak robią moje

  • Pokaż koszyk, opróżnij go lewym przyciskiem myszy i otwórz prawym przyciskiem myszy;
  • Pokaż wolne miejsce na dysku;
  • Pokazuje wolne miejsce w mojej macierzy RAID na innym serwerze w mojej sieci LAN;
  • Pokazuje pogodę i czas, po którym słońce wzejdzie lub zajdzie.
  • Pokazuje obciążenie procesora. Wartości na minutę, na pięć minut i na 15 minut;
  • Pokazuje liczbę dostępnych aktualizacji
  • Pokazuje cenę bitcoina
  • Pokazuje cenę za dolara
  • Pokazuje adres IP
  • Rzecz, która kontroluje głośność
  • Obciążenie, temperatura procesora i ilość zajętej pamięci
  • Ładowanie baterii

Cóż, ogólnie rzecz biorąc, możesz tutaj wyświetlić absolutnie dowolne informacje. Możesz na przykład wyświetlić informacje z JSON lub z arkusza kalkulacyjnego Google.

Uwaga! Ten artykuł nie zawiera przewodników dotyczących konfigurowania konkretnego menedżera okien. Wyjaśnia niektóre z ogólnych teoretycznych i praktycznych aspektów korzystania z menedżerów okien. Aby uzyskać instrukcje, zapoznaj się z artykułem dotyczącym menedżera okien na tej wiki lub zadaj pytanie na forum

Menedżer okien to aplikacja odpowiedzialna za umieszczanie, dekorowanie okien, interakcję z oknami - zmianę rozmiaru, maksymalizację, minimalizację, zamykanie. Menedżer okien współdziała z serwerem graficznym X11, który obsługuje interakcję z kartą graficzną i urządzeniami wejścia/wyjścia (klawiatura, mysz i monitor).

Menedżer okien może pracować zarówno razem ze środowiskiem graficznym (Gnome, KDE, XFCE), jak i niezależnie od niego. Funkcjonalność zapewniana przez menedżery okien może się bardzo różnić.

Menedżer okien w środowisku pulpitu

Tak więc środowisko graficzne zawiera już menedżera okien. W przypadku Gnome jest to Metacity, w przypadku KDE jest to kwin, XFCE domyślnie używa xfwm4. Środowisko graficzne LXDE korzysta z menedżera okien openbox - w przeciwieństwie do innych DE, które używają menedżerów okien napisanych specjalnie dla nich, LXDE zawiera menedżera okien, który jest rozwijany niezależnie od reszty środowiska.

W każdym z tych środowisk domyślny menedżer okien może zostać zastąpiony innym z tego czy innego powodu.

Być może dwoma najbardziej znaczącymi przykładami dla Ubuntu są zastąpienie standardowego menedżera okien Metacity przez Compiz, aby umożliwić różne efekty specjalne, lub przez Openbox, aby zmniejszyć zużycie zasobów i zapewnić bardziej precyzyjne zarządzanie oknami (bardziej efektywne wykorzystanie skrótów klawiszowych, umieszczanie okien w różnych warstwach (Zawsze na wierzchu) itp.)

W rzeczywistości nie ma żadnych przeszkód w korzystaniu z menedżera okien kwin na pulpicie Gnome i odwrotnie.

W przypadku wymiany menedżera okien w ramach środowiska pracy zwykle wystarczające są następujące działania:

    Dodanie polecenia zastępującego menedżera okien w autorun za pomocą narzędzi kontroli sesji tego środowiska (podręcznik compiz –replace)

    Jeśli chcesz przenieść kontrolę nad pulpitem do menedżera okien (np. po to, aby po kliknięciu prawym przyciskiem myszy na pulpicie pojawiło się menu Openbox), wyłącz funkcję kontroli pulpitu w ustawieniach aplikacji, która to robi poprzez domyślny. W przypadku Ubuntu jest to Nautilus.

Gdy zastąpisz menedżera okien w ramach środowiska pracy, ten ostatni nadal wykonuje dla Ciebie szereg ważnych funkcji - kontrolę sesji, montowanie nośników wymiennych, zarządzanie schowkiem i siecią, kojarzenie plików z aplikacjami. Zmieniasz tylko i wyłącznie mechanizm zarządzania oknami i pulpitem.

Menedżer okien bez środowiska graficznego

Załóżmy, że w celu zmniejszenia zużycia pamięci RAM i mocy procesora, w celu samokształcenia lub ze względów estetycznych, zdecydujesz się samodzielnie wdrożyć środowisko pracy oparte na jakimś menedżerze okien.

Co zapewniało Ci do tej pory środowisko pracy? Co musisz teraz skonfigurować? Jakie zadania są wykonywane przez większość menedżerów okien, a które są wykonywane przy użyciu narzędzi innych firm?

Weźmy to do porządku.

    Autostart i kontrola sesji. Jeśli w środowisku komputerowym możesz dodać aplikację do automatycznego uruchamiania GUI, teraz najprawdopodobniej będziesz musiał zarejestrować takie aplikacje w pliku konfiguracyjnym swojego menedżera okien. Patrząc w przyszłość, powiem, że najprawdopodobniej będziesz musiał dodać tacę i / lub panel, przełącznik układu klawiatury, narzędzie do zarządzania połączeniami sieciowymi, narzędzie do montowania nośników wymiennych, narzędzie do rysowania tapet, klienta poczty e-mail oraz komunikator internetowy, klient torrent .

Dodając aplikacje do autostartu, pamiętaj o kolejności ich uruchamiania. Na przykład, jeśli chcesz uruchomić menedżera połączenia sieciowe lub klienta torrent, najprawdopodobniej będą potrzebować tacy, więc powinni zacząć po tacy, być może z pewnym opóźnieniem (użyj polecenia uśpienia)

    Zarządzanie połączeniem sieciowym. Środowisko pulpitu zapewnia menedżera połączeń sieciowych, w przypadku menedżera okien musisz sam się tym zająć. Możesz połączyć się z siecią przed uruchomieniem serwera graficznego lub po uruchomieniu menedżera okien i uruchomieniu zasobnika aplet nm Lub wicd-klient.

    Schowek. Możesz zauważyć, że wklejanie fragmentu tekstu z przeglądarki do Edytor tekstu teraz możliwe tylko wtedy, gdy aplikacja „dawcy” jest uruchomiona. Zainstaluj i dodaj menedżera schowka do autostartu, na przykład paczka.

    Przełączanie układów klawiatury. Zniknął!

Najbardziej wszechstronne rozwiązanie:

Setxkbmap - układ "us, ru (winkeys)" - model "pc105" - opcja "grp: ctrl_shift_toggle, grp_led: scroll"

Należy go również dodać do autorun. Po więcej strojenie przełączaj układy, korzystaj z narzędzi xxkb Lub xneur

    Być może potrzebujesz paneli i/lub tacek. Menedżer okien może zawierać panel, tak jak ma to miejsce w przypadku fluxboksa, ale możesz użyć dowolnego innego - niewymagającego zasobów odcień2 lub funkcjonalny panel gnome lub xfce-panel

    Zarządzanie energią. Jeśli używasz laptopa, może być konieczne zarządzanie profilami zasilania. Może być użyte gnome-power-manager Lub xfce-power-manager

    Tapeta. Większość menedżerów okien wyświetla czarny ekran zamiast tapety. Aby zmienić i wyświetlić tapetę, potrzebujesz osobnego narzędzia, odpowiedni jest specjalny menedżer tapet azot lub przeglądarka zdjęć feh

    Ikony pulpitu. Jeśli w ogóle ich potrzebujesz, możesz użyć menedżera plików, który może je narysować. Łodzik, pcmanfm Lub rox-filer pasować. Nautilus - w mniejszym stopniu - ma tendencję do przejmowania pełnej kontroli nad pulpitem i może przeszkadzać w zarządzaniu oknami.

    Montaż nośników wymiennych. Istnieje możliwość przeniesienia tej funkcji do menedżer plików lub skonfiguruj uchwyt za pomocą udew

    Wygląd aplikacji. Czcionki, ikony, motywy pulpitu, motywy kursora. Teraz musisz je skonfigurować samodzielnie. Utwórz ukryte foldery .icons i .themes w swoim folderze domowym, w pierwszym możesz dodać motywy ikon i kursorów, w drugim - motywy GTK. Uwaga! Uważaj na hierarchię folderów! Motywy zostaną skonfigurowane tylko wtedy, gdy ścieżka motywu wygląda następująco: ~/.themes/ Nazwa tematu/gtk-2.0. Niektórzy autorzy tworzą paczki motywów, aw folderze „Motyw” mogą znajdować się podfoldery „Light Theme” i „Dark Theme”. Poręczne narzędzie ustawienia motywów gtk, ikon, czcionek i motywów kursora - lxwygląd. Nie zapominaj, że motywy gtk wymagają do poprawnego działania tak zwanych „silników motywów”, których świeżo zainstalowany minimalny system najprawdopodobniej nie ma. Możesz je zainstalować z repozytoriów, możesz zobaczyć, jakie silniki znajdują się w repozytorium w ten sposób: aptitude search gtk-engines

    Wyłączanie komputera w inny sposób niż przez zatrzymanie/zamknięcie z konsoli. Jeśli twój menedżer okien nie ma narzędzia do zamykania, będziesz musiał skorzystać z okien dialogowych zamykania innych firm, a robiąc to, edytuj sudoers tylko używając visudo, aby umożliwić użytkownikowi zamknięcie i ponowne uruchomienie komputera bez podawania hasła

    Narzędzie dla szybki start aplikacje, wprowadzając polecenie. Spróbuj do tych celów gmrun

    Compositing, znany również jako „przezroczystość i kostka”. Ponieważ Compiz sam w sobie jest menedżerem okien, niestety nie jest możliwe połączenie go z Openboxem lub fvwm. istnieją jednak złożony menedżerowie, którzy nie zajmują się renderowaniem okien, ale wyłącznie efektami specjalnymi - cairocompmgr i wiązka xcompmgr I przenosić- oba pozwalają dodać kilka prostych efektów specjalnych (cienie, przezroczystość), ale nic więcej.

Skróty klawiaturowe, dekoracje okien, wirtualne pulpity i menu są zwykle dostarczane przez menedżera okien i konfigurowane w jego pliku konfiguracyjnym.

okno Menedżerowie Linuksa służą do zarządzania oknami aplikacji w systemie. Na przykład, gdy uruchamiasz dowolny aplikacja graficzna, otwiera swoje okno. Aby to okno poruszało się i pięknie wyglądało, w tle działa manager, który odpowiada za wszystkie te funkcje.

Zwykle menedżer okien jest wbudowany w środowisko pulpitu, ale w przypadku bardzo lekkich systemów można używać menedżera okien bez środowiska. W tym artykule skompilowaliśmy najlepsze menedżery okien systemu Linux, które możesz zainstalować i używać w swoim systemie.

Nie myl menedżerów okien ze środowiskami graficznymi. Środowiska pulpitu zwykle zawierają paski narzędzi, tapety, widżety, foldery i ikony. Zwykle mają też osobny zestaw bibliotek i aplikacji, aby ułatwić pracę na komputerze. Menedżery okien zarządzają tylko oknami. Środowiska komputerowe mają już wbudowane menedżery okien i narzędzia do tworzenia okien, które umożliwiają oddzielne rysowanie i tworzenie okien.

1.i3

Pierwszy na naszej liście jest i3. Jest to dobrze udokumentowany i wysoce konfigurowalny menedżer okien. W tym menedżerze użytkownik może dostosować wszystko, co chce, zaczynając od pozycji otwartej aplikacji, kończąc na własnym skrócie klawiaturowym. Zaletą i3 jest to, że cała konfiguracja jest w formie tekstowej, nie trzeba znać żadnych języków typu LUA czy Haskell.

Przełączanie między pływającymi oknami odbywa się za pomocą Win + Shift + Spacja. Menedżer okien jest aktywnie rozwijany, a znalezione błędy są naprawiane przez programistów. Możesz także użyć terminala do wykonania niezbędnych czynności.

2. Niesamowity WM

Awesome WM to jeden z najlepszych menedżerów okien dla systemu Linux, który używa asynchronicznej biblioteki XCB zamiast Xlib. Menedżer okien jest napisany w C++. Możesz go dostosować, zmienić styl, wygląd i skonfigurować skróty klawiszowe. A wszystko to musi być wykonane w języku LUA.

Do komfortowej pracy wystarczą domyślne konfiguracje. Obsługuje wiele pulpitów, ewentualnie zmieniając rozmiar i przesuwając panele za pomocą myszy. Każdy komponent można zmienić za pomocą pliku konfiguracyjnego.

3XMonada

XMonad jest idealny dla Ciebie, jeśli chcesz mieć możliwość rozszerzenia swojego menedżera okien w języku programowania Haskell. Nie będziesz ograniczony żadnymi zaprogramowanymi szablonami i będziesz mógł zaprogramować wszystko w konfiguracji. Domyślne ustawienia są bardzo łatwe do zmiany, a kod programu jest zawsze czysty i bezpieczny. XMonad jest bardzo szybki i lekki, więc będzie działał nawet na wolnym systemie.

Spośród funkcji można zauważyć obsługę wielu monitorów, a także, jeśli brakuje jakiejś funkcji, można ją dodać za pomocą modułów.

4.Otwórz pudełko

Openbox to bardzo lekki i jeden z najpopularniejszych menedżerów okien dla systemu Linux. Po pobraniu zajmuje tylko 100 megabajtów pamięci RAM. Jest dość stabilna, a twórcy ciągle uzupełniają nowe „dziury” i błędy.

Jest wysoce konfigurowalny i łatwy w użyciu. Możesz edytować pliki konfiguracyjne lub użyj narzędzi konfiguracyjnych.

5. DWM

Ten menedżer okien systemu Linux jest zawarty w pakiecie oprogramowanie Suckles Suite. Zazwyczaj użytkownicy mogą dostosować i rozszerzyć swoje możliwości, zmieniając kod źródłowy. Cały kod dwm mieści się w mniej niż 2000 linii, więc jest to przykład bardzo czystego i czytelnego kodu. Ponadto dwm jest bardzo lekki, ma prostą konstrukcję i zużywa niewiele zasobów.

Proste ustawienia dwm i skróty klawiszowe są dobrze przemyślane, co czyni go jednym z najlepszych menedżerów okien. Możesz grupować aplikacje i okna na pulpicie. Status menedżera paska pokazuje informacje o połączeniu Wi-Fi, poziomie głośności i stanie baterii.

6. Gala

Ten menedżer okien jest oparty na dekoracji klienta GTK. Ma prosty, ale przemyślany projekt, jakby korzystał z zasad projektowania ElementaryOS.

Gala jest odpowiednia dla początkujących. Jest niesamowicie konfigurowalny i ma wszystkie skróty klawiszowe potrzebne do łatwego użytkowania. W przypadku gorących narożników możesz przypisać wykonanie określonych zadań lub własnych poleceń.

Gala posiada również animacje i ciekawe efekty. W razie potrzeby możesz je dodawać i usuwać. Menedżer okien jest bardzo lekki i działa dobrze na słabszym sprzęcie, takim jak Chromebooki lub starsze laptopy. Gala jest stabilna. Jest również uważany za jednego z najczęściej wymienianych menedżerów okien wszechczasów.

7.Kwin

Łatwo konfigurowalny menedżer okien w środowisku graficznym KDE. Ale może być również używany w innym środowisku graficznym. Wszelkie ustawienia można zmienić za pomocą interfejsu graficznego.

KWin oferuje najwięcej efektów w porównaniu do innych menedżerów okien. Możesz dołączyć cienie do okien, uczynić je lepkimi i chwiejnymi, dodać różne efekty minimalizujące i maksymalizujące okna i wiele więcej.

8 Fluxboksa

Jeśli szukasz najlżejszego menedżera okien dla systemu Linux, to Fluxbox to zrobi najlepszy wybór dla Ciebie. Na każdym sprzęcie będzie działać bardzo szybko. Jest również łatwy w użyciu i konfiguracji.

Nie musisz znać żadnego języka programowania, aby go skonfigurować - menedżer okien ma prostą konfigurację i zarządzanie oknami. Fabrycznie zainstalowane są różne motywy i parametry do kalibracji, obsługiwane jest również automatyczne kafelkowanie.

9. Musca

Ten menedżer okien jest uważany za bardzo prosty i bezpośredni. Jest również bardzo wydajny pod względem użytkowym. miejsca na dysku i pamięć. Nie ma tu paneli ani dekoracji okiennych. Ale można je dodać przez ustawienie dodatkowe aplikacje. System grupowania okien jest bardzo podobny do wirtualnych pulpitów.

Okna są podzielone na różne nazwane grupy i można bardzo łatwo przełączać się między nimi. Użytkownik może tworzyć lub usuwać grupy. Musca obsługuje wiele monitorów i może automatycznie tworzyć grupy okien.

10. SpectrWM

Ten menedżer okien jest bardzo podobny do Xmonada. Ale używa plików konfiguracyjnych zwykłego tekstu. Po zmianie ustawień możesz ponownie przeliczyć konfigurację bez ponownego uruchamiania środowiska. Dzięki temu użytkownicy mogą zobaczyć wyniki zmian bez konieczności ponownego uruchamiania menedżera. Domyślny interfejs jest bardzo prosty.

Konfiguracja spectrwm jest bardzo prosta, ponieważ posiada podstawowy zestaw ustawień i nie trzeba znać żadnego języka programowania, aby je zmienić. Dlatego jest idealny dla początkujących i tych, którzy chcą używać Xmonada, ale nie znają Haskella.

11. HerbstluftWM

Ten menedżer okien jest bardzo łatwy do zrozumienia i konfiguracji. Wszystkie ustawienia są dokonywane za pomocą wiersz poleceń i nie musisz opuszczać środowiska. Wspaniałą cechą HerbstluftWM jest obsługa ręcznego i automatycznego układania okien. Użytkownik może skonfigurować automatyczne kafelkowanie dla każdego okna lub aplikacji. Automatyczne kafelkowanie można zmienić na ręczne w dowolnym momencie.

Do skonfigurowania używa skryptu Bash, ale poza tym jest całkiem prosty. Możesz używać różnych szablonów układu, a także tworzyć szablony w locie. Obsługiwane są również dwa monitory.

12 Oświecenie

Jeśli jesteś początkującym, jest to najlepszy menedżer okien dla Ciebie. Konfiguracja środowiska nie wymaga żadnej wiedzy programistycznej. Ogólnie rzecz biorąc, bardziej przypomina środowisko graficzne. Wszystkie ustawienia są dokonywane za pomocą interfejsu graficznego.

Możesz w pełni dostosować go do swoich upodobań, a także dodać opcjonalnego menedżera kompozytów. Posiada również wirtualne pulpity, widżety. Enlightenment to bardzo szybkie środowisko, idealne dla laptopów.

13. JWM

JWM to niezwykle lekki menedżer okien. Jest używany jako domyślny menedżer wyświetlania w Puppy Linux. Jest również idealny dla każdego starego komputera. Menu i okna otwierają się szybciej niż inni menedżerowie. Ponadto JWM jest łatwy w konfiguracji, nie potrzebujesz do tego żadnej wiedzy programistycznej.

14. Kreator okien

Projekt Window Maker jest bardzo podobny do graficznego interfejsu użytkownika NeXT, a użytkownik będzie mógł z nim wygodnie pracować. Menedżer okien jest bardzo lekki i elegancki i można go rozszerzyć za pomocą różnych paneli dokujących.

15. IceWM

IceWM jest jednym z najlżejszych menedżerów okien. Zajmuje bardzo mało miejsca na dysku twardym. Jest szybki i dość łatwy w sterowaniu za pomocą klawiatury. Istnieje również wiele ustawień i motywów, których możesz użyć. Obsługuje również wiele monitorów.

16. Panteon

Nowicjusze Linuksa mogą pomyśleć, że Pantheon jest stworzony dla osób, które wcześniej korzystały z MacOS. Jest to nowoczesny menedżer okien z Piękny design. Znajduje się tu stacja dokująca, za pomocą której można uruchamiać aplikacje. Programy można sortować według kategorii lub alfabetycznie.

17. XFWM

Za pomocą tego menedżera kompozycji możesz podzielić ekran na części i bardzo łatwo umieścić tam okna. Istnieje wbudowana możliwość przyciągania okien, a także wiele motywów i możliwość tworzenia nowych motywów. Możesz ustawić, czy nowe okna będą otwierane na krawędzi ekranu, czy na środku.

18. Trucizna na szczury

Ratpoison jest bardzo łatwy w konfiguracji. Konfiguracja zajmie znacznie mniej czasu niż w przypadku innych menedżerów, ponieważ ma bardzo prosta struktura. Główne czynności w programie wykonywane są za pomocą klawiatury, myszką będzie bardzo mało pracy. W razie potrzeby możesz utworzyć wiele pulpitów.

19. Komp

Kostka komputerowa Compiz

Compiz to stary menedżer okien, który był często używany. Jest tu jeszcze więcej efektów niż Kwin. Na przykład znany jest z takiego efektu jak kostka pulpitu. Obsługuje również rozszerzanie Compiza za pomocą wtyczek. Możesz włączyć lub wyłączyć funkcję, włączając lub wyłączając jej wtyczkę. Proces instalacji jest bardzo prosty - wszystko odbywa się w specjalnym narzędziu.

20. Waylanda

Ten menedżer okien nie ma interfejsu API do rysowania. Użytkownicy Wayland otrzymują uchwyt bufora DRM, który działa jak wskaźnik do pamięć grafiki. Aby narysować obrazy w Wayland, użyj karta graficzna a nie procesor. Wayland ułatwi pracę powłoki graficznej i usunie wiele niepotrzebnych rzeczy. Jego głównym celem jest uproszczenie stosu graficznego Linuksa. W przyszłości będzie używany zamiast serwera X we wszystkich środowiskach, ale obecnie jest w fazie rozwoju.

wnioski

Istnieją trzy główne typy menedżerów okien w systemie Linux: stos, kafelkowanie i kompozyt. Kompozyty dbają o środowisko 2D i 3D. Układanie umożliwia nakładanie się okien na siebie na tle pulpitu. Kafelkowanie zapewnia, że ​​wszystkie okna są widoczne w tym samym czasie i nie zachodzą na siebie.

W tym artykule sprawdziliśmy najlepsze menedżery okien systemu Linux. Każdy z nich ma swoje wady i zalety. Zanim dokonasz wyboru, zdecyduj, czego dokładnie potrzebujesz i wypróbuj jak najwięcej opcji. Programy są bezpłatne i wystarczy kilka poleceń, aby je zainstalować. Jakie znasz najlepsze menedżery okien? Którego użyjesz? Napisz w komentarzach!

Jeśli zauważysz błąd, zaznacz fragment tekstu i naciśnij Ctrl + Enter
UDZIAŁ: