Minggu kedua saya bersama Haiku: banyak berlian tersembunyi dan kejutan menyenangkan, serta beberapa tantangan

Minggu kedua saya bersama Haiku: banyak berlian tersembunyi dan kejutan menyenangkan, serta beberapa tantangan
Mengedit tangkapan layar untuk artikel ini - di Haiku

TL; DR: Performanya jauh lebih baik dari aslinya. ACPI yang patut disalahkan. Berjalan di mesin virtual berfungsi dengan baik untuk berbagi layar. Git dan manajer paket dibangun ke dalam manajer file. Jaringan nirkabel publik tidak berfungsi. Frustrasi dengan python.

Minggu lalu Saya menemukan Haiku, sistem yang sangat bagus. Dan bahkan sekarang, di minggu kedua, saya terus menemukan banyak berlian tersembunyi dan kejutan menyenangkan, dan tentu saja, porsi mingguan yang berbeda-beda.

Performa

Ternyata, kinerja yang buruk pada minggu pertama, terutama di browser (keterlambatan saat mengetik, misalnya), mungkin terkait dengan implementasi ACPI yang tidak tepat di BIOS komputer saya.

Untuk menonaktifkan ACPI saya lakukan:

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

dan reboot. Sekarang sistem saya akhirnya merespons dengan cepat, seperti yang telah dicatat oleh pengulas lain sebelumnya. Namun alhasil saya tidak bisa lagi melakukan reboot tanpa kernel panik (shutdown bisa dilakukan dengan pesan “You can now turn off the computer’s power”).

ACPI,DSDT,IASL

Oh baiklah, kemungkinan besar Anda perlu melakukan beberapa debugging ACPI, samar-samar saya ingat sesuatu tentang ini sejak saya mengerjakan PureDarwin, karena kernel xnu sering membutuhkan file yang diperbaiki DSDT.aml

Ayo pergi...

Mengunduh dan mengumpulkan iasl, Debugger ACPI Intel. Sebenarnya tidak, ini sudah di-porting:

~>  pkgman install iasl

Saya menyimpan tabel ACPI:

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

Ternyata di Haiku belum bisa, saya memutuskan untuk reboot ke Linux dan menghapus konten ACPI di sana. Kemudian saya memperbaiki kesalahan menggunakan iasl, editor teks, beberapa pengetahuan (Anda dapat menggunakan Google "patch dsdt fix") dan banyak kesabaran. Namun, akibatnya, saya masih tidak dapat mengunduh DSDT yang telah dipatch menggunakan pengunduh Haiku. Solusi yang tepat mungkin adalah dengan mentransfer Penambalan langsung ACPI, ke dalam bootloader Haiku (hampir sama seperti ini membuat bootloader Clover, mengoreksi DSDT dengan cepat berdasarkan label dan pola). saya membuka permintaan.

Mesin virtual

Secara umum, saya bukan penggemar mesin virtual, karena mesin virtual sering kali mengonsumsi lebih banyak RAM dan sumber daya lain yang tersedia untuk saya. Juga, saya tidak suka overhead. Tapi saya harus mengambil resiko dan menggunakan VM, karena Haiku belum tahu cara merekam siaran video dengan suara (karena peralatan saya tidak memiliki driver suara dan ada kartu yang terhubung melalui usb1 (versi pertama), dan drivernya harus dirakit secara manual). Yang ingin saya katakan: untuk keputusan seperti itu Saya berhasil mendapatkan hasil yang sangat bagus saat membuat siaran video saya. Ternyata Virtual Machine Manager adalah keajaiban yang nyata. Mungkin RedHat menginvestasikan semua uang rekayasanya ke dalam perangkat lunak ini (yang saya abaikan selama 15 tahun). Bagaimanapun, yang sangat mengejutkan saya, Haiku yang tervirtualisasi berjalan sedikit lebih cepat dibandingkan pada perangkat keras yang sama (sulit dipercaya, tetapi menurut saya demikian). [Saya rasa tidak ada pengalaman serupa di tahun 2007 dengan Centos5 yang baru dirilis, yang dapat diinstal secara virtual di Xen. — kira-kira. Penerjemah]

Siaran video

Itu agak terlalu sesuai dengan keinginan saya, jadi saya mencatat panduan langkah demi langkah (kebanyakan untuk saya sendiri putar nanti), tetapi Anda juga dapat menggunakan informasi ini untuk merekam streaming video Haiku Anda (yang tentunya patut dicoba. ).

Secara singkat:

  • Gunakan headphone yang layak dan kartu suara USB C-Media
  • Boot komputer Anda menggunakan image langsung Pop!OS NVIDIA (untuk pengkodean nvenc yang dipercepat perangkat keras)
  • Unduh gambar malam Haiku Anyboot 64bit
  • Siapkan KVM seperti yang dijelaskan pada artikel di atas
  • Download OBS Studio AppImage (jangan lupa kasih tahu developernya kalau mau yang resmi)
  • Tambahkan filter pengurangan kebisingan ke Audio Desktop (klik kanan pada Audio Desktop, lalu “Filter”, lalu “+”, lalu “Noise Suppression”, biarkan level pada default)
  • Periksa pengaturan suara di XFCE
  • Klik kanan pada Desktop Audio, lalu “Properties”, pilih perangkat “Audio Adapter Analog Stereo”
  • Buka menu XFCE, "Ruang Kerja"
  • Atur jumlah desktop di sana: 2
  • Ctr-Alt-RightArrow akan beralih ke desktop kedua
  • Perbaiki pintasan untuk meluncurkan Virtual Machine Manager sehingga berjalan sebagai root (dengan menambahkan sudo), jika tidak, itu tidak berhasil untuk saya
  • Luncurkan Haiku di desktop kedua
  • Boot ke desktopnya, atur resolusi ke FullHD (Saya tidak bisa membuat Haiku melakukan ini secara otomatis, mungkin ada cara untuk memaksa QEMUKVM mengirimkan EDID dari monitor, tapi saya tidak menemukan pengaturan seperti itu di Mesin Virtual Pengelola) [Saya harus memasang kartu video lain dan meneruskannya ke Haiku... - kira-kira. Penerjemah]
  • Tekan Ctrl+Alt untuk mengembalikan keyboard dan mouse ke Linux
  • Ctr-Alt-LeftArrow akan beralih ke desktop pertama
  • Di OBS, tambahkan “Window Capture (XComposite)”, dan pilih jendela “Haiku on QEMUKVM”, aktifkan kotak centang “Swap red and blue”.
  • Rekam video, edit dengan Shotcut (jalankan sebagai root agar akselerasi perangkat keras nvenc berfungsi)
  • Soundtrack dari perpustakaan musik YouTube "Timelapsed Tides". Filter: “Audio fade in”, “Audio fade out”, volume -35db (oke, cukup, ini bukan instruksi untuk Shotcut)
  • Ekspor, YouTube, unduh. Video akan menjadi FullHD di YouTube tanpa pasca-pemrosesan khusus

Voilà!

https://youtu.be/CGs-lZEk1h8
Streaming Video Haiku dengan QEMUKVM, Kartu Suara USB, OBS Studio, dan Shotcut

Saya senang, meskipun saya akan jauh lebih bahagia jika kartu suara, OBS Studio, dan Shotcut bekerja secara native di Haiku dan saya tidak perlu melalui pengaturan yang panjang ini. [Saya akan menggunakan VirtualBox, semuanya ada di sana untuk merekam siaran video langsung di pengaturan mesin virtual. — kira-kira. Penerjemah]

Pelacak dan tambahannya

Pelacak untuk Haiku sama dengan Finder di Mac, atau Explorer di Windows. Saya akan mencoba mencari tracker add-on di HaikuDepot.

Integrasi Git di pengelola file

Hanya mengutip gambar dari halaman rumahnya

Minggu kedua saya bersama Haiku: banyak berlian tersembunyi dan kejutan menyenangkan, serta beberapa tantangan
TrackGit disertakan dalam pengelola file Haiku

Minggu kedua saya bersama Haiku: banyak berlian tersembunyi dan kejutan menyenangkan, serta beberapa tantangan
Anda bahkan dapat mengkloning repositori

Apa ini, lelucon?! Kata sandi teks biasa? Anehnya mereka tidak menggunakan "gantungan kunci", Haiku punya BKeyStore untuk itu. Meninggalkan permintaan.

Minggu kedua saya bersama Haiku: banyak berlian tersembunyi dan kejutan menyenangkan, serta beberapa tantangan
Kata sandi teks biasa?

Integrasi manajer paket ke dalam manajer file

Menurut halaman beranda proyek:

Temukan paket file yang dipilih, buka di aplikasi pilihan Anda. Secara default, ini adalah HaikuDepot, di mana Anda dapat melihat deskripsi paket, dan di tab Isi Anda dapat melihat file lain yang merupakan bagian dari paket ini, serta lokasinya.

Mungkin hanya ada satu langkah tersisa untuk menghapus paket...

Mulai otomatis/rc.local.d

Bagaimana Anda memulai sesuatu secara otomatis saat boot?

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

Saya perlu menemukan perintah untuk menyinkronkan waktu setempat melalui NTP... Saya mendengar bahwa ini biasanya berfungsi secara otomatis, tetapi untuk beberapa alasan itu tidak berfungsi untuk saya. Sayang sekali karena saya memiliki baterai mati untuk RTC yang berarti waktu akan diatur ulang ketika daya dicabut.

Tips lainnya

Web Keterangan rahasia menunjukkan tip dan trik yang berguna (lihatlah!).

Jaringan nirkabel publik

Saya tidak dapat tersambung ke jaringan nirkabel saat berjalan, meskipun jaringan nirkabel rumah saya berfungsi. Tempat-tempat umum (bandara, hotel, stasiun kereta api) biasanya dicakup oleh beberapa jaringan nirkabel, yang masing-masing biasanya terdiri dari beberapa titik akses.

Minggu kedua saya bersama Haiku: banyak berlian tersembunyi dan kejutan menyenangkan, serta beberapa tantangan
Stasiun Pusat Frankfurt

Apa yang akan kita temukan Stasiun kereta api Frankfurt? Sekelompok jaringan yang berbeda:

Minggu kedua saya bersama Haiku: banyak berlian tersembunyi dan kejutan menyenangkan, serta beberapa tantangan
Situasi umum di tempat umum. Di sini: Stasiun Pusat Frankfurt

Ada lebih dari cukup kemungkinan untuk koneksi. Apa yang Haiky lakukan dengan jaringan ini? Faktanya, tidak banyak: dia menjadi sangat bingung dengan hal itu. Lagi pula, saya terputus dari jaringan selama ini.

Transfer titik akses tidak berfungsi?

Semuanya dimulai dengan setiap titik akses ditampilkan secara terpisah - meskipun mereka berasal dari jaringan yang sama dengan SSID yang sama - tidak seperti OS lain yang saya kenal.

Minggu kedua saya bersama Haiku: banyak berlian tersembunyi dan kejutan menyenangkan, serta beberapa tantangan
Beberapa titik dengan SSID yang sama ditampilkan. Nah, bagaimana cara kerja serah terima dalam kondisi seperti itu?

Dan hanya satu SSID yang harus ditampilkan, yang mana titik akses dengan sinyal terkuat akan dipilih. Klien harus memilih titik lain dengan sinyal yang lebih kuat, tetapi dengan SSID yang sama (jika tersedia), jika koneksi dengan titik akses saat ini menjadi terlalu lemah - semuanya berfungsi bahkan ketika berpindah (serah terima klien antar titik akses). Membuat permintaan.

Tidak ada jaringan terbuka?

Minggu kedua saya bersama Haiku: banyak berlian tersembunyi dan kejutan menyenangkan, serta beberapa tantangan
Haiku menegaskan harus ada kata sandi, meskipun jaringan terbuka.

Haiku terus memerlukan kata sandi jaringan, meskipun jaringan itu sendiri tidak memerlukan kata sandi apa pun. Juga membuat permintaan.

Kebingungan mengenai captive portal?

Banyak jaringan nirkabel menggunakan portal captive, di mana pengguna diarahkan ke halaman login di mana mereka dapat menerima persyaratan dan perjanjian sebelum menggunakan jaringan. Ini mungkin semakin membingungkan OS saya. Pada akhirnya, ternyata subsistem nirkabel saya diblokir sepenuhnya.

Minggu kedua saya bersama Haiku: banyak berlian tersembunyi dan kejutan menyenangkan, serta beberapa tantangan
Setelah beberapa waktu, seluruh subsistem nirkabel diblokir sepenuhnya

Tidak ada akses ke jaringan saat bepergian, kesedihan dan kesedihan.

Frustrasi dengan Python

Bagaimana cara menjalankan program "acak" dengan mudah dan mudah dengan Python? Ternyata tidak semuanya sesederhana itu. Setidaknya saya sendiri tidak sepenuhnya memahami semuanya...

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

Tergantung pip adalah masalah umum (membutuhkan dukungan untuk hardlink, yang tidak didukung di Haiku). Mereka memberi tahu saya apa yang harus digunakan python3.6 (Menurutku itu berantakan). Dibuka aplikasi dengan pip

Kemana kita pergi selanjutnya?

Haiku adalah contoh sistem operasi PC yang terfokus, dan karena itu memiliki prinsip-prinsip luar biasa yang sangat menyederhanakan alur kerja secara keseluruhan. Perkembangannya stabil namun lambat selama 10 tahun terakhir, akibatnya dukungan perangkat keras masih terbatas dan sistemnya sendiri relatif tidak diketahui. Namun situasinya berubah: dukungan perangkat keras memungkinkan untuk menjalankan Haiku pada berbagai mesin yang relatif luas (walaupun dengan kesalahan), dan mengingat versi sistemnya bukan 1.0, sistem tersebut perlu menarik lebih banyak perhatian publik. Apa yang bisa saya lakukan untuk membantu? Saya yakin rangkaian artikel ini akan bermanfaat. Setelah 2 minggu I mulai melaporkan bug, dan juga memulai serangkaian siaran video.

Sekali lagi saya mengucapkan terima kasih yang sebesar-besarnya kepada tim pengembangan Haiku, Anda yang terbaik! Pastikan untuk memberi tahu saya jika Anda memikirkan bagaimana saya dapat berkontribusi pada pengembangan proyek ini, meskipun saya tidak berencana untuk menulis dalam C++ dalam waktu dekat.

Cobalah sendiri! Bagaimanapun, proyek Haiku menyediakan gambar untuk boot dari DVD atau USB, yang dihasilkan harian.
Apakah Anda memiliki pertanyaan? Kami mengundang Anda ke berbahasa Rusia saluran telegram.

probono adalah pendiri dan pengembang utama proyek AppImage, pendiri proyek PureDarwin, dan kontributor berbagai proyek sumber terbuka. Tangkapan layar diambil di Haiku. Rasa terima kasih disampaikan kepada para pengembang di saluran #haiku di irc.freenode.net

Ikhtisar kesalahan: Cara menembak diri sendiri di C dan C++. Kumpulan resep Haiku OS

Dari penulis terjemahan: ini adalah artikel kesembilan dan terakhir dalam seri tentang Haiku.

Daftar artikel: Pertama Kedua Третья Keempat Kelima Keenam Ketujuh Kedelapan

Sumber: www.habr.com

Tambah komentar