Mój drugi tydzień z Haiku: mnóstwo ukrytych diamentów i miłych niespodzianek, a także kilka wyzwań

Mój drugi tydzień z Haiku: mnóstwo ukrytych diamentów i miłych niespodzianek, a także kilka wyzwań
Edycja zrzutu ekranu do tego artykułu - w Haiku

TL; DR: Wydajność jest znacznie lepsza niż pierwotnie. Winne było ACPI. Uruchamianie na maszynie wirtualnej działa dobrze w przypadku udostępniania ekranu. Git i menedżer pakietów są wbudowane w menedżera plików. Publiczne sieci bezprzewodowe nie działają. Frustracja z pytonem.

W zeszłym tygodniu Odkryłem Haiku, niespodziewanie dobry system. I nawet teraz, w drugim tygodniu, nadal znajduję wiele ukrytych diamentów i miłych niespodzianek oraz, oczywiście, cotygodniową porcję różnych niuansów.

produktywność

Jak się okazuje, fatalna wydajność pierwszego tygodnia, zwłaszcza w przeglądarce (np. opóźnienia przy pisaniu), może mieć związek z błędną implementacją ACPI w BIOSie mojego komputera.

Aby wyłączyć ACPI, robię:

sed -i -e 's|#acpi false|acpi false|g' /boot/home/config/settings/kernel/drivers/kernel

i uruchom ponownie. Teraz mój system w końcu reaguje szybko, jak zauważyli inni recenzenci w przeszłości. Ale w rezultacie nie mogę już ponownie uruchomić komputera bez paniki jądra (zamknięcie można wykonać za pomocą komunikatu „Możesz teraz wyłączyć zasilanie komputera”).

ACPI, DSDT, IASL

No cóż, najprawdopodobniej trzeba trochę debugować ACPI, mgliście pamiętam coś na ten temat z czasów, gdy pracowałem nad PureDarwinem, ponieważ jądro xnu często potrzebowało naprawionych plików DSDT.aml

Chodźmy...

Pobieranie i zbieranie iasl, Debuger ACPI firmy Intel. Właściwie nie, zostało już przeniesione:

~>  pkgman install iasl

Zapisuję tabele ACPI:

~> acpidump  -o DSDT.dat
Cannot open directory - /sys/firmware/acpi/tables
Could not get ACPI tables, AE_NOT_FOUND

Okazuje się, że nie działa to jeszcze w Haiku, decyduję się na ponowne uruchomienie systemu Linux i usunięcie tam zawartości ACPI. Następnie naprawiłem błędy za pomocą iasl, edytora tekstu, pewnej wiedzy (możesz w Google „poprawić dsdt fix”) i dużo cierpliwości. Jednak w rezultacie nadal nie mogłem pobrać poprawionego DSDT za pomocą narzędzia do pobierania Haiku. Właściwym rozwiązaniem może być transfer Łatanie ACPI w locie, do programu ładującego Haiku (mniej więcej taki sam jak ten tworzy program ładujący Clover, korygowanie DSDT na bieżąco w oparciu o etykiety i wzorce). otworzyłem prośba.

Wirtualne maszyny

Generalnie nie jestem fanem maszyn wirtualnych, gdyż to one najczęściej zużywają więcej RAM-u i innych zasobów, którymi dysponuję. Poza tym nie lubię narzutów. Musiałem jednak zaryzykować i skorzystać z VM, ponieważ Haiku nie wie jeszcze, jak nagrywać transmisje wideo z dźwiękiem (ponieważ mój sprzęt nie ma sterowników dźwięku i jest karta podłączona przez USB1 (pierwsza wersja), a jej sterownik należy złożyć ręcznie). Co chcę powiedzieć: za taka decyzja Tworząc swoją transmisję wideo udało mi się uzyskać bardzo dobry wynik. Okazało się, że Virtual Machine Manager to prawdziwy cud. Być może RedHat zainwestował wszystkie swoje pieniądze inżynieryjne w to oprogramowanie (które ignorowałem przez 15 lat). W każdym razie, ku mojemu wielkiemu zdziwieniu, zwirtualizowane Haiku działa trochę szybciej niż na tym samym sprzęcie (trudno w to uwierzyć, ale tak mi się wydaje). [Nie sądzę, żeby w 2007 roku było podobne doświadczenie z niedawno wydanym Centos5, który można było zainstalować wirtualnie w Xen. - około. tłumacz]

Transmisja wideo

Było tego trochę za dużo jak na mój gust, więc nagrałem przewodnik krok po kroku (głównie dla siebie, aby odtworzyć go później), ale możesz także wykorzystać te informacje do nagrywania strumieni wideo Haiku (co zdecydowanie warto wypróbować ).

Pokrótce:

  • Używaj porządnych słuchawek i karty dźwiękowej C-Media USB
  • Uruchom komputer, korzystając z obrazu na żywo Pop!OS NVIDIA (dla sprzętowego kodowania nvenc)
  • Pobierz obraz nocny Haiku Anyboot 64bit
  • Skonfiguruj KVM zgodnie z opisem w powyższym artykule
  • Pobierz OBS Studio AppImage (nie zapomnij powiedzieć programistom, że chcesz wersję oficjalną)
  • Dodaj filtr redukcji szumów do Desktop Audio (kliknij prawym przyciskiem myszy Desktop Audio, następnie „Filtry”, następnie „+”, następnie „Tłumienie szumów”, pozostaw poziom domyślny)
  • Przejdź do ustawień dźwięku w XFCE
  • Kliknij prawym przyciskiem myszy Desktop Audio, następnie „Właściwości”, wybierz urządzenie „Audio Adapter Analog Stereo”
  • Przejdź do menu XFCE, „Przestrzenie robocze”
  • Ustaw tam liczbę komputerów stacjonarnych: 2
  • Ctr-Alt-RightArrow przełączy się na drugi pulpit
  • Napraw skrót do uruchamiania Menedżera maszyny wirtualnej, aby działał jako root (dodając sudo), inaczej to nie zadziałało dla mnie
  • Uruchom Haiku na drugim pulpicie
  • Uruchom komputer na jej pulpicie, ustaw rozdzielczość na FullHD (nie udało mi się zmusić Haiku, aby zrobiło to automatycznie, może istnieć sposób, aby zmusić QEMUKVM do przesłania EDID z monitora, ale nie znalazłem takiego ustawienia w maszynie wirtualnej Menedżer) [Musiałem zainstalować kolejną kartę graficzną i przesłać ją do Haiku... - ok. tłumacz]
  • Naciśnij Ctrl+Alt, aby przywrócić klawiaturę i mysz do systemu Linux
  • Ctr-Alt-LeftArrow przełączy się na pierwszy pulpit
  • W OBS dodaj „Window Capture (XComposite)”, wybierz okno „Haiku na QEMUKVM”, zaznacz pole wyboru „Zamień czerwony i niebieski”.
  • Nagraj wideo, edytuj je za pomocą Shotcut (uruchom jako root, aby akceleracja sprzętowa nvenc działała)
  • Ścieżka dźwiękowa z biblioteki muzycznej YouTube „Timelapsed Tides”. Filtry: „Zanikanie dźwięku”, „Zanikanie dźwięku”, głośność -35 dB (ok, wystarczy, to nie jest instrukcja dla Shotcut)
  • Eksportuj, YouTube, pobierz. Film stanie się FullHD na YouTube bez specjalnego przetwarzania końcowego

Voilà!

https://youtu.be/CGs-lZEk1h8
Przesyłaj strumieniowo wideo Haiku za pomocą QEMUKVM, karty dźwiękowej USB, OBS Studio i Shotcut

Jestem szczęśliwy, chociaż byłbym znacznie szczęśliwszy, gdyby karta dźwiękowa, OBS Studio i Shotcut działały natywnie w Haiku i nie musiałbym przechodzić przez tę długą konfigurację. [Wziąłbym VirtualBox, wszystko jest tam od razu do nagrywania transmisji wideo bezpośrednio w ustawieniach maszyny wirtualnej. - około. tłumacz]

Tracker i jego dodatki

Tracker dla Haiku to to samo, co Finder na Macu lub Explorer na Windowsie. Spróbuję poszukać tracker add-on w HaikuDepot.

Integracja Gita z menedżerem plików

Cytuję tylko zdjęcia z jego strony głównej

Mój drugi tydzień z Haiku: mnóstwo ukrytych diamentów i miłych niespodzianek, a także kilka wyzwań
TrackGit zawarty w menedżerze plików Haiku

Mój drugi tydzień z Haiku: mnóstwo ukrytych diamentów i miłych niespodzianek, a także kilka wyzwań
Możesz nawet sklonować repozytorium

Co to jest, żart?! Hasło w postaci zwykłego tekstu? Co zaskakujące, nie używają „pęku kluczy”, Haiku ma do tego BKeyStore. Zostawił prośbę.

Mój drugi tydzień z Haiku: mnóstwo ukrytych diamentów i miłych niespodzianek, a także kilka wyzwań
Hasło w postaci zwykłego tekstu?

Integracja menedżera pakietów z menedżerem plików

Według strony głównej projektu:

Znajduje pakiety dowolnych wybranych plików i otwiera je w preferowanej aplikacji. Domyślnie jest to HaikuDepot, gdzie można zobaczyć opis pakietu, a w zakładce Zawartość możesz zobaczyć inne pliki wchodzące w skład tego pakietu, a także ich lokalizację.

Prawdopodobnie pozostał już tylko jeden krok do usunięcia pakietu...

Autostart/rc.local.d

Jak uruchomić coś automatycznie po uruchomieniu?

  • rc.local.d = /boot/home/config/settings/boot/userbootscript
  • Autostart = /boot/home/config/settings/boot/user/launch

Muszę znaleźć polecenie synchronizacji czasu lokalnego przez NTP... Słyszałem, że generalnie powinno działać automatycznie, ale z jakiegoś powodu u mnie nie działa. A to szkoda, bo mam wyczerpaną baterię zegara RTC, co oznacza, że ​​czas resetuje się po odłączeniu zasilania.

Więcej wskazówek

Aplikacja Tipster pokazuje przydatne porady i triki (sprawdź je!).

Publiczne sieci bezprzewodowe

Podczas spaceru nie mogłem połączyć się z sieciami bezprzewodowymi, mimo że moja domowa sieć bezprzewodowa działała. Miejsca publiczne (lotniska, hotele, dworce kolejowe) są zwykle objęte wieloma sieciami bezprzewodowymi, z których każda składa się zwykle z kilku punktów dostępowych.

Mój drugi tydzień z Haiku: mnóstwo ukrytych diamentów i miłych niespodzianek, a także kilka wyzwań
Dworzec Centralny we Frankfurcie

O czym znajdziemy Dworzec kolejowy we Frankfurcie? Kilka różnych sieci:

Mój drugi tydzień z Haiku: mnóstwo ukrytych diamentów i miłych niespodzianek, a także kilka wyzwań
Typowa sytuacja w miejscach publicznych. Tutaj: Dworzec Główny we Frankfurcie

Możliwości połączenia jest więcej niż wystarczająco. Co Haiky robi z tymi sieciami? Właściwie niewiele: bardzo się w nich zatraca. Przecież przez cały ten czas byłem odłączony od sieci.

Transfer punktu dostępu nie działa?

Wszystko zaczyna się od tego, że każdy punkt dostępu jest wyświetlany osobno – nawet jeśli należy do tej samej sieci i ma ten sam identyfikator SSID – w przeciwieństwie do innych znanych mi systemów operacyjnych.

Mój drugi tydzień z Haiku: mnóstwo ukrytych diamentów i miłych niespodzianek, a także kilka wyzwań
Wyświetlonych zostanie kilka punktów o tym samym identyfikatorze SSID. No ale jak będzie wyglądało przekazanie w takich warunkach?

I powinien być wyświetlany tylko jeden identyfikator SSID, dla którego zostanie wybrany punkt dostępu z najsilniejszym sygnałem. Klient musi wybrać inny punkt z silniejszym sygnałem, ale z tym samym SSID (o ile jest dostępny), jeśli połączenie z aktualnym punktem dostępowym stanie się zbyt słabe - wszystko działa nawet podczas ruchu (przekazywanie klienta pomiędzy punktami dostępowymi). Utworzono żądanie.

Brak otwartych sieci?

Mój drugi tydzień z Haiku: mnóstwo ukrytych diamentów i miłych niespodzianek, a także kilka wyzwań
Haiku upiera się, że musi istnieć hasło, nawet jeśli sieć jest otwarta.

Haiku w dalszym ciągu wymaga hasła sieciowego, chociaż sama sieć nie wymaga żadnych haseł. Również utworzył prośbę.

Zamieszanie wokół portali przechwytujących?

Wiele sieci bezprzewodowych korzysta z portali przechwytujących, w których użytkownik jest przekierowywany na stronę logowania, na której może zaakceptować warunki i umowy przed rozpoczęciem korzystania z sieci. To mogło jeszcze bardziej zmylić mój system operacyjny. W końcu najwyraźniej mój podsystem bezprzewodowy został całkowicie zablokowany.

Mój drugi tydzień z Haiku: mnóstwo ukrytych diamentów i miłych niespodzianek, a także kilka wyzwań
Po pewnym czasie cały podsystem bezprzewodowy został całkowicie zablokowany

Brak dostępu do sieci w podróży, smutek i melancholia.

Frustracja związana z Pythonem

Jak łatwo i bez wysiłku uruchomić „losowy” program w Pythonie? Okazało się, że nie wszystko jest takie proste. Przynajmniej ja sam nie do końca wszystko rozumiałem…

git clone https://github.com/micahflee/onionshare.git
cd onionsharepython3 -m venv venv
pkgman i setuptools_python36 # pkgman i setuptools_python installs for 3.7
pip3 install -r install/requirements.txt

Could not find a version that satisfies the requirement PyQt5==5.12.1 (from -r install/requirements.txt (line 15)) (from versions: )
No matching distribution found for PyQt5==5.12.1 (from -r install/requirements.txt (line 15))

# stalled here - does not continue or exit

pkgman i pyqt

# No change, same error; how do I get it into the venv?
# Trying outside of venv

Could not find a version that satisfies the requirement PyQt5==5.12.1 (from -r install/requirements.txt (line 15)) (from versions: )
No matching distribution found for PyQt5==5.12.1 (from -r install/requirements.txt (line 15))

Zawieszony pip jest znanym problemem (wymaga obsługi twardych łączy, które nie są obsługiwane w Haiku). Powiedzieli mi, czego mam użyć python3.6 (Powiedziałbym, że to bałagan). Otwierany aplikacja z pipem

Gdzie pójdziemy dalej?

Haiku jest przykładem skoncentrowanego systemu operacyjnego dla komputerów PC i jako taki ma doskonałe zasady, które znacznie upraszczają ogólną pracę. Jego rozwój był stabilny, choć powolny przez ostatnie 10 lat, w wyniku czego wsparcie sprzętowe pozostaje dość ograniczone, a sam system jest stosunkowo nieznany. Ale sytuacja się zmienia: obsługa sprzętu umożliwia uruchomienie Haiku na stosunkowo szerokiej gamie maszyn (aczkolwiek z błędami), a biorąc pod uwagę, że wersja systemu nie jest 1.0, system musi przyciągnąć większą uwagę opinii publicznej. Jak mogę najlepiej pomóc? Wierzę, że ta seria artykułów będzie przydatna. Po 2 tygodniach I zaczął zgłaszaj błędy, a także rozpoczął serię transmisji wideo.

Jeszcze raz wyrażam głęboką wdzięczność zespołowi tworzącemu Haiku, jesteście najlepsi! Koniecznie daj mi znać, jeśli przyjdzie Ci do głowy, w jaki sposób mogę przyczynić się do rozwoju projektu, chociaż w najbliższej przyszłości nie planuję pisać w C++.

Spróbuj sam! W końcu projekt Haiku udostępnia generowane obrazy do rozruchu z DVD lub USB codziennie.
Czy masz jakieś pytania? Zapraszamy na zajęcia rosyjskojęzyczne kanał telegramu.

probono jest założycielem i głównym programistą projektu AppImage, założycielem projektu PureDarwin i współautorem różnych projektów open source. Zrzuty ekranu zostały zrobione na Haiku. Podziękowania dla twórców na kanale #haiku na irc.freenode.net

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

Od autor tłumaczenie: to dziewiąty i ostatni artykuł z serii o Haiku.

Lista artykułów: pierwszy Drugi trzeci Po czwarte Po piąte Szósty siódmy Ósma

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

Dodaj komentarz