Min tredje dag med Haiku: en helhetsbild börjar ta form

Min tredje dag med Haiku: en helhetsbild börjar ta form
TL;DR: Haiku kan bli ett fantastiskt skrivbordsoperativsystem med öppen kÀllkod. Jag vill verkligen att det ska hÀnda, men det krÀvs fortfarande mÄnga korrigeringar.

Jag har studerat Haiku i tvÄ dagar, en ovÀntat bra operativsystem. Nu Àr det tredje dagen, och jag gillar det hÀr operativsystemet sÄ mycket att jag hela tiden funderar: hur skulle jag kunna göra det till ett operativsystem för vardagsbruk? NÀr det kommer till allmÀnna idéer, föredrar jag Mac, men tyvÀrr: den levereras utan öppen kÀllkod, sÄ jag mÄste leta efter alternativ med öppen kÀllkod.

Under de senaste tio Ären har det oftast betytt Linux, men det har ocksÄ sina problem..

Spela video

Operativsystemet Haiku, presenterat pÄ DistroTube.

Jag provade Haiku sÄ fort jag hörde talas om det, och blev genast imponerad - sÀrskilt med skrivbordsmiljön som "bara fungerar", och den övertrÀffar tydligt varje skrivbordsmiljö för Linux som jag kÀnner till konceptuellt. Jag vill, vill, vill!!!

LÄt oss titta pÄ hur det verkligen fungerar pÄ tredje dagen!

Saknade applikationer

TillgÄng till applikationer Àr en mycket "ödesbunden" aspekt av varje operativsystem, en gammal frÄga. NÀr det kommer till Haiku vet jag att det finns olika tillgÀngliga alternativ för de flesta fall.

Men jag kan fortfarande inte hitta applikationer för mina dagliga behov:

  • markupredigerare (till exempel Typora). SjĂ€lvklart finns det CuteMarkEd, men den verkar inte ha nĂ„gra knappar eller kortkommandon för att formatera text. Det finns ocksĂ„ Ghostwriter, men den har ingen kortkommando för att markera text som inbĂ€ddad kod, eller en kodblock.
  • skĂ€rminspelning till en animerad GIF (till exempel Peek). Det finns BeScreenCapture, men den kan inte göra det.
  • Mjukvara för 3D-skrivare (till exempel, Ultimaker Cura, PrusaSlicer).
  • 3D CAD (till exempel FreeCAD, OpenSCAD, eller inbyggd i Onshape). Det finns LibreCAD, men det Ă€r bara 2D.

Utvecklingsmodell

Vad behövs för att Haiku ska bli framgÄngsrikt nÀr det gÀller tillgÄng till applikationer? SjÀlvklart behöver man attrahera utvecklare.

För nÀrvarande har Haikus utvecklingsteam utan tvekan gjort ett fantastiskt jobb med att integrera olika populÀra applikationer, men för plattformens fulla framgÄng krÀvs en enkel möjlighet att skapa versioner av applikationer för Haiku. Byggandet av en applikation för Haiku bör i bÀsta fall vara ett alternativ i den befintliga byggmatrisen för Travis CI eller GitLab CI. Hur ska ett företag som Ultimaker, skaparen av den populÀra mjukvaran Cura för 3D-skrivare med öppen kÀllkod, gÄ till vÀga för att bygga sina applikationer för Haiku?

Jag Àr övertygad om att den klassiska metoden med "supporter", som samlar och underhÄller paket för en viss Linux-distribution, inte skalar vid en stor lista över applikationer. Man kan diskutera om det finns programvara för 3D-skrivare pÄ denna lista, men till exempel mjukvaran för schemalÀggning av ett specifikt skolvittnar finns det. Vad erbjuder Haiku för sÄdana applikationer? (De Àr vanligtvis skrivna med hjÀlp av Electron, tillgÀngliga för alla operativsystem, under Linux oftast insvept i AppImage, vilket möjliggör leverans till alla anvÀndare utan större problem).

LibreOffice

Det Àr uppenbart att tillgÄngen till LibreOffice för Haiku Àr en stor prestation, nÄgot som BeOS-anvÀndare bara har kunnat drömma om, men allt Àr inte perfekt.

I mitt fall (Kingston Technology DataTraveler 100 USB-minne) tar det cirka 30 sekunder för att starta, och utvecklarna har föreslagit att en normal start av applikationer inte bör överstiga 4-5 sekunder (i fallet med en vanlig hÄrddisk [pÄ min SSD startade allt pÄ mindre Àn en sekund, - övers. anm.]).

Det skulle vara bra att kunna se framsteg i uppstarten av stora applikationer, till exempel "hoppa ikoner", Àndra muspekaren, eller nÄgot liknande. LibreOffice-logotypen dyker bara upp efter nÄgra sekunder, och innan dess vet man inte vad som hÀnder.

Min tredje dag med Haiku: en helhetsbild börjar ta form
Hoppa ikoner av applikationer som ett tecken pÄ att applikationerna har startat.

  • TangentbordsgenvĂ€garna som visas i menyn Ă€r felaktiga (de Ă€r mĂ€rkta som Ctrl+O, men i verkligheten Ă€r det Alt+O; jag har kontrollerat: Alt+O fungerar, men Ctrl+O gör det inte).
  • Alt+Z fungerar inte (till exempel i Writer).
  • Problemet "Application LibreOffice has aborted the shutdown process" [detta Ă€r avsiktligt, - övers. anm.].

Applikationers starttid

OBSERVATION: please approach this section with a degree of skepticism. Performance is indeed excellent if relying on the opinions of others. My results vary greatly... I assume that specifics of my setup and the measurements taken so far are unscientific. I will update this section as new ideas/results emerge.

Startup performance of (non-native) applications... is not very high, with a difference of about 4-10 times. As you can see, only 1 CPU core was used when launching non-native applications, for reasons I do not understand.

Min tredje dag med Haiku: en helhetsbild börjar ta form
How I see the application startup speed.

  • Launch Krita takes about 40 seconds on a Kingston Technology DataTraveler 100 flash drive connected to a USB2.0 port (launching Krita AppImage takes a fraction of a second on Xubuntu Linux Live ISO via USB2; more tests needed). Correction: About 13 seconds on a SATA SSD with ACPI disabled.

  • Launch LibreOffice takes 30 seconds on a Kingston Technology DataTraveler G4 flash drive connected to a USB2.0 port (a fraction of a second on Xubuntu Linux Live ISO via USB2; more tests needed) Correction: Less than 3 seconds on a SATA SSD with ACPI disabled.

I also heard that the latest developments will improve performance on SSDs by more than 10 times. I am eagerly waiting.

Other reviewers constantly praise Haiku for its snappy performance. I wonder what is wrong with my system? Correction: yes, ACPI is broken on my system; if disabled, the system runs faster.

I conducted several tests.

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

For full transparency, I checked everything on two different machines with Linux and Haiku. If needed, I will repeat the tests on a similar machine. It is still unclear why applications start slower than through USB2.0 on Linux. Update: there are many USB-related errors in the syslog of this machine. So the results above may not be typical for Haiku as a whole.

As the saying goes: if you can’t measure it, you can’t manage it. And since there is a desire to improve performance, I think a set of tests is in order 🙂

Keyboard shortcuts

För dem som byter frÄn andra operativsystem Àr Haiku fantastiskt nÀr det kommer till tangentkombinationer. Personligen gillar jag mest tangentkombinationerna i Mac-stil, dÀr du hÄller ner tangenten till vÀnster om mellanslaget ("Ctrl" pÄ Apple-tangentbord, "Alt" pÄ andra) nÀr du skriver en bokstav eller siffra. Eftersom Haiku verkligen fungerar bra pÄ detta omrÄde kÀnner jag att följande alternativ kan övervÀgas:

Tangentkombinationer pÄ skrivbordet och för det

Jag gillar att man kan klicka pÄ ikonen och trycka pÄ Alt-O för att öppna den, eller anvÀnda den mer traditionella kombinationen Alt-ned.

PÄ samma sÀtt skulle det vara bra om man kunde trycka pÄ Alt-Backspace för att flytta en fil till papperskorgen, utöver Alt-T.

För att visa skrivbordet: det vore bra att anvÀnda Alt-H - för att "Dölja", och Shift-Alt-H - för att "Dölja allt". Och kanske vore det bra att införa kombinationen Shift-Alt-D - för att "Visa skrivbordet".

Tangentkombinationer i dialogrutor

Jag öppnar StyledEdit, skriver text. Jag trycker pÄ Alt-Q. Programmet frÄgar om jag vill spara. Jag trycker pÄ Alt-D för att "Inte spara", Alt-C för "Avbryt". Men det fungerar inte. Jag försöker anvÀnda piltangenterna för att vÀlja knappen. Inte heller fungerar det. Jag upprepar samma handlingar i en Qt-baserad applikation. HÀr fungerar Ätminstone piltangenterna för att vÀlja knappen. (Kontrolltangenterna för att vÀlja knappar anvÀndes ursprungligen i Mac OS X, men utvecklarna verkar sedan dess ha glömt bort denna möjlighet.)

Tangentkombinationer för att ta skÀrmbilder

Det skulle vara fantastiskt om man kunde trycka pÄ Alt-Shift-3 för en bild av hela skÀrmen, Alt-Shift-4 för att fÄ en markör som lÄter dig vÀlja en del av skÀrmen, och Alt-Shift-5 för det aktuella aktiva fönstret med dess utförande.

Det Ă€r intressant om detta kan konfigureras manuellt, men sannolikt Ă€r det omöjligt. Åtminstone gav mitt försök inget resultat [jag borde ha försökt att slĂ„ in det i ett skript! — anm. översĂ€ttaren].

Min tredje dag med Haiku: en helhetsbild börjar ta form
NÀstan. Men inte riktigt. "-bw" ignoreras, plus ytterligare standardinstÀllningar behövs.

Andra saker pÄ tangentbordet

Jag kÀnner att utvecklarna bryr sig, sÄ jag fortsÀtter att beskriva min erfarenhet av att anvÀnda tangentbordet i Haiku.

Det Àr omöjligt att skriva in nationella symboler

Symbolen «`» Àr speciell, den kan vara bÄde en del av en annan symbol (till exempel «e») och stÄ för sig sjÀlv. Behandlingen av den skiljer sig ocksÄ mellan olika operativsystem. Till exempel kan jag inte skriva denna symbol pÄ ett tyskt tangentbord i KWrite; om jag försöker skriva den hÀnder inget. NÀr jag skriver denna symbol i QupZilla fÄr jag «>>». I inbyggda applikationer gÄr symbolen in, men jag mÄste trycka pÄ den tvÄ gÄnger för att den ska dyka upp. För att skriva den tre gÄnger (vilket ofta krÀvs nÀr man formaterar kodblock, och jag skriver sÄ hela tiden) mÄste jag trycka pÄ knappen sex gÄnger. PÄ Mac hanteras situationen mer smart (tre tryck rÀcker nÀr man behÄller vanlig inmatning av diakritiska tecken).

Java-appar

Saknas JavaFX? Java kommer till rÀddning, eller hur? Inte riktigt:

pkgman install openjdk12_default
/> java -jar /Haiku/home/Desktop/MyMarkdown.jar
Error: Kunde inte hitta eller ladda huvudklassen Main
Orsak: java.lang.NoClassDefFoundError: javafx/application/Application

LÄt oss gÄ en annan vÀg:

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

Det visar sig att verkliga Java-appar inte Ă€r sĂ„ portabla som de utlovar i reklamen. Finns det JavaFX för Haiku? Om ja — varför installeras det inte tillsammans med openjdk12_default?

Dubbelklick pÄ jar-filen fungerar inte

Jag Àr förvÄnad över att Haiku inte vet hur man hanterar ett dubbelklick pÄ en .jar-fil.

Bash beter sig konstigt

Eftersom det finns bash, var det förvÀntat att pipes skulle fungera:

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

Slutsats

Varför skriver jag dessa artiklar? Enligt min mening behöver vÀrlden verkligen ett operativsystem med öppen kÀllkod som Haiku, klart inriktat pÄ PC, och Àven dÀrför att jag allt mer irriteras över att skrivbordsmiljöer för Linux inte samarbetar. Jag pÄstÄr inte att man behöver en helt annan kÀrna för att skapa den önskade skrivbordsmiljön för PC, eller att man kan fÄ en liknande miljö ovanpÄ Linux-kÀrnan, men jag undrar vad kÀrnexperter skulle sÀga om detta. Tills vidare leker jag bara med Haiku och gör anteckningar i hopp om att de ska vara anvÀndbara för Haikus utvecklare och/eller intresserad allmÀnhet.

Prova sjÀlv! Eftersom Haiku-projektet tillhandahÄller bilder för nedladdning frÄn DVD eller USB, som skapas dagligen. För installationen rÀcker det med att ladda ner en bild och skriva den pÄ ett USB-minne med hjÀlp av Etcher.

Har du frÄgor? VÀlkommen till vÄr svensksprÄkiga telegramkanal.

Felkod: Hur man skjuter sig sjÀlv i foten i C och C++. En samling recept för Haiku OS

FrÄn författare översÀttning: detta Àr den tredje artikeln i serien om Haiku.

Artikellista: Första, Andra.

KĂ€lla: habr.com

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster