Редагування знімка екрана для цієї статті — у Haiku
TL; DR: Продуктивність набагато краща, ніж спочатку. Винен був ACPI. Запуск у віртуальній машині працює чудово для показу екрана. Git та менеджер пакетів вбудовані у файловий менеджер. Громадські бездротові мережі не працюють. Розчарування з python.
Продуктивність
Як виявилося, плачевна продуктивність першого тижня, особливо в браузері (затримки при наборі тексту, наприклад), можливо, пов'язані з кривою реалізацією 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
,
~> 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. Правильним рішенням, можливо, буде перенесення
Віртуальні машини
Загалом я не фанат віртуальних машин, оскільки вони найчастіше споживають більше оперативної пам'яті та інших ресурсів, які мені доступні. Крім того, мені не подобається накладні витрати. Але мені довелося ризикнути і скористатися ВМ, оскільки Haiku поки що не вміє записувати відеотрансляції зі звуком (оскільки на моєму обладнанні не працюють драйвера звуку і є картка, що підключається за usb1 (першою версією), а її драйвер має бути зібраний вручну). Що хочу сказати: для
Відео трансляція
Тілорухів, на мій смак, знадобилося забагато, тому я записав покрокове керівництво (здебільшого для себе ж, щоб відтворити потім), але ви також можете скористатися цією інформацією для запису своїх відеотрансляцій 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 без особливої постобробки
Вуаля!
Відеотрансляція Haiku за допомогою QEMUKVM, звукової карти USB, OBS Studio та Shotcut
Я щасливий, хоча був би набагато щасливішим, якби звукова карта, OBS Studio і Shotcut спочатку працювали в Haiku, і мені не довелося б виконувати це довге налаштування. [Взяв би VirtualBox, там все є одразу для запису відеотрансляції прямо у налаштуваннях віртуальної машини. - прим. перекладача]
Tracker та його доповнення
Tracker для Haiku така ж річ, як Finder у Mac, або Explorer у Windows. Спробую пошукати tracker add-on
у HaikuDepot.
Інтеграція Git у файловому менеджері
Просто цитую картинки з його домашньої сторінки
TrackGit включений у файловий менеджер Haiku
Можна навіть схилювати репозиторій
Це що, жарт?! Пароль відкритим текстом? Дивно, що вони не використовують "keychain", для цього в Haiku є BKeyStore.
Пароль відкритим текстом?
Інтеграція менеджера пакетів у файловий менеджер
Відповідно до домашньої сторінки проекту:
Знаходить пакет(и) будь-якого вибраного файлу(-ів), відкриваючи його у кращому додатку. За промовчанням це HaikuDepot, де можна переглянути опис пакета, а на вкладці «Вміст» можна побачити інші файли, які є частиною цього пакета, а також їх місцезнаходження.
Ймовірно, залишився лише один крок для видалення пакету.
Autostart/rc.local.d
Як же запускати щось автоматично під час завантаження?
- rc.local.d = /boot/home/config/settings/boot/userbootscript
- Autostart = /boot/home/config/settings/boot/user/launch
Мені треба знайти команду синхронізації локального часу за NTP… Я чув, що воно взагалі має працювати автоматично, але в мене чомусь не працює. Що дуже погано, оскільки я здохла батарея для RTC, що означає скидання часу при відключенні живлення.
Більше підказок
додаток
Публічна бездротова мережа
У мене не вдалося підключитися до бездротових мереж під час прогулянки незважаючи на те, що домашня бездротова мережа у мене працює. Публічні місця (аеропорти, готелі, вокзали) зазвичай покриті безліччю бездротових мереж, кожна з яких зазвичай складається з кількох точок доступу.
Центральний залізничний вокзал Франкфурта
А що ж ми знайдемо на
Звичайна ситуація для громадських місць. Тут: Центральний залізничний вокзал Франкфурта
Можливостей для підключення – хоч відбавляй. А що робить Haiky із цими мережами? Насправді небагато: сильно плутається в них. Адже я був відключений від мережі весь цей час.
Не працює передача точок доступу?
Все починається з того, що кожна точка доступу показується окремо, навіть якщо вони належать одній мережі із загальним SSID, не те що на будь-якій іншій, знайомій мені, ОС.
Відображається кілька точок з однаковим SSID. Ну, і як працюватиме передача обслуговування за таких умов?
А має відображатися лише один SSID, для якого підбиратиметься точка доступу з найсильнішим сигналом. Клієнт повинен вибрати іншу точку з сильнішим сигналом, але з тим же SSID (при доступності), якщо зв'язок з поточною точкою доступу стане занадто слабким - все працює навіть при переміщенні (передача обслуговування клієнта між точками доступу).
Жодних відкритих мереж?
Haiku наполягає на тому, що має бути пароль, навіть якщо мережа відкрита.
Haiku продовжує вимагати пароль мережі, хоча самої мережі жодних паролів не потрібно. Також
Плутанина через captive portals?
Багато бездротових мереж використовують captive portals, коли користувач перенаправляється на сторінку авторизації, де може прийняти умови та угоди, перш ніж використовувати мережу. Можливо, це заплутало мою ОС ще більше. Зрештою, мабуть, бездротова підсистема в мене заблокувалася повністю.
Через деякий час вся бездротова підсистема повністю заблокувалася
Немає доступу до мережі під час подорожі, сум-сум.
Розчарування з 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
(Я б сказав, що це бардак). Відкрив
Куди йдемо далі?
Haiku є прикладом сфокусованої операційної системи для ПК і як така має відмінні принципи, що значно спрощують загальні робочі процеси. Її розробка була стабільною, але неспішною — останні 10 років, внаслідок чого підтримка обладнання залишилася досить обмеженою, а сама система відносно невідомою. Але ситуація змінюється: підтримка обладнання забезпечує можливість запуску Haiku на відносно широкому списку машин (хоча і з помилками), а з огляду на те, що версія системи не 1.0 — системі треба привернути більшу увагу громадськості. Чим я можу допомогти найкраще? Вважаю, ця серія статей буде корисною. Через 2 тижні я
Ще раз висловлюю величезну подяку команді розробників Haiku, ви найкращі! Обов'язково дайте знати, якщо придумаєте, як я зможу зробити внесок у розвиток проекту, хоча я і не планую писати на с++ найближчим часом.
Спробуйте самі! Адже проект Haiku надає образи для завантаження з DVD або USB, що формуються
Постали питання? Запрошуємо вас до російськомовної
probono — засновник та провідний розробник проекту AppImage, засновник проекту PureDarwin, учасник різних проектів із відкритим вихідним кодом. Знімки екрану зроблено на Haiku. Подяка виражається розробникам на каналі #haiku у мережі irc.freenode.net
Огляд помилок:
Від
Список статей:
Джерело: habr.com