Unity zostanie przepisane do Qt/QML

Qt

Po ogłoszeniu przez Canonical nowego serwera wyświetlania dla Ubuntu, zapowiedziano kolejną wielką zmianę w projekcie Unity: Unity Next.

Unity Next ma na celu stworzenie zbieżnej implementacji Unity, pracującej zarówno pod desktopami jak i urządzeniami przenośnymi – tabletami czy smartfonami. Unity Next zostanie zintegrowane z Mirem a interfejs użytkownika będzie wykorzystywać Qt. Wszystko ma na celu ujednolicenie wyglądu (oraz kodu źródłowego) Unity na każdym urządzeniu, na którym będzie można w przyszłości zainstalować Ubuntu.

Wszystkie nadchodzące zmiany – zmiana modelu wydawniczego, nowy serwer wyświetlania, plany konwergencji urządzeń – nasuwają jedno pytanie: co z przyszłością takich odmian Ubuntu jak Kubuntu, Xubuntu czy Lubuntu? W końcu bazują one na Ubuntu w aktualnej formie – czy będzie tak samo po wprowadzeniu zmian? Czy plany Marka Shuttlewortha będą dla nich gwoździem do trumny?

Jeżeli powyższy artykuł nie rozwiązał lub rozwiązał częściowo Twój problem, dodaj swój komentarz opisujący, w którym miejscu napotkałeś trudności.
Mile widziane komentarze z uwagami lub informacjami o rozwiązaniu problemu.
  • emeritus

    Czarno to widzę.Trzeba się będzie chyba przesiąść na coś innego.

    • http://www.rapidrage.org/ FihuFil

      Jakieś argumenty? Po prostu napisać, że źle to każdy umie. Najlepiej narzekajmy sobie, a gdy ktoś będzie chciał wprowadzić coś nowego i w rezultacie poprawić to co teraz działa źle to… narzekajmy jeszcze bardziej.
      Ja bardzo się cieszę z odważnych posunięć Canonical, wreszcie wszystko zmierza w lepszym kierunku.

  • Kiro

    Wersje alternatywne Ubuntu zawsze będą, bez względu na protektorat Canonical. Choćby taki Mint, radzi sobie bez problemów.

    • Gnome2orDeath

      Debian wróci w wielkim stylu :) , mint pokazał jak to zrobić w LMDE

  • http://garhuy.blogspot.com Garhuy

    Unity w Qt/QML jest zdecydowanie lepszym pomysłem niż dziwnie działająca wtyczka do mulastego Compiza. Oby tego nie spartolili.

    • Wizard

      Różnie może być, jakość Unity 2D pozostawia wiele do życzenia, ale wymagania sprzętowe są w porównaniu z compizowym Unity minimalne ;)
      Wybór Qt wydaje się być naturalny, bo czy używamy widgetów czy Qt/QML mamy do dyspozycji proste, wygodne i przede wszystkim stabilne API no i świetnej jakości kod pod spodem. Qt jest zdecydowanie najlepszą biblioteką na Uniksy jaka kiedykolwiek powstała ;P

  • Wizard

    Już kiedy Cannonical „utrącił” Unity 2D wiele osób (w tym ja oraz programiści QT5) wskazywało, że jest to zły pomysł. Compiz wymaga akceleracji sprzętowej, triki z LLVM pipe sugerowane przez koderów Gnome i Compiza są raczej smutnym obejściem – nie widziałem jeszcze maszyny, na której LLVM pipe by w ogóle działało.
    Jeśli chodzi o „przyszłość pochodnych dystrybucji”, to dróg rozwoju sprawy jest kilka. Trzeba pamiętać, że samo Unity to z grubsza menedżer okien z zarządzaniem sesją i innymi duperelami – menu, „klisza” po lewej i tak dalej. Pod spodem zarówno Unity 2D, jak i Unity opierają się na aplikacjach i serwisach z Gnome, większość aplikacji dostarczanych domyślnie to aplikacje projektu Gnome lub z nim jakoś związane przez API. Dodatkowo jest sobie kobyła LibreOffice, która nie wiadomo czego używa pod spodem do wyświetlania, wydaje mi się, że jest to jakiś własny toolkit, aczkolwiek pewien nie jestem. W repo mamy *mnóstwo* gier opartych o SDL, programów z GTK2 i GTK3, Motifem i całym tym klasycznym uniksowym burdelem. Cannonical musi jakoś te problemy zaadresować. Na początek nasuwają się dwa rozwiązania:
    1. Wsparcie dla Mira w backendach do rysowania – w GTK, Qt czy SDL to nie jest duży problem, one i tak mają wewnętrzne abstrakcje API różnych systemów wyświetlania, więc to kwestia implementacji tych wewnętrznych API. Gorzej z Motifem i na przykład Javą. One silnie zależą od libX11, szczególnie Motif. W przypadku Javy – to byłby dla Javy dobry ruch, może wreszcie Swing rysowałby się normalnie ;)
    2. Wsparcie dla API X11 w Mirze, albo wręcz zespawanie Mira z X11 (podobnie jak to robi OS X). Wtedy Unity używałoby sobie wewn. API Mira, reszta zostałaby bez zmian, co najwyżej sukcesywnie by przesuwano się w kierunku pierwszego rozwiązania.
    Pierwsze rozwiązanie jest lepsze z punktu widzenia spójności systemu od strony API, to umożliwiłoby stosunkowo szybką stabilizację API (a być może i ABI) Mira, przez co Linux dostałby wreszcie spójny system wyświetlania z jako tako gwarancją, że program napisany dziś za na przykład 5 lat jeszcze się odpali na nowszym systemie bez przebudowywania.
    Drugie rozwiązanie jest jednak bardziej prawdopodobne. Cannonical ewidentnie ujednolicając kod na wszystkie teoretyczne platformy upraszcza sobie podbój „rynku mobilnego”, a nikt przy zdrowych zmysłach nie będzie portował LibreOffice na telefon – co najwyżej jego biblioteki do renderowania dokumentów, a tu podsystem wyświetlania ma drugorzędne znaczenie.
    Uh, ale się rozwinąłem, teraz plusować :D

  • Paweł

    A ja się zastanawiam, czy przejście na Qt będzie się wiązało również z wymianą aplikacji, które teraz głównie bazują na Gtk+, na aplikacje Qt (nie mówię tu o aplikacjach KDE, ale te – po zamierzanym ujednoliceniu w przyszłości aplikacji Qt i KDE w zasadzie niczym się nie będą różnić). W efekcie otrzymalibyśmy alternatywę nie dla Gnome, ale… KDE, czy – zdecydowanie mniej popularnego – Razor-Qt. Robienie dystrybucji, której trzon opiera się o Qt tylko po to, by na niej prezentować aplikacje oparte o Gtk+ jest jakby bez sensu.
    A jeszcze nie tak dawno MS mówił, że to nie jest możliwe.

    • Wizard

      To wcale nie jest bez sensu, Paweł. Biurko linuksowe funkcjonuje tak od dłuższego czasu, a końcowego użytkownika nie obchodzi zbytnio co jest pod spodem – ma działać. Przepisywanie aplikacji pod Qt byłoby czystym marnotrawstwem. Cannonical powinien raczej zastanowić się co dalejz Gnome. Ten projekt rozwija się w swoim kierunku, realizując swoje pomysły, które w 3.4 i 3.6 wydają się całkiem sensowne (może za wyjątkiem porzucenia rozwoju środowiska klasycznego). Całkiem niedawny spór o Nautilusa powinien zapalić lampkę ostrzegawczą wśród programistów Ubuntu. Wielkie żale, które wylewano w internecie odnośnie zmian w Nautilusie 3.6 wydają się zupełnie bezpodstawne, jeśli weźmiemy Nautilusa jako integralną aplikację Gnome, rozwijaną przez ludzi ukierunkowanych na pracę w Gnome Shell. Model pracy z Shellem znacznie odbiega od tego proponowanego w Unity (nie mnie oceniać czy jest lepszy, czy gorszy). Poza tym Nautilus nie jest jedyną aplikacją, która przeszła operację plastyczną GUI oraz doczekała się lepszej integracji z Shellem. To samo dotyczy Ustawień Systemowych (nota bene również Ubuntu ma starszą wersję), GUI do instalacji aplikacji (Ubuntu ma już swoją aplikację) i kilku innych.
      Uważam, że Cannonical już przegapił moment, kiedy miał jeszcze wpływ na rozwój Gnome, a przepisywanie całego właściwie systemu (z punktu widzenia końcowego użytkownika) zostawi Ubuntu sto lat za przysłowiowymi Murzynami.
      Co więcej, Gnome jest dofinansowywane wciąż przez RedHat, który, swoją drogą planuje wydanie RHEL 7 po wakacjach. Według wszelkich prawdopodobieństw będzie on czymś pomiędzy Fedorą 15,16 i 17 – zwyczajem firmy – co oznacza, że z dużym prawdopodobieństwem domyślnym biurkiem będzie właśnie Shell. To tylko utwierdzi społeczność skupioną wokół Gnome, że kierunek obrany przez programistów jest właściwy, a innowacje – niezbędne.

  • http://dzm.org.pl/ kabi

    Świetna wiadomość!
    Te zabiegi z pewnością usprawnią rozwój całego systemu!
    Ubuntu idzie w dobrym kierunku!

  • http://twitter.com/ydk2app Łukasz

    Będzie jak w Suse krzak i tyle, wiecznie gubiące się ustawienia, czyli dla mnie zmiana na Mint-a, albo Debiana z Gnome.