Mój drugi dzień z Haiku: zachwycony, ale jeszcze nie gotowy na zmianę

Mój drugi dzień z Haiku: zachwycony, ale jeszcze nie gotowy na zmianę
TL;DR: Jestem zachwycony Haiku, ale jest nad czym pracować

Wczoraj uczyłem się Haiku - system operacyjny, który miło mnie zaskoczył. Drugi dzień. Nie zrozumcie mnie źle: wciąż jestem zdumiony, jak łatwo można robić rzeczy, które są trudne na komputerach stacjonarnych z systemem Linux. Bardzo chcę się dowiedzieć, jak to działa, a także jestem podekscytowany możliwością korzystania z niego codziennie. To prawda, że ​​​​dzień całkowitego przejścia jeszcze nie nadszedł: nie chcę cierpieć.

Mój drugi dzień z Haiku: zachwycony, ale jeszcze nie gotowy na zmianę
Edytor grafiki rastrowej WonderBrush - jeśli wiesz, gdzie go znaleźć

W zasadzie zgodnie z oczekiwaniami dla wersji poniżej 1.0. Jednakże, pamiętając Mac OS X z czasów przedpremierowych i biorąc pod uwagę wielkość zespołu Haiku, nie lekceważ tych niesamowitych osiągnięć.

Zwykle wypowiadam się na temat #LinuxUsability (Część 1, Część 2, Część 3, Część 4, Część 5, Część 6), więc nie zdziw się sprzeczkami na temat Haiku w zakresie użyteczności. Większość z nich na szczęście dotyczy różnych usprawnień.

To była przedmowa, a teraz zwróćmy uwagę na pewne kłopoty.

Problem nr 1: Problemy z przeglądarką

Istnieją 3 przeglądarki oparte na WebKit: podstawowy (WebPozytywne) i dwa dodatkowe na Qt (QupZilla, przestarzała nazwa Falkoni Przeglądarka Otter), który można zainstalować z repozytorium. Żaden z nich nie działa poprawnie. Główna przeglądarka ma problemy z funkcjonalnością i renderowaniem (np. nie da się rozwiązać captcha przy logowaniu). Narzędzie do śledzenia błędów Haiku), a dodatkowe mają duże problemy z wydajnością na Haiku.

Mój drugi dzień z Haiku: zachwycony, ale jeszcze nie gotowy na zmianę
Tak wygląda Twitter w WebPositive, głównej przeglądarce Haiku.

QupZilla i OtterBrowser znacznie opóźniają się w przypadku zawodnych połączeń internetowych (na przykład w pociągu). Przełączanie pomiędzy zakładkami staje się niemożliwe, jeśli dane nie napływają płynnie. Nie można otworzyć nowej karty, gdy bieżąca ładuje dane przez sieć. Wszystko wolno, pomimo małego obciążenia. Prawdopodobnie przeglądarki nie są w pełni zoptymalizowane pod kątem wielowątkowości Haiku lub mają inne problemy z Haiku [na Linuksie też mi się to czasami zdarza - około. tłumacz].

Nie mogłem nic napisać na Medium za pomocą QupZilla...

Apple zrobiło wiele, aby zapewnić stabilną przeglądarkę o doskonałej wydajności. Myślę, że ta inwestycja opłaci się także Haiku. Zwłaszcza biorąc pod uwagę rosnące znaczenie aplikacji internetowych, a tym bardziej, że aplikacje natywne nie są jeszcze dostępne dla wszystkich przypadków użycia.

Historia Kennetha Kociendy i Richarda Williamsona: jak powstały Safari i Webkit

Problem nr 2: Program uruchamiający i stacja dokująca

W prawym górnym rogu ekranu znajduje się Pasek na biurko, dziwaczne połączenie menu Start systemu Windows przeplatanego funkcjami Docka i kilkoma innymi funkcjami.

Mój drugi dzień z Haiku: zachwycony, ale jeszcze nie gotowy na zmianę
Pasek na biurko

Ponieważ był to prawdopodobnie kluczowy element doświadczenia użytkownika w systemie BeOS, brakuje mu możliwości nowoczesnego środowiska graficznego: potrzebuję programu uruchamiającego programy takiego jak reflektor, uruchamiany za pomocą Alt+space. Aplikacje typu „kliknij, aby uruchomić” działają wolno. Istnieje narzędzie Znajdź, które wygląda jak Stirlitz tajny, ale nie jest przeznaczony do wygodnego uruchamiania aplikacji, nawet jeśli jest przyspieszony.

Mój drugi dzień z Haiku: zachwycony, ale jeszcze nie gotowy na zmianę
W centrum uwagi system Mac OS X Leopard uruchamiany za pomocą klawiszy Command + spacja

Jest LnLauncher, zainstalowany w HaikuDepot. Kiedy uruchamiasz go po raz pierwszy, jest on całkowicie pusty i nie jest do końca jasne, jak cokolwiek do niego dodać. Ponadto pojawia się na ekranie w niewygodnym miejscu i nie ma oczywistej możliwości zmiany jego położenia. Jak mogę umieścić go po lewej stronie lub u dołu ekranu, na przykład Dock w systemie Mac OS X? Uważam, że UX w tym przypadku jest niepoznawalny.

DockBert, również zainstalowany z HaikuDepot. Już lepiej. Pokazane na dole ekranu. Nie spodziewałem się, że kolejność ikon będzie odwrotna: koszyk jest na początku, ale ogólnie wygląda obiecująco.

Jak mogę ustawić go jako domyślny zamiast paska Deskbar? Jeśli klikniesz ikonę Deskbara w DockBert i wybierzesz "zamknij" - oczywiście zamknie się... i pojawi się ponownie pół sekundy później. (Programiści powiedzieli, że jest to w zasadzie błąd w DockBert). Byłoby miło, gdyby DockBert był na tyle mądry, aby zrozumieć, czego potrzebuje użytkownik i to zrobić. Domyślnie DockBert nie ma żadnych ikon aplikacji, ale wyświetla się komunikat „przeciągnij tutaj”, dzięki czemu wiesz, jak wszystko dodać. Nie udało mi się jednak usunąć aplikacji – ani przez kliknięcie prawym przyciskiem myszy, ani przez przeciągnięcie ikony z DockBert.

Próbuję HiQDock. Znalazłem to przez przypadek w repozytorium strony trzeciej. Wygląda tak jak chcę. Z naciskiem na „wygląd”. Ponieważ to jeszcze nie działa: to wciąż wersja Beta. Jest napisany w Qt4, więc wątpię, czy zostanie uwzględniony w obrazie instalacyjnym.

Mój drugi dzień z Haiku: zachwycony, ale jeszcze nie gotowy na zmianę
HiQDock.

W zasadzie nie tylko ja uważam, że sytuacja z Dockiem i Launcherem jest skomplikowana. Znalazłem nawet ten temat cały artykuł.

Mój drugi dzień z Haiku: zachwycony, ale jeszcze nie gotowy na zmianę
Szybki start

Wtedy dowiedziałem się o Szybki start, który zaleca się uruchomić poprzez dodanie kombinacji przycisków w ustawieniach Skrótów.

Mój drugi dzień z Haiku: zachwycony, ale jeszcze nie gotowy na zmianę
Ustawienia skrótów w Haiku

Byłoby miło, gdyby takie rzeczy były domyślnie skonfigurowane tak, aby „po prostu działały”. Czy powiedziałem Alt+Spacja? Zasadniczo QuickLaunch może zapytać, czy chcesz dostosować skrót klawiaturowy przy pierwszym uruchomieniu. Robienie tego w ustawieniach skrótów jest kłopotliwe.

Mój drugi dzień z Haiku: zachwycony, ale jeszcze nie gotowy na zmianę
Okno z prośbą o wpisanie „aplikacja” w ustawieniach Skrótów. Bez żartów

Mogę się założyć, że większość użytkowników nie wie, co wpisać jako „aplikację”, a mianowicie: /boot/system/apps/QuickLaunch (Tylko QuickLaunch nie działa).

Szybkie rozwiązanie: Ustaw QuickLaunch jako domyślny i przypisz mu domyślny skrót alt+spacja.

Na szczęście mam informacje od twórców, że w pewnym momencie być może dodadzą go jako ulepszenie lub zamiennik starego, dobrego Deskbara. Może... kiedyś... Trzymam kciuki! (Zostaw prośbę, inaczej to się nigdy nie stanie. Właśnie tutaj). Inny programista powiedział, cytuję: „Moim zdaniem podążanie ścieżką systemu Windows polegającą na włączeniu pola wyszukiwania do menu Start jest wystarczająco proste dla wersji Beta, powiedziałbym, że dla wielu będzie to miało ogromne znaczenie”. Zgadzać się! (ponownie: zastosowanie czy nie).

Dlaczego QuickLaunch dwukrotnie znajduje program do zrzutów ekranu w /boot/system/apps i /boot/system/bin? Twórcy są świadomi, ponieważ w pliku /boot/system/apps/QuickLaunch/ReadMe.html.

/system/bin nie był wcześniej przetwarzany, przeniesione programy często trafiają do katalogu /bin, co jest złym pomysłem. Możesz usunąć niechciane aplikacje CLI, na przykład za pomocą przycisku „Dodaj do listy ignorowanych” w menu kontekstowym

szybkie rozwiązanie: filtruj aplikacje z /system/bin, które istnieją również w /system/apps

Problem nr 3: brak akceleracji sprzętowej

BeOS był pełen programów demonstracyjnych. Żaden film BeOS nie byłby kompletny bez wielu okien z odtwarzaniem różnych filmów. Niesamowite osiągnięcie jak na tamte czasy. Haiku zawiera demonstracje 3D przedstawiające czcionki 3D poruszające się w przestrzeni. (Hej, Haiku nie przygotowuje się do IPO, prawda?)

BeOS z 1995 roku, na którym opiera się Haiku. Działał wówczas na dwóch procesorach PowerPC 603 o częstotliwości taktowania 66 MHz

Chcemy stać się Linuxem świata audio i wideo.

-Jean-Louis Hesse, dyrektor generalny

Co zaskakujące, wideo i 3D w Haiku nie są przyspieszane sprzętowo. Chyba też gry.

Od deweloperów Pan. plusk и Aleksa von Glucka Istnieje dokumentacja dotycząca akceleracji sprzętowej („zajmuje to około dwóch osobo-miesięcy”). Akceleracja 3D będzie realizowana przez Mesa (Haiku, jak już wspomniano, używa Mesa i LLVMPipe jako podstawy dla OpenGL), w przypadku wideo można polegać FFmpeg lub stwórz własne rozwiązanie (wiem, że Haiku używa już wewnętrznie FFMpeg, po prostu nie jest możliwe użycie VDPAU lub innego podobnego API bez akcelerowanych sterowników).

Trzymajmy kciuki!

Problem nr 4: programy nie są przeszukiwane

Wiem, że jest już sporo programów CLI przeniesionych na Haiku, ale nie widzę ich w HaikuDepot. Nie ma nawet podpowiedzi. W wierszu poleceń nie ma poleceń „haiku…” ani „port…”

~/testing> haikuports
bash: haikuports: command not found

Po googlowaniu I znaleziony, skąd pobrałem avrdude. Podczas uruchamiania pojawiło się okno z niezadowolonymi zależnościami po dwukrotnym kliknięciu. Byłoby miło, gdyby tak się nie stało. (To jeden z powodów, dla których tak bardzo to lubię pakiety .app dla komputerów Mac i AppImage dla Linuksa).

Od twórców dowiedziałem się, że „teoretycznie” tak system, zapobiegając temu. Widocznie potrzebuje więcej miłości.

Co powinno być zrobione? Tutaj Istnieją instrukcje dla tych, którzy chcą przenieść programy Haiku, ale nie ma instrukcji dla tych, którzy chcą po prostu korzystać z przeniesionych programów. To tutaj się zaangażowałem.

Deweloper powiedział mi: „Nie wspominamy o HaikuPorts, ponieważ 99.9% użytkowników nie musi wiedzieć ani wiedzieć, jak dokładnie te pakiety są tworzone i wyświetlane w HaikuDepot”. Zgadzać się. Mowa o HaikuDepot i o tym, jak coś stamtąd wyciągnąć, bo interfejs HaikuDepot tego nie pokazuje (na przykład avrdude kli). Podobno powinno być checkbox wyświetlający aplikacje CLI w interfejsie HaikuDepot, ale nie znalazłem go, a może go nie ma. („Polecane” lub „Wszystkie pakiety”... potrzebujesz tego? Nie, nie chcę przeglądać „wszystkich” pakietów, zakładam, że wyświetli się wiele bibliotek. Coś w stylu starego dobrego Synaptic).

Zamiast tego ja znaleziony. Nie wiem też jak to zainstalować (Mówią, że HaikuArchives to „repozytorium obsługiwanego oprogramowania”, a także, że „wszystkie wartościowe programy są już w HaikuPorts” - potrzebni są integratorzy).

Po dłuższym googlowaniu znalazłem:

/> pkgman search avrdude​Status Name Description
-------------------------------
avrdude A tool to up/download to AVR microcontrollers

Wow! Byłoby miło, gdyby ten zespół był bardziej widoczny. Jeden z twórców potwierdził, że „pkgman jest odpowiednikiem CLI dla HaikuDepot”. Dlaczego wtedy nie podano jej imienia? haikudepot?

Przede wszystkim zainstalowałem polecenie_not_found-0.0.1~git-3-any.hpkg. Teraz mogę to zrobić:

/> file /bin/bash
DEBUG:main:Entered CNF: file
This application is aviaiblible via pkgman install file

szybkie rozwiązanie: dodaj command_not_found-*-any.hpkg do instalacji domyślnej.

Twórca Haiku wierzy, że „w Haiku, w przeciwieństwie do Linuksa, nie ma tak naprawdę potrzeby stosowania polecenia nie znaleziono”, ponieważ „możesz po prostu uruchomić pkgman install cmd:nazwa_polecenia”. No cóż, skąd ja, „zwykły śmiertelnik”, mogę o tym wiedzieć?!

Pakiety, menedżery pakietów, zależności. Ten w Haiku jest z pewnością znacznie mądrzejszy niż większość, ale nadal jest menedżerem pakietów:

/> pkgman install avrdude100% repochecksum-1 [65 bytes]
Validating checksum for Haiku…done.
100% repochecksum-1 [64 bytes]
Validating checksum for HaikuPorts... done.
100% repocache-2 [951.69 KiB]
Validating checksum for HaikuPorts... done.
Encountered problems:
problem 1: nothing provides lib:libconfuse>=2.7 needed by libftdi-1.4–7
solution 1:
- do not install “providing avrdude”
Please select a solution, skip the problem for now or quit.
select [1/s/q]:

Menedżerowie pakietów robią to, co zawsze robią menedżerowie pakietów, niezależnie od systemu operacyjnego. Jest powód, dla którego mnie to przyciąga — mówiłem to, prawda? - Do pakiety .aplikacja i AppImages.

Ponadto brakuje tutaj kilku bardzo popularnych aplikacji typu open source:

/> pkgman install inkscape
100% repochecksum-1 [65 bytes]
Validating checksum for Haiku…done.
100% repochecksum-1 [64 bytes]
Validating checksum for HaikuPorts…done.
*** Failed to find a match for “inkscape”: Name not found

Deweloperzy odpowiadają: „Ponieważ nie ma Gtk, nie będzie Inkscape”. Zrozumiany. Inny programista dodał: „Ale mamy niesamowity WonderBrush”. Nie wiedziałem o tym, ale nie jest to widoczne w HaikuDepot, a gdzie by to było? (korekta: powinienem był przejść do zakładki „Wszystkie pakiety”! Całkowicie przegapiłem ten punkt!)

/> pkgman install gimp
100% repochecksum-1 [65 bytes]
Validating checksum for Haiku... done.
100% repochecksum-1 [64 bytes]
Validating checksum for HaikuPorts... done.
*** Failed to find a match for “gimp”: Name not found​/> pkgman install arduino
100% repochecksum-1 [65 bytes]
Validating checksum for Haiku... done.
100% repochecksum-1 [64 bytes]​
Validating checksum for HaikuPorts... done.
*** Failed to find a match for “arduino”: Name not found

Wiem, że „arduino było tam wcześniej”… dokąd to wszystko poszło?

Między innymi zaskoczył mnie fakt „technicznej gadatliwości”: wyświetla się tyle linijek, że na końcu jest napisane: „to oprogramowanie nie jest dostępne”.

Problem nr 5: różne szorstkie krawędzie, które należy poprawić

Przełączaj się między aplikacjami

Bez Alt+Tab do przełączania aplikacji jest nudno. Ctrl+Tab działa, ale jakoś krzywo.

Wskazówka dla programistów: jeśli włączę układ Windows, Cmd i Ctrl zamienią się miejscami, a Alt+Tab staną się znajome. Ale chcę się czuć jak Mac, korzystając z klawiatury PC!

Uwaga od twórców: „Przełączenie ctrl+tab na alt+tab zaskoczy niektórych użytkowników.” Proste rozwiązanie: włącz oba! (jako użytkownik komputerów Mac, Windows i Linux z Gnome, KDE, Xfce wciąż nie wiem, czego się spodziewać).

Mój drugi dzień z Haiku: zachwycony, ale jeszcze nie gotowy na zmianę
Przełączanie aplikacji za pomocą Ctrl+Tab przy użyciu Twitchera. W niektórych miejscach się pojawia, czasem nie po raz pierwszy

Co gorsza: ctrl+tab czasami pokazuje okno z ikonami aplikacji, a czasami nie. Między innymi kolejność przełączania aplikacji wydaje się przypadkowa: StyledEdit-WebPositive-back StyledEdit-WebPositive-StyledEdit-okno z ikonami aplikacji... Błąd oprogramowania? (Czy ktoś wie, czy istnieje narzędzie do nagrywania GIF-ów dla Haiku?) Poprawka: To jest funkcja, a nie błąd.

Krótkie naciśnięcie Ctrl+Tab powoduje bezpośrednie przejście do poprzedniej aplikacji bez wyświetlania okna Twitchera. Jeśli przytrzymasz kombinacje dłużej, otrzymasz to, do czego już jestem przyzwyczajony.

Skróty

Jeśli mówimy o skrótach klawiaturowych, to gdy zorientujesz się, że wszystko jest podobne do Maca, automatycznie spróbujesz użyć zwykłych skrótów... Na przykład w „Otwórz…” i „Zapisz jako…” okna dialogowe, chcę nacisnąć alt+d, aby wyświetlić „roboczą” tabelę katalogów” i tak dalej.

Programiści „mają możliwość dodania tego” „do prośby o ulepszenie okna dialogowego pliku”. Utworzyłbym takie żądanie, gdyby na GitHubie lub GitLabie, gdzie mam konta, istniał lokalny moduł do śledzenia problemów.

Ale jak wyjaśniłem wcześniej, nie mogę zarejestrować się w ich systemie. (Jak można się domyślić, chcę podkreślić łatwość pracy z tymi rzeczami podczas korzystania z usług publicznych, takich jak GitHub czy GitLab). Poprawka: https://dev.haiku-os.org/ticket/15148

Niespójności

Aplikacje Qt i aplikacje natywne różnią się zachowaniem. Na przykład możesz usunąć ostatnie słowo za pomocą alt+backspace w aplikacjach Qt, ale nie w natywnych. Podczas edytowania tekstu mogą występować inne różnice. Chciałbym, aby takie niespójności zostały usunięte.

Korekta: Nie skończyłem jeszcze pisać tego artykułu (pokazałem go najpierw na kanale deweloperskim Haiku w celu zebrania komentarzy), gdy okazało się, że rozbieżność ta została naprawiona! Niesamowity! Jak ja kocham projekty open source! Dziękuję, Kasper Kasper!

Uwagi

Wciąż uczę się Haiku i wciąż robi na mnie wrażenie. Choć dzisiaj skupiłem się na opisaniu irytacji, nie mogę powstrzymać się od przypomnienia, dlaczego ten system operacyjny jest tak intrygujący. Poniżej znajduje się kilka przykładów. Przypominamy, jak Haiku robi rzeczy, które są koncepcyjnie poprawne.

Jeśli dwukrotnie klikniesz plik wykonywalny, który nie ma wymaganych bibliotek, w systemie Linux nic nie zobaczysz. Haiku wyświetli ładne graficzne okno dialogowe z informacją o problemie. Od dawna marzyłem o takich rzeczach w Linuksie i nadal jestem zachwycony, że udało się to zrobić właśnie w Haiku. Ten przykład pokazuje, że system operacyjny jest spójny na wszystkich poziomach. Rezultatem jest elegancja, piękno i prostota, nawet w przypadkach takich jak obsługa błędów.

Fascynujący wygląd pod maską.

Dokumentacja QuickLaunch stwierdza:

Mogą istnieć 2 powody, dla których QuickLaunch nie znajdzie aplikacji:

  • Aplikacja nie znajduje się na partycji BeFS lub partycja BeFS nie jest sformatowana do obsługi zapytań.
  • Aplikacja nie ma odpowiedniego atrybutu BEOS:APP_SIG. W takim przypadku poproś programistę aplikacji o dodanie go lub spróbuj wykonać poniższe czynności
    Ta rada: jeśli używasz aplikacji lub skryptu, który nie jest wyświetlany w QuickLaunch (i znajduje się w zapisywalnej lokalizacji) - spróbuj dodać te atrybuty w terminalu.

    addattr BEOS:TYPE application/x-vnd.Be-elfexecutable /ścieżka/do/twojej/aplikacji lub-skryptu

    addattr BEOS:APP_SIG application/x-vnd.anything-unique /ścieżka/do/twojej/aplikacji lub-skryptu

Daje to pewien wgląd w to, jak magia taka jak Launch Services, którą nadal podziwiam, faktycznie działa (i którego zupełnie nie ma w środowiskach pracy na Linuksie).

Nie mniej ekscytujące jest „Otwórz za pomocą…”

Wybierz plik, naciśnij alt+I, a następnie ekran informacyjny pozwoli Ci wybrać, która aplikacja może otworzyć konkretny plik.

Mój drugi dzień z Haiku: zachwycony, ale jeszcze nie gotowy na zmianę
W Haiku mogę zastąpić aplikację, aby otworzyć jeden konkretny plik. Fajny?

Wszystko to działa, nawet jeśli brakuje rozszerzenia nazwy pliku, i w końcu mogę nakazać otwieranie różnych plików tego samego typu w różnych aplikacjach, co jest bardzo trudne, jeśli nie prawie niemożliwe, w środowiskach graficznych Linuksa.

wniosek

Jak pisałem wczoraj, Haiku otworzyło mi oczy i pokazało, jak środowisko pracy może „po prostu działać”. Drugiego dnia również znalazłem kilka rzeczy, które wyraźnie wymagały poprawy.

Żaden z nich nie przestanie działać. Jestem naprawdę podekscytowany przyszłością tego osobistego systemu operacyjnego dla komputerów stacjonarnych. Jest to mile widziany rozwój wykraczający poza „środowiska graficzne Linuksa”, które w dalszym ciągu wykazują poważne problemy, których nie da się rozwiązać w najbliższej przyszłości. problemy architektoniczne.

Mam nadzieję na Haiku.

Spróbuj sam! W końcu projekt Haiku udostępnia generowane obrazy do rozruchu z DVD lub USB codziennie. Aby zainstalować, wystarczy pobrać obraz i zapisać go na dysku flash za pomocą Akwaforcista

Czy masz jakieś pytania? Zapraszamy na zajęcia rosyjskojęzyczne kanał telegramu.

Przegląd błędów: Jak strzelić sobie w stopę w C i C++. Zbiór przepisów Haiku OS

Od autora tłumaczenia: to drugi artykuł z serii o Haiku.

Lista artykułów: pierwszy

Źródło: www.habr.com

Dodaj komentarz