Моя втора седмица с Haiku: много скрити диаманта и приятни изненади, а също така и някои проблеми

Моя втора седмица с Haiku: много скрити диаманта и приятни изненади, а също така и някои проблеми
Редактиране на екранна снимка за тази статия — в Haiku

TL;DR: Производителността е значително по-добра, отколкото в началото. Виновен беше ACPI. Стартирането в виртуална машина работи перфектно за показване на екрана. Git и пакетният мениджър са интегрирани в файловия мениджър. Публичните безжични мрежи не работят. Разочарование с Python.

Миналата седмица открих Haiku, неочаквано добра система. И дори сега, на втората седмица продължавам да намирам много скрити диаманти и приятни изненади, както и, разбира се, седмичната доза различни нюанси.

Производителност

Както се оказа, плачевната производителност през първата седмица, особено в браузъра (забавяне при въвеждане на текст, например), вероятно е свързана с кривата реализация на ACPI в BIOS на моя компютър.

За да деактивирам ACPI, правя:

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

и се рестартирам. Сега системата ми най-накрая реагира бързо, както беше отбелязано и от други рецензенти преди. Но в резултат на това вече не мога да се рестартирам без kernel panic (може да се изключи с известието "Сега можете да изключите компютъра").

ACPI, DSDT, iasl

О, вероятно трябва да се извърши отладка на ACPI, нещо ми е останало в ума от времето, когато работех по PureDarwin, защото на ядрото xnu често бяха нужни коригирани файлове DSDT.aml

Да вървим…

Свалям и събирам iasl, програмата за отладка на ACPI от Intel. Всъщност не, тя вече е била портната:

~> pkgman install iasl

Запазвам ACPI таблиците:

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

Оказва се, че тя не работи в Haiku, решавам да се рестартирам в Linux, там ще взема съдържанието на ACPI. След това поправих грешките с помощта на iasl, текстов редактор и някои знания (можете да потърсите в Google „patch dsdt fix“) и бездънно търпение. Независимо от това, все пак не успях да заредя поправения DSDT с помощта на буутлоудера Haiku. Правилното решение, вероятно, ще бъде прехвърлянето ACPI on-the-fly patching, в буутлоудера Haiku (приблизително така, както прави буутлоудерът Clover, поправяйки DSDT на летци по етикети и шаблони). Отворих заявка.

Виртуални машини

Въобще, не съм фен на виртуалните машини, тъй като те най-често потребяват повече оперативна памет и други ресурси, които имам на разположение. Освен това, не харесвам разходите. Но трябваше да направя риск и да използвам ВМ, тъй като Haiku все още не може да записва видеопредавания със звук (тъй като драйверите за звук не работят на моя хардуер и имам карта, свързвана през usb1 (първа версия), а нейният драйвер трябва да се компилира ръчно). Какво да кажа: за такива решения успях да получа много добър резултат при създаването на моето видеопредаване. Оказа се, че Virtual Machine Manager е истинско чудо. Може би в този софтуер (който игнорирах повече от 15 години) компанията RedHat е вложила всичките си инженерни пари. Във всеки случай, към моето голямо учудване, виртуализираният Haiku работи малко по-бързо, отколкото на същия хардуер (в това е трудно да се повярва, но така ми се струва). [Не изглежда, но имаше аналогичен опит през 2007 година с новоизлязлата Centos5, която можеше да бъде инсталирана виртуализирана в Xen. — бел. на преводача]

Видеопредаване

За мен бяха необходими твърде много движения, така че записах стъпка по стъпка ръководство (по-голямата част за себе си, за да мога да го възпроизведа по-късно), но можете да използвате тази информация и за запис на вашите видеопредавания с Haiku (което определено си струва да опитате).

Кратко:

  • Използвайте прилични слушалки и звукова карта C-Media USB
  • Заредете компютъра с помощта на жив образ Pop!OS NVIDIA (за хардуерно ускорение на кодиране по nvenc)
  • Свалете нощния образ Haiku Anyboot 64bit
  • Настройте KVM, както е описано в горната статия
  • Свалете OBS Studio AppImage (не забравяйте да кажете на разработчиците, че искате официален)
  • Добавете филтър за намаляване на шума в Desktop Audio (щракнете с десния бутон на мишката върху Desktop Audio, след това «Filters», след това «+», след това «Noise Suppression», оставете нивото по подразбиране)
  • Прегледайте настройките на звука в XFCE
  • Щракнете с десния бутон на мишката върху Desktop Audio, след това «Properties», изберете устройството «Audio Adapter Analog Stereo»
  • Отидете в менюто на XFCE, в «Работни пространства»
  • Настройте броя на работните пространства: 2
  • Ctr-Alt-ДяснаСтрелка ще превключи на второто работно пространство
  • Поправете ярликовете за стартиране на Virtual Machine Manager, така че да стартира от root (добавяйки в началото sudo), иначе не работеше при мен
  • Стартирайте Haiku на втория работен плот.
  • Заредете до неговия работен плот, задайте резолюция FullHD (не успях да накарам Haiku да направи това автоматично, може би има начин да накарам QEMUKVM да предава EDID от монитора, но не намерих такава настройка в Virtual Machine Manager). [трябваше да сложа още една видеокарта и да я пробразя в Haiku... — бел. на преводача]
  • Натиснете Ctrl+Alt, за да се 'върнат' клавиатурата и мишката обратно в Linux.
  • Ctrl-Alt-ЛявоСтрелка ще превключи на първия работен плот.
  • В OBS добавете 'Window Capture (XComposite)', и изберете прозореца 'Haiku on QEMUKVM', включете отметката 'Swap red and blue'.
  • Запишете видео и го редактирайте с Shotcut (стартирайте го от потребителя root, за да работи хардуерното ускорение nvenc).
  • Звуковата пътека е от музикалната библиотека на YouTube 'Timelapsed Tides'. Филтри: 'Audio fade in', 'Audio fade out', звука -35db (добре, стига, това не е инструкция за Shotcut).
  • Експортирайте, 'YouTube', качване. Видеото ще бъде FullHD в YouTube без специална постобработка.

Ето я!

https://youtu.be/CGs-lZEk1h8
Видеострийминг на Haiku с QEMUKVM, USB звукова карта, OBS Studio и Shotcut.

Щастлив съм, макар да щях да съм много по-учен, ако звуковата карта, OBS Studio и Shotcut първоначално работеха в Haiku, и не ми се налагаше да правя тази дълга настройка. [Взел бих VirtualBox, там всичко е налично веднага за запис на видеострийм директно в настройките на виртуалната машина. — бел. на преводача]

Tracker и неговите допълнения.

Tracker за Haiku е нещо като Finder в Mac или Explorer в Windows. Ще пробвам да потърся. tracker add-on. в HaikuDepot.

Интеграция на Git в файловия мениджър.

Просто цитиране на изображенията от неговата начална страница.

Моя втора седмица с Haiku: много скрити диаманта и приятни изненади, а също така и някои проблеми
TrackGit е включен във файловия мениджър Haiku.

Моя втора седмица с Haiku: много скрити диаманта и приятни изненади, а също така и някои проблеми
Може дори да клонирате репозиторий.

Това шега ли е?! Паролата в плосък текст? Учудващо е, че не използват 'keychain', за това в Haiku има BKeyStore. Оставих заявление..

Моя втора седмица с Haiku: много скрити диаманта и приятни изненади, а също така и някои проблеми
Паролата в плосък текст?

Интеграция на мениджъра на пакети във файловия мениджър.

Според началната страница на проекта:

Намира пакет(и) на всеки избран файл(ове), отваряйки го в предпочитаното приложение. По подразбиране това е HaikuDepot, където може да разгледате описанието на пакета, а на раздела 'Съдържание' можете да видите другите файлове, които са част от този пакет, както и тяхното местоположение.

Вероятно остава само една стъпка за изтриване на пакета...

Autostart/rc.local.d.

Как да стартирам нещо автоматично при зареждане?

  • rc.local.d = /boot/home/config/settings/boot/userbootscript.
  • Автозагрузка = /boot/home/config/settings/boot/user/launch

Трябва да намеря команда за синхронизиране на локалното време по NTP… Чух, че всъщност трябва да работи автоматично, но при мен не работи. Което е много лошо, тъй като батерията за RTC е изтощена, което означава нулиране на времето при спиране на захранването.

Повече подсказки

Приложение Съветник показва полезни съвети и препоръки (запознайте се с тях!).

Публични безжични мрежи

Не успях да се свържа с безжичните мрежи по време на разходката, въпреки че домашната безжична мрежа работи. Публичните места (летища, хотели, жп-гара) обикновено са покрити с множество безжични мрежи, всяка от които обикновено се състои от няколко точки за достъп.

Моя втора седмица с Haiku: много скрити диаманта и приятни изненади, а също така и някои проблеми
Централна жп-гара Франкфурт

А какво можем да намерим на жп-гарата на Франкфурт? Кучу разных сетей:

Моя втора седмица с Haiku: много скрити диаманта и приятни изненади, а също така и някои проблеми
Нормална ситуация за обществени места. Тук: Централна жп-гара Франкфурт

Възможности за свързване — колкото искаш. А какво прави Haiky с тези мрежи? Всъщност не много: много се обърква. В крайна сметка бях отключен от мрежата през цялото това време.

Не работи предаването на точките за достъп?

Всичко започва от това, че всяка точка за достъп се показва отделно, — дори ако принадлежат на една и съща мрежа с общ SSID, — не както на всяка друга, позната ми ОС.

Моя втора седмица с Haiku: много скрити диаманта и приятни изненади, а също така и някои проблеми
Показват се няколко точки с един и същ SSID. А как ще работи предаването на обслужването в такива условия?

Трябва да се показва само един SSID, за който ще се избира точка за достъп с най-силния сигнал. Клиентът трябва да избере друга точка с по-силен сигнал, но със същия SSID (при наличност), ако връзката с текущата точка за достъп стане прекалено слаба — всичко работи дори при движение (предаване на обслужването между точките за достъп). Създадох заявка.

Няма отворени мрежи?

Моя втора седмица с Haiku: много скрити диаманта и приятни изненади, а също така и някои проблеми
Haiku настоява, че трябва да има парола, дори и мрежата да е отворена.

Haiku продължава да изисква парола за мрежата, въпреки че самата мрежа не изисква пароли. Също така създадох заявка.

Объркване заради captive portals?

Много безжични мрежи използват каптивни портали, при които потребителят се пренасочва към страница за удостоверяване, където може да приеме условията и споразуменията, преди да използва мрежата. Вероятно, това още повече обърка операционната ми система. В крайна сметка, изглежда, безжичната подсистема ми е блокирана напълно.

Моя втора седмица с Haiku: много скрити диаманта и приятни изненади, а също така и някои проблеми
След известно време, цялата безжична подсистема беше напълно блокирана.

Няма достъп до мрежата по време на пътуване, тъга.

Разочарование с Python.

Как лесно и неангажирано да стартирам "случайно" избрана програма на Python? Оказа се, не всичко е толкова лесно. По всяка вероятност, не съм разбрал всичко напълно...

git clone https://github.com/micahflee/onionshare.git
cd onionshare
python3 -m venv venv
pkgman i setuptools_python36 # pkgman i setuptools_python инсталира за 3.7
pip3 install -r install/requirements.txt

Не може да бъде намерена версия, която да отговаря на изискването PyQt5==5.12.1 (от -r install/requirements.txt (ред 15)) (от версии: )
Не е намерено съвпадащо разпространение за PyQt5==5.12.1 (от -r install/requirements.txt (ред 15))

# спряно тук - не продължава или не излиза

pkgman i pyqt

# Няма промяна, същата грешка; как да го вкарам във venv?
# Опитвам извън venv

Не може да бъде намерена версия, която да отговаря на изискването PyQt5==5.12.1 (от -r install/requirements.txt (ред 15)) (от версии: )
Не е намерено съвпадащо разпространение за PyQt5==5.12.1 (от -r install/requirements.txt (ред 15))

Замръзнал. pip — известен проблем (нуждае се от поддръжка на hardlinks, която не се поддържа в Haiku). Бяха ми казали, че трябва да използвам python3.6. (щях да кажа, че е бъркотия). Отворих заявка с pip.

Къде отиваме оттук?

Haiku е пример за фокусирана операционна система за РС и като такава има отлични принципи, значително опростяващи общите работни потоци. Развитието й беше стабилно, но бавно — през последните десет години, поради което поддръжката на оборудването остава доста ограничена, а самата система е относително неизвестна. Но ситуацията се променя: поддръжката на оборудването осигурява възможност за стартиране на Haiku на сравнително широк списък от машини (въпреки че с грешки), а с оглед на факта, че версията на системата не е 1.0 — системата трябва да привлече по-голямо внимание от обществеността. Как мога да помогна най-добре? Предполагам, че тази серия статии ще бъде полезна. След 2 седмици, започна ще докладвам за грешките., а също така започнах серия от видео предавания.

Още веднъж изразявам огромната си благодарност на екипа разработчици на Haiku, вие сте най-добрите! Не забравяйте да ме уведомите, ако измислите как мога да допринеса за развитието на проекта, макар че не планирам да пиша на C++ в близко бъдеще.

Опитайте сами! В края на краищата проектът Haiku предлага образи за зареждане от DVD или USB, генерирани ежедневно.
Имате въпроси? Каним ви в рускоезичния телеграм канал.

probono — основател и водещ разработчик на проекта AppImage, основател на проекта PureDarwin, участник в различни проекти с отворен код. Екранните снимки бяха направени на Haiku. Благодарности на разработчиците в канала #haiku в мрежата irc.freenode.net.

Преглед на грешките: Как да си простреляте крака в C и C++. Сборник рецепти на Haiku OS

От автор Превод: това е деветата и заключителна статия от цикъла за Haiku.

Списък на статиите: Първа Втора Трети Четвърта Пета Шеста Седма Осма

Източник: habr.com

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster