Ang ikatlong araw ko kasama ang Haiku: isang kumpletong larawan ay nagsisimula nang lumabas

Ang ikatlong araw ko kasama ang Haiku: isang kumpletong larawan ay nagsisimula nang lumabas
TL; DR: Haiku ay maaaring maging isang mahusay na open source desktop operating system. Gusto ko talaga ito, ngunit marami pa ring kailangang ayusin.

Dalawang araw na akong nag-aaral ng Haiku, isang hindi inaasahang magandang operating system. Ngayon ang ikatlong araw, at gusto ko ang operating system na ito kaya palagi kong iniisip: paano ko ito gagawing operating system para sa bawat araw? Sa mga tuntunin ng pangkalahatang ideya, mas gusto ko ang Mac, ngunit narito ang problema: hindi ito open source, at kailangan mong maghanap ng mga alternatibong open source.

Sa nakalipas na 10 taon, madalas itong nangangahulugang Linux, ngunit mayroon din itong sariling hanay ng mga problema.

Itinatampok ang operating system ng Haiku sa DistroTube.

Sinubukan ko ang Haiku sa sandaling marinig ko ang tungkol dito at agad akong humanga - lalo na sa isang desktop environment na "gumagana lang" at malinaw na higit na nakahihigit sa anumang Linux desktop environment na alam ko sa konsepto. Gusto Gusto gusto!!!

Tingnan natin ang tunay na gawain sa ikatlong araw!

Mga Nawawalang Application

Ang pagkakaroon ng mga application ay isang napaka "nakamamatay" na aspeto ng anumang operating system, ang lumang paksa. Dahil pinag-uusapan natin ang tungkol sa Haiku, alam ko na sa karamihan ng mga kaso mayroong iba't ibang mga opsyon na magagamit.

Gayunpaman, hindi pa rin ako makahanap ng mga app para sa aking pang-araw-araw na pangangailangan:

  • markup editor (halimbawa Typora). Syempre meron naka-cutemark, ngunit tila wala itong anumang mga pindutan o mga keyboard shortcut para sa layout ng teksto. meron din Ghostwriter, ngunit mayroon siya walang keyboard shortcut upang markahan ang teksto bilang inline na code, o block ng code.
  • Kunin ang screen sa animated na GIF (hal Silip). Mayroong BeScreenCapture, ngunit hindi nito magagawa iyon.
  • Software para sa mga 3D printer (halimbawa, Ultimaker Cure, PrusaSlicer).
  • 3D CAD (halimbawa FreeCAD, OpenSCAD, o built in onshape). Mayroong LibreCAD, ngunit ito ay 2D lamang.

Modelo ng pag-unlad

Ano ang kailangan ng Haiku upang magtagumpay sa mga tuntunin ng magagamit na mga aplikasyon? Siyempre, akitin ang mga developer.

Sa kasalukuyan, ang Haiku development team ay tiyak na gumawa ng mahusay na trabaho sa pagpapakilala ng iba't ibang sikat na application, ngunit para sa ganap na tagumpay bilang isang platform, kailangan nitong madaling makagawa ng mga bersyon ng mga application para sa Haiku. Ang pagbuo ng isang application para sa Haiku ay dapat na isa pang opsyon sa isang kasalukuyang Travis CI o GitLab CI build matrix. Kaya paano gagawin ng isang kumpanya tulad ng Ultimaker, tagalikha ng sikat na open source na 3D printer software na Cura, ang pagbuo ng kanilang mga app para sa Haiku?

Kumbinsido ako na ang klasikong "maintainer" na diskarte na bumubuo at nagpapanatili ng mga pakete para sa isang partikular na pamamahagi ng Linux ay hindi sukat sa isang malaking listahan ng mga application. Pinagtatalunan kung ang software para sa mga 3D printer ay nasa listahang ito, ngunit, halimbawa, ang software para sa pag-aayos ng isang partikular na iskedyul ng paaralan ay. Ano ang inaalok ng Haiku para sa mga naturang application? (Karaniwang isinusulat ang mga ito gamit ang elektron, ay magagamit para sa lahat ng mga operating system, sa ilalim ng Linux ang mga ito ay madalas na nakabalot AppImage, na nangangahulugang paghahatid sa lahat ng mga gumagamit nang walang anumang mga problema).

LibreOffice

Malinaw na ang pagkakaroon ng LibreOffice na magagamit para sa Haiku ay hindi maliit na gawain na maaari lamang pangarapin ng mga gumagamit ng BeOS, ngunit hindi lahat ay perpekto.

Sa aking kaso (Kingston Technology DataTraveler 100 USB stick) ito ay tumatagal ng mga 30 segundo upang magsimula, at iminungkahi ng mga developer na ang normal na paglulunsad ng application ay hindi dapat lumampas sa 4-5 segundo (kung gumagamit ng isang regular na hard drive [sa aking SSD nagsimula ang lahat sa wala pang isang segundo - tantiya. tagasalin]).

Gusto kong makita kahit papaano ang progreso ng paglulunsad ng isang malaking application, halimbawa, isang "icon ng paglukso", pagpapalit ng cursor, o iba pang katulad nito. Ang LibreOffice splash screen ay lilitaw lamang pagkatapos ng ilang segundo, at hanggang pagkatapos ay wala kang ideya kung ano ang nangyayari.

Ang ikatlong araw ko kasama ang Haiku: isang kumpletong larawan ay nagsisimula nang lumabas
Nagba-bounce ang mga icon ng application bilang senyales na tumatakbo ang mga application.

  • Ang mga keyboard shortcut na ipinapakita sa menu ay hindi tama (nalagdaan Ctrl+O, ngunit sa katunayan Alt+O, sinuri ko: Alt+O gumagana, ngunit Ctrl+O ay hindi).
  • Hindi gumagana ang Alt+Z (halimbawa, sa Writer).
  • Problema "Ang Application LibreOffice ay nagpatigil sa proseso ng pagsara" [Ito ay kung paano ito inilaan, "approx. tagasalin].

Oras ng paglulunsad ng application

TANDAAN: Mangyaring kunin ang seksyong ito na may butil ng asin. Ang pagganap ay talagang mahusay kung umaasa ka sa mga opinyon ng ibang tao. Ang aking mga resulta ay ibang-iba... Ipinapalagay ko na ang mga tampok ng aking setup at ang mga sukat na ginawa sa ngayon ay hindi makaagham. Ia-update ko ang seksyong ito kapag may mga bagong ideya/resulta.

Ang pagganap ng mga tumatakbong (di-katutubong) application... ay hindi ganoon kahusay, ang pagkakaiba ay humigit-kumulang 4-10 beses. Gaya ng nakikita mo, 1 processor core lang ang ginamit kapag nagpapatakbo ng mga hindi katutubong application, sa hindi ko malamang dahilan.

Ang ikatlong araw ko kasama ang Haiku: isang kumpletong larawan ay nagsisimula nang lumabas
Paano ko nakikita ang bilis ng paglulunsad ng application.

  • Ilunsad yeso tumatagal ng humigit-kumulang 40 segundo sa isang flash drive ng Kingston Technology DataTraveler 100 na konektado sa isang USB2.0 port (ang paglulunsad ng Krita AppImage ay tumatagal ng ilang segundo sa isang Xubuntu Linux Live ISO sa pamamagitan ng USB2; higit pang mga pagsubok ang kailangan). Pagwawasto: Mga 13 segundo sa isang SATA SSD na may ACPI na hindi pinagana.

  • Ilunsad LibreOffice tumatagal ng 30 segundo sa isang flash drive ng Kingston Technology DataTraveler G4 na konektado sa USB2.0 (fraction ng isang segundo sa Xubuntu Linux Live ISO sa pamamagitan ng USB 2; kailangan ng higit pang mga pagsubok) Pagwawasto: Wala pang 3 segundo sa isang SATA SSD na may ACPI na hindi pinagana.

Narinig ko rin na ang pinakabagong mga pag-unlad ay magpapahusay sa pagganap sa mga SSD nang higit sa 10 beses. Hinihintay ko na may halong hininga.

Patuloy na pinupuri ng iba pang mga reviewer ang masiglang pagganap ni Haiku. Iniisip ko kung ano ang mali sa aking sistema? Pagwawasto: oo, sira ang ACPI sa aking sistema; Kung i-off mo ito, mas mabilis na gagana ang system.

Gumawa ako ng ilang mga pagsubok.

# 
# Linux
#
me@host:~$ sudo dmidecode
(...)
Handle 0x0100, DMI type 1, 27 bytes
System Information
 Manufacturer: Dell Inc.
 Product Name: OptiPlex 780
​me@host:~$ lsusb
Bus 010 Device 006: ID 0951:1666 Kingston Technology DataTraveler 100
# On a USB 2 port
me@host:~$ sudo dd if=/dev/sdc1 of=/dev/null bs=64k count=4096
4096+0 records in
4096+0 records out
268435456 bytes (268 MB, 256 MiB) copied, 7.03517 s, 38.2 MB/s
# On a USB 3 port
me@host:~$ sudo dd if=/dev/sdc1 of=/dev/null bs=64k count=4096
4096+0 records in
4096+0 records out
268435456 bytes (268 MB, 256 MiB) copied, 2.08661 s, 129 MB/s
#
# Haiku - the exact same USB stick
#
/> dmidecode
# dmidecode 3.2
Scanning /dev/misc/mem for entry point.
# No SMBIOS nor DMI entry point found, sorry.
# On a USB 2 port
/> dd if=/dev/disk/usb/1/0/raw of=/dev/null bs=64k count=4096
4096+0 records in
4096+0 records out
268435456 bytes (268 MB, 256 MiB) copied, 7.44154 s, 36.1 MB/s
# On a USB 3 port
/> dd if=/dev/disk/usb/1/0/raw of=/dev/null bs=64k count=4096
4096+0 records in
4096+0 records out
268435456 bytes (268 MB, 256 MiB) copied, 7.47245 s, 35.9 MB/s

Para sa kumpletong transparency, sinubukan ko ang lahat sa dalawang magkaibang machine gamit ang Linux at Haiku. Kung kinakailangan, uulitin ko ang mga pagsubok sa isang katulad na makina. Hindi pa rin malinaw kung bakit mas mabagal ang paglulunsad ng mga application kaysa sa pamamagitan ng usb2.0 sa Linux. Update: Maraming mga error na nauugnay sa USB sa syslog ng makina na ito. Kaya't ang mga resulta sa itaas ay maaaring hindi karaniwan para sa Haiku sa kabuuan.

Tulad ng sinasabi ng sikat na kasabihan: kung hindi mo masusukat, hindi mo kayang pamahalaan. At kung may pagnanais na mapabuti ang pagganap, sa palagay ko ay ok ang test suite :)

Mga keyboard shortcut

Para sa mga defectors mula sa iba pang mga operating system, ang Haiku ay mahusay pagdating sa mga keyboard shortcut. Ang aking personal na paborito ay ang mga Mac-style na keyboard shortcut kung saan pinindot mo ang key sa kaliwa ng spacebar (Ctrl sa mga Apple keyboard, Alt sa iba pa) habang nagta-type ng titik o numero. Dahil talagang mahusay ang trabaho ng Haiku sa lugar na ito, sa palagay ko ay maaaring isaalang-alang ang mga sumusunod na opsyon:

Mga keyboard shortcut para sa at sa desktop

Gusto ko na maaari mong i-click ang isang icon at pindutin ang Alt-O upang buksan ito, o gamitin ang mas tradisyonal na Alt-Down shortcut.

Gayundin, magiging maganda kung maaari mong pindutin ang Alt-Backspace, bilang karagdagan sa Alt-T, upang ilipat ang isang file sa Basurahan.

Upang ipakita ang desktop: magandang ideya na gamitin ang Alt-H sa "Itago" at Shift-Alt-H sa "Itago ang Lahat". At marahil isang magandang ideya na ipasok ang kumbinasyon ng Shift-Alt-D sa "Ipakita ang desktop".

Mga Shortcut sa Mga Dialog Box

Binuksan ko ang StyledEdit at naglagay ng text. Pinindot ko ang Alt-Q. Ang programa ay nagtatanong kung dapat itong i-save. Pinindot ko ang Alt-D para sa "Huwag i-save", Alt-C para sa "Kanselahin". Ngunit hindi ito gumagana. Sinusubukan kong gamitin ang mga arrow key upang pumili ng isang button. Hindi rin ito gumagana. Inuulit ko ang parehong mga hakbang sa isang Qt-based na application. Dito, sa pinakamababa, gumagana ang mga arrow key upang pumili ng isang button. (Ang mga control key para sa pagpili ng mga button ay orihinal na ginamit sa Mac OS X, ngunit mukhang nakalimutan na ng mga developer ang feature na ito mula noon.)

Mga shortcut para sa pagkuha ng mga screenshot

Magiging mahusay kung maaari mong pindutin ang Alt-Shift-3 upang kumuha ng screenshot ng buong screen, Alt-Shift-4 upang ilabas ang isang cursor na nagpapahintulot sa iyo na pumili ng isang lugar ng screen, at Alt-Shift- 5 upang ipakita ang kasalukuyang aktibong window at ang hitsura nito.

Nagtataka ako kung maaari itong mai-configure nang manu-mano, ngunit malamang na imposible. Hindi bababa sa, ang gayong pagtatangka ay hindi gumana para sa akin [Dapat ay sinubukan kong i-wrap ito sa isang script! β€” tinatayang. tagasalin].

Ang ikatlong araw ko kasama ang Haiku: isang kumpletong larawan ay nagsisimula nang lumabas
halos. Pero hindi talaga. Ang "-bw" ay hindi pinapansin, kasama ang mga karagdagang default na setting ay kailangan.

Iba pang mga bagay sa keyboard

Nararamdaman ko ang pag-aalala ng mga developer, kaya patuloy kong ilarawan ang aking karanasan sa keyboard sa Haiku.

Hindi maipasok ang mga pambansang karakter

Ang karakter na β€œ`” ay espesyal; maaari itong maging bahagi ng isa pang karakter (halimbawa, β€œe”) o independyente. Ang pagpoproseso nito ay naiiba din sa iba't ibang mga operating system. Halimbawa, hindi ako makapagpasok ng ibinigay na character sa isang German na keyboard sa KWrite; kung susubukan mong ipasok ito, walang mangyayari. Kapag ipinasok mo ang parehong character sa QupZilla, makakakuha ka ng ">>". Sa mga native na application, ipinasok ang simbolo, ngunit kailangan mong i-double tap ito para lumitaw ito. Upang ipasok ito ng tatlong beses (karaniwan ay kinakailangan ito kapag nagmamarka ng mga bloke ng code, tina-type ko ito sa paraang ito sa lahat ng oras), kailangan mong pindutin ang pindutan ng 6 na beses. Sa Mac, ang sitwasyon ay pinangangasiwaan nang mas matalino (tatlong pag-click ay sapat na habang pinapanatili ang karaniwang pag-type ng mga diacritics).

Mga Application ng Java

Nawawala ang JavaFX? Ang Java ay sumagip, hindi ba? Well, hindi masyadong:

pkgman install openjdk12_default
/> java -jar /Haiku/home/Desktop/MyMarkdown.jar
Error: Could not find or load main class Main
Caused by: java.lang.NoClassDefFoundError: javafx/application/Application

Pumunta tayo sa ibang paraan:

/> /Haiku/home/Desktop/markdown-writer-fx-0.12/bin/markdown-writer-fx
Error: Could not find or load main class org.markdownwriterfx.MarkdownWriterFXApp
Caused by: java.lang.NoClassDefFoundError: javafx/application/Application

Lumalabas na sa totoong buhay, ang mga application ng Java ay hindi kasing portable gaya ng ipinangako nila sa advertising. Mayroon bang JavaFX para sa Haiku? Kung oo, bakit hindi ito naka-install gamit ang openjdk12_default?

Ang pag-double click sa jar file ay hindi gumagana

Nagulat ako na walang ideya si Haiku kung paano pangasiwaan ang isang double click sa isang .jar file.

Kakaiba ang kinikilos ni Bash

Since meron bash, inaasahang gagana ang mga tubo:

/> listusb -vv > listusb.txt
bash: listusb.txt: Invalid Argument

Konklusyon

Bakit ko isinusulat ang mga artikulong ito? Sa palagay ko, kailangan talaga ng mundo ang isang open source operating system tulad ng Haiku na malinaw na nakasentro sa PC, at dahil din sa lalo akong naiinis sa katotohanan na ang mga desktop environment para sa Linux. huwag magtulungan. Hindi ako nakikipagtalo na ang isang ganap na naiibang kernel ay kinakailangan upang lumikha ng nais na kapaligiran ng gumagamit para sa isang PC, o posible na makakuha ng katulad na kapaligiran sa ibabaw ng Linux kernel, ngunit interesado ako sa kung ano ang sasabihin ng mga eksperto sa kernel ukol dito. Sa ngayon, nakikipag-usap lang ako sa Haiku at nagsusulat ng mga tala sa pag-asang magiging kapaki-pakinabang ang mga ito sa mga developer ng Haiku at/o sa interesadong publiko.

Subukan ito sa iyong sarili! Pagkatapos ng lahat, ang proyekto ng Haiku ay nagbibigay ng mga larawan para sa pag-boot mula sa DVD o USB, na nabuo araw-araw. Upang i-install, i-download lamang ang imahe at isulat ito sa isang flash drive gamit Etcher.

May tanong ka ba? Inaanyayahan ka namin sa nagsasalita ng Ruso channel ng telegram.

Pangkalahatang-ideya ng error: Paano i-shoot ang iyong sarili sa paa sa C at C++. Koleksyon ng mga recipe ng Haiku OS

Mula sa may-akda pagsasalin: ito ang ikatlong artikulo sa serye tungkol sa Haiku.

Listahan ng mga artikulo: Muna, Ang pangalawang.

Pinagmulan: www.habr.com

Magdagdag ng komento