Мой другі тыдзень з Haiku: мноства утоеных алмазаў і прыемных сюрпрызаў, а таксама некаторыя праблемы

Мой другі тыдзень з Haiku: мноства утоеных алмазаў і прыемных сюрпрызаў, а таксама некаторыя праблемы
Рэдагаванне здымка экрана для гэтага артыкула – у Haiku

TL; DR: Прадукцыйнасць нашмат лепш, чым першапачаткова. Вінаваты быў ACPI. Запуск у віртуальнай машыне працуе выдатна для паказу экрана. Git і менеджэр пакетаў убудаваны ў файлавы мэнэджар. Публічныя бесправадныя сеткі не працуюць. Расчараванне з python.

На мінулым тыдні я адкрыў для сябе Haiku, нечакана добрую сістэму. І нават цяпер, на другім тыдні я працягваю знаходзіць мноства ўтоеных алмазаў і прыемных сюрпрызаў, ну і, само сабой, штотыднёвую порцыю розных нюансаў.

Proizvoditelnost

Як аказалася, жаласная прадукцыйнасць першага тыдня, асабліва ў браўзэры (затрымкі пры наборы тэксту, да прыкладу), магчыма, злучаны з крывой рэалізацыяй 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, у "Workspaces"
  • Выстаўце там лік працоўных сталоў: 2
  • Ctr-Alt-ПраваяСтрэлка пераключыць на другі працоўны стол
  • Выпраўце ярлык для запуску Virtual Machine Manager так, каб ён запускаўся ад root (дадаючы ў пачатку sudo), інакш ён у мяне не працаваў
  • Запусціце Haiku на другім працоўным стале
  • Загрузіцеся да яе працоўнага стала, выстаўце дазвол FullHD (мне не ўдалося прымусіць Haiku зрабіць гэта аўтаматычна, магчыма ёсць спосаб прымусіць QEMUKVM перадаваць EDID ад манітора, але я не знайшоў такую ​​настройку ў Virtual Machine Manager) [трэба было паставіць яшчэ адну відэакарту і пракінуць яе ў Haiku… – заўв. перакладчыка]
  • Націсніце Ctrl+Alt для таго, каб клавіятура і мыш "вярнуліся" да Linux
  • Ctr-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
  • Autostart = /boot/home/config/settings/boot/user/launch

Мне трэба знайсці каманду сінхранізацыі лакальнага часу па NTP… Я чуў, што яно ўвогуле павінна працаваць аўтаматычна, але ў мяне чамусьці не працуе. Што вельмі дрэнна, паколькі ў мяне здохлая батарэя для RTC, што азначае скід часу пры адключэнні харчавання.

Больш падказак

Дадатак жучок паказвае карысныя парады і рэкамендацыі (азнаёмцеся з імі!).

Публічныя бесправадныя сеткі

У мяне не атрымалася падлучыцца да бесправадных сетак падчас шпацыру нягледзячы на ​​тое, што хатняя бесправадная сетка ў мяне працуе. Публічныя месцы (аэрапорты, гатэлі, вакзалы) звычайна пакрыты мноствам бесправадных сетак, кожная з якіх звычайна складаецца з некалькіх кропак доступу.

Мой другі тыдзень з Haiku: мноства утоеных алмазаў і прыемных сюрпрызаў, а таксама некаторыя праблемы
Цэнтральны чыгуначны вакзал Франкфурта

А што ж мы знойдзем на ж/д вакзале Франкфурта? Кучу розных сетак:

Мой другі тыдзень з Haiku: мноства утоеных алмазаў і прыемных сюрпрызаў, а таксама некаторыя праблемы
Звычайная сітуацыя для публічных месцаў. Тут: Цэнтральны чыгуначны вакзал Франкфурта

Магчымасцяў для падлучэння - хоць адбаўляй. Што робіць Haiky з гэтымі сеткамі? Насамрэч не шмат: моцна блытаецца ў іх. Бо я быў адключаны ад сеткі ўвесь гэты час.

Не працуе перадача кропак доступу?

Усё пачынаецца з таго, што кожны пункт доступу паказваецца асобна, – нават калі яны належаць адной сетцы з агульным SSID, – не тое што на любой іншай, знаёмай мне, АС.

Мой другі тыдзень з Haiku: мноства утоеных алмазаў і прыемных сюрпрызаў, а таксама некаторыя праблемы
Паказваецца некалькі кропак з аднолькавым SSID. Ну і як будзе працаваць перадача абслугоўвання ў такіх умовах?

А павінен адлюстроўвацца толькі адзін SSID, для якога будзе падбірацца кропка доступу з наймацнейшым сігналам. Кліент павінен абраць іншую кропку з мацнейшым сігналам, але з тым жа SSID (пры даступнасці), калі сувязь з бягучай кропкай доступу стане занадта слабой – усё працуе нават пры перасоўванні (перадача абслугоўвання кліента паміж кропкамі доступу). Стварыў заяўку.

Ніякіх адчыненых сетак?

Мой другі тыдзень з Haiku: мноства утоеных алмазаў і прыемных сюрпрызаў, а таксама некаторыя праблемы
Haiku настойвае на тым, што павінен быць пароль, нават калі сетка адчыненая.

Haiku працягвае патрабаваць пароль сеткі, хаця самой сеткі ніякіх пароляў не трэба. Таксама стварыў заяўку.

Блытаніна з-за captive portals?

Многія бесправадныя сеткі выкарыстоўваюць captive portals, калі карыстач перанакіроўваецца на старонку аўтарызацыі, дзе можа прыняць умовы і дамовы, перш чым выкарыстоўваць сетку. Магчыма, гэта заблытала маю АС яшчэ больш. У выніку, па ўсёй бачнасці, бесправадная падсістэма ў мяне заблакавалася цалкам.

Мой другі тыдзень з Haiku: мноства утоеных алмазаў і прыемных сюрпрызаў, а таксама некаторыя праблемы
Праз некаторы час уся бесправадная падсістэма цалкам заблакавалася

Няма доступу да сеткі падчас падарожжа, смутак-нуда.

Расчараванне з Python

Як лёгка і нязмушана запусціць "выпадкова" абраную праграму на Python? Аказалася, не ўсё так проста. Прынамсі, я сам не да канца ўсё зразумеў…

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))

Падвіслы pip – вядомая праблема (яму патрэбна падтрымка hardlinks, якія не падтрымліваюцца ў Haiku). Мне падказалі, што трэба выкарыстоўваць python3.6 (я б сказаў, што гэта бардак). Адкрыў заяўку з pip

Куды ідзем далей?

Haiku з'яўляецца прыкладам сфакусаванай аперацыйнай сістэмы для ПК, і як такая мае выдатныя прынцыпы, якія значна спрашчаюць агульныя працоўныя працэсы. Яе распрацоўка была стабільнай, але павольнай – апошнія гадоў 10, у выніку чаго падтрымка абсталявання засталася дастаткова абмежаванай, а сама сістэма адносна невядомай. Але сітуацыя мяняецца: падтрымка абсталявання забяспечвае магчымасць запуску Haiku на адносна шырокім спісе машын (хоць і з памылкамі), а з улікам таго, што версія сістэмы не 1.0 – сістэме трэба прыцягнуць большую ўвагу грамадскасці. Чым я магу дапамагчы лепш за ўсё? Мяркую, гэтая серыя артыкулаў будзе карысная. Праз 2 тыдні я пачаў паведамляць пра памылкі, а таксама пачаў серыю відэатрансляцый.

Яшчэ раз выказваю вялікую падзяку камандзе распрацоўшчыкаў Haiku, вы лепшыя! Абавязкова дайце ведаць, калі прыдумаеце, як я змагу зрабіць унёсак у развіццё праекту, хоць я і не планую пісаць на з++ хуткім часам.

Паспрабуйце самі! Бо праект Haiku падае выявы для загрузкі з DVD ці USB, фармаваныя штодня.
Зьявіліся пытаньні? Запрашаем вас у рускамоўны telegram-канал.

probono - заснавальнік і вядучы распрацоўшчык праекта AppImage, заснавальнік праекта PureDarwin, удзельнік розных праектаў з адкрытым зыходным кодам. Здымкі экрана былі зроблены на Haiku. Падзяка выяўляецца распрацоўшчыкам на канале #haiku у сетцы irc.freenode.net

Агляд памылак: Як стрэліць сабе ў нагу ў C і C ++. Зборнік рэцэптаў Haiku OS

Ад аўтара перакладу: гэта дзявяты і заключны артыкул з цыклу пра Haiku.

Спіс артыкулаў: Першая Другая трэцяя чацвёртая пятая шостая Сёмая Восьмая

Крыніца: habr.com

Дадаць каментар