Mijn derde dag met Haiku: er begint een compleet beeld te ontstaan

Mijn derde dag met Haiku: er begint een compleet beeld te ontstaan
TL;DR: Haiku kan een geweldige desktop-besturingssysteem zijn met open source. Ik wil dit echt, maar er zijn nog veel aanpassingen nodig.

Twee dagen bestudeer ik Haiku, een verrassend goed besturingssysteem. Dit is de derde dag, en ik ben zo dol op dit besturingssysteem dat ik voortdurend nadenk: hoe kan ik het maken tot mijn dagelijkse besturingssysteem? Over het algemeen vind ik Mac leuker, maar het probleem is: het komt zonder open source, en dan moet je op zoek naar alternatieven met open source.

In de afgelopen 10 jaar betekende dit meestal Linux, maar ook dat heeft zijn set van problemen..

Video afspelen

Het Haiku-besturingssysteem, gepresenteerd op DistroTube.

Ik heb Haiku geprobeerd zodra ik erover hoorde, en was meteen onder de indruk — vooral van de werkomgeving die 'eenvoudig werkt', en die duidelijk veel beter is dan welke werkomgeving voor Linux dan ook die ik ken. Ik wil-wil-wil!!!

Laten we op de derde dag kijken naar de echte werking!

Ontbrekende applicaties

De beschikbaarheid van applicaties is een zeer 'beslissend' aspect van elk besturingssysteem, een oud thema. Wat Haiku betreft, weet ik dat er voor de meeste gevallen verschillende beschikbare opties zijn.

Ik kan echter nog steeds geen applicaties vinden voor mijn dagelijkse behoeften:

Wat heeft Haiku nodig voor succes, gezien de beschikbare applicaties? Natuurlijk, om ontwikkelaars aan te trekken.

Wat heeft Haiku nodig voor succes, als we kijken naar de beschikbare applicaties? Natuurlijk, het aantrekken van ontwikkelaars.

Momenteel heeft het ontwikkelteam van Haiku ongetwijfeld enorm veel werk verzet om verschillende populaire applicaties te implementeren, maar voor het volledige succes van het platform is de mogelijkheid van eenvoudige applicatieversies voor Haiku vereist. Het bouwen van een applicatie voor Haiku zou idealiter een van de opties moeten zijn binnen de bestaande buildmatrix van Travis CI of GitLab CI. Hoe zal een bedrijf zoals Ultimaker, de maker van de populaire open-source software Cura voor 3D-printers, hun applicaties gaan bouwen voor Haiku?

Ik ben ervan overtuigd dat de klassieke aanpak, waarbij een 'ondersteunende' partij pakketten verzamelt en onderhoudt voor een specifieke Linux-distributie, niet schaalbaar is met een lange lijst van applicaties. Debat kan plaatsvinden over of er software voor 3D-printers op deze lijst staat, maar bijvoorbeeld software voor het organiseren van de rooster van een specifieke school — dat doet het zeker. Wat biedt Haiku voor zulke applicaties aan? (Ze zijn vaak geschreven met gebruik van Electron, beschikbaar voor alle besturingssystemen, meestal onder Linux verpakt in AppImage, wat betekent dat het aan alle gebruikers zonder veel problemen wordt geleverd).

LibreOffice

Het is duidelijk dat de aanwezigheid van LibreOffice voor Haiku een aanzienlijke prestatie is, waar gebruikers van BeOS alleen maar van konden dromen, maar niet alles is perfect.

In mijn geval (Kingston Technology DataTraveler 100 USB-stick) duurt het ongeveer 30 seconden om op te starten, en ontwikkelaars hebben aangegeven dat de normale opstarttijd van applicaties niet langer dan 4-5 seconden zou moeten zijn (bij gebruik van een gewone harde schijf [op mijn SSD startte alles binnen een seconde, — opmerking van de vertaler]).

Ik zou graag op de een of andere manier de voortgang van het starten van een grote applicatie willen zien, bijvoorbeeld een 'springend pictogram', het veranderen van de cursor, of iets dergelijks. De splash screen van LibreOffice verschijnt pas na enkele seconden, en daarvoor weet je niet wat er aan de hand is.

Mijn derde dag met Haiku: er begint een compleet beeld te ontstaan
Springende pictogrammen van applicaties als teken dat de applicaties zijn opgestart.

  • De sneltoetsen die in het menu worden weergegeven, zijn verkeerd (het staat als Ctrl+O, maar feitelijk is het Alt+O, ik heb het gecontroleerd: Alt+O werkt, terwijl Ctrl+O dat niet doet).
  • Alt+Z werkt niet (bijvoorbeeld in Writer).
  • Het probleem ā€œApplication LibreOffice has aborted the shutdown processā€ [dat is zo bedoeld, — opmerking van de vertaler].

De opstarttijd van applicaties

OPMERKING: beschouw dit gedeelte alstublieft met enige scepsis. De prestaties zijn echt uitstekend, als je vertrouwt op de meningen van anderen. Mijn resultaten verschillen sterk... ik neem aan dat de specifics van mijn setup en de metingen die ik tot nu toe heb gedaan, niet wetenschappelijk zijn. Ik zal dit gedeelte bijwerken naarmate er nieuwe ideeƫn/resultaten verschijnen.

De opstartprestaties van (niet-native) applicaties... zijn niet zo hoog, het verschil is ongeveer 4-10 keer. Zoals je kunt merken, is er bij het opstarten van niet-native applicaties slechts 1 CPU-kern gebruikt, om een voor mij onduidelijke reden.

Mijn derde dag met Haiku: er begint een compleet beeld te ontstaan
Hoe ik de opstartsnelheid van applicaties zie.

  • Start Krita neemt ongeveer 40 seconden in beslag op een Kingston Technology DataTraveler 100 USB-stick, aangesloten op een USB2.0-poort (de Krita AppImage start in een fractie van een seconde op Xubuntu Linux Live ISO via USB2; er zijn meer tests nodig). Correctie: Ongeveer 13 seconden op een SATA SSD met ACPI uitgeschakeld.

  • Start LibreOffice neemt 30 seconden in beslag op een Kingston Technology DataTraveler G4 USB-stick, aangesloten op een USB2.0-poort (een fractie van een seconde op Xubuntu Linux Live ISO via USB 2; er zijn meer tests nodig). Correctie: Minder dan 3 seconden op een SATA SSD met ACPI uitgeschakeld.

Ik heb ook gehoord dat de nieuwste ontwikkelingen de prestaties op SSD's meer dan 10 keer zullen verbeteren. Ik wacht met ingehouden adem.

Andere recensenten prijzen Haiku voortdurend om zijn vlotte werking. Wat is er met mijn systeem aan de hand? Correctie: ja, ACPI is kapot op mijn systeem; als het is uitgeschakeld, werkt het systeem sneller.

Ik heb een aantal tests uitgevoerd.

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

Voor de duidelijkheid heb ik alles getest op twee verschillende machines met Linux en Haiku. Als het nodig is, zal ik de tests herhalen op een soortgelijke machine. Het blijft onduidelijk waarom applicaties trager opstarten dan via usb2.0 op Linux. Update: het syslog van deze machine bevat veel fouten gerelateerd aan USB. Dus de bovenstaande resultaten kunnen atypisch zijn voor Haiku in het algemeen.

Zoals het gezegde gaat: als je het niet kunt meten, kun je het niet beheersen. En als je de prestaties wilt verbeteren, denk ik dat een reeks tests op zijn plaats is šŸ™‚

Toetsencombinaties

Voor overstappers van andere besturingssystemen is alles bij Haiku geweldig als het gaat om toetsencombinaaties. Persoonlijk hou ik het meest van de Mac-stijl toetsencombinaties, waarbij je de toets links van de spatiebalk ("Ctrl" op Apple-toetsenborden, "Alt" op andere) ingedrukt houdt tijdens het invoeren van een letter of cijfer. Aangezien Haiku hierin echt goed presteert, denk ik dat de volgende opties overwogen kunnen worden:

Toetsencombinaties voor het bureaublad en ervoor

Ik vind het fijn dat je op het pictogram kunt klikken en Alt-O kunt indrukken om het te openen, of een meer traditionele combinatie zoals Alt-naar beneden kunt gebruiken.

Evenzo zou het mooi zijn als je Alt-Backspace zou kunnen gebruiken om een bestand naar de prullenbak te verplaatsen, naast Alt-T.

Voor het tonen van het bureaublad: het zou fijn zijn om Alt-H te gebruiken om te 'Verbergen' en Shift-Alt-H om 'Alles te Verbergen'. En misschien zou een combinatie zoals Shift-Alt-D om 'Het bureaublad te Tonen' niet verkeerd zijn.

Toetsencombinaties in dialoogvensters

Ik open StyledEdit, voer tekst in. Ik druk op Alt-Q. Het programma vraagt of ik wil opslaan. Ik druk op Alt-D om 'Niet op te slaan', Alt-C voor 'Annuleren'. Maar dit werkt niet. Ik probeer de pijltoetsen te gebruiken om de knop te selecteren. Ook dat werkt niet. Ik herhaal dezelfde handelingen in een Qt-gebaseerde applicatie. Hier werken de pijltoetsen in ieder geval om de knop te selecteren. (De besturingstoetsen om knoppen te selecteren werden oorspronkelijk in Mac OS X gebruikt, maar de ontwikkelaars lijken deze mogelijkheid sindsdien te zijn vergeten.)

Toetsencombinaties voor het maken van screenshots

Het zou geweldig zijn als je Alt-Shift-3 kunt indrukken voor een screenshot van het hele scherm, Alt-Shift-4 voor een cursorgebied dat toelaat een gebied van het scherm te selecteren, en Alt-Shift-5 voor het huidige actieve venster met zijn opmaak.

Ik vraag me af of dit handmatig configureerbaar is, maar waarschijnlijk is dit niet mogelijk. Tenminste, zo'n poging heeft bij mij geen resultaat opgeleverd [ik had het in een script moeten proberen! — opmerking van de vertaler].

Mijn derde dag met Haiku: er begint een compleet beeld te ontstaan
Bijna. Maar niet helemaal. '-bw' wordt genegeerd, plus er zijn extra standaardinstellingen nodig.

Andere dingen op het toetsenbord

Je voelt de zorg van de ontwikkelaars, dus ik zal mijn ervaring met het toetsenbord in Haiku blijven beschrijven.

Het is niet mogelijk om nationale symbolen in te voeren

Het symbool «`» is bijzonder; het kan zowel een deel van een ander symbool zijn (bijvoorbeeld «e») als een op zichzelf staand teken. De manier waarop het in verschillende besturingssystemen wordt behandeld, varieert ook. Bijvoorbeeld, ik kan dit symbool niet invoeren op een Duits toetsenbord in KWrite; als ik probeer het in te voeren, gebeurt er niets. Bij het invoeren van hetzelfde symbool in QupZilla krijg ik «>>». In de native applicaties wordt het symbool ingevoerd, maar er zijn dubbele aanrakingen nodig voordat het verschijnt. Om het drie keer in te voeren (wat meestal nodig is bij het opmaken van codeblokken, zo typ ik het constant), moet je de toets zes keer indrukken. Op Mac wordt de situatie slimmer afgehandeld (drie drukken is voldoende terwijl de normale invoer van diakritische tekens behouden blijft).

Java-applicaties

Geen JavaFX? Java komt te hulp, toch? Nou, niet helemaal:

pkgman install openjdk12_default
/> java -jar /Haiku/home/Desktop/MyMarkdown.jar
Error: Kan de hoofdklasse Main niet vinden of laden
Oorzaak: java.lang.NoClassDefFoundError: javafx/application/Application

Laten we het anders aanpakken:

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

Het blijkt dat Java-applicaties in het echte leven niet zo draagbaar zijn als in de reclame beloofd wordt. Is er JavaFX voor Haiku? Zo ja, waarom wordt het niet samen met openjdk12_default geĆÆnstalleerd?

Dubbelklikken op het jar-bestand werkt niet

Ik ben verrast dat Haiku niet weet hoe het dubbelklikken op een .jar-bestand moet verwerken.

Bash gedraagt zich vreemd

Aangezien er bash, werd verwacht dat pipes zouden werken:

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

Conclusie

Waarom schrijf ik deze artikelen? Naar mijn mening heeft de wereld echt een open-source besturingssysteem zoals Haiku nodig, dat duidelijk gericht is op pc's, en ook omdat het me steeds meer irriteert dat de werkruimtes voor Linux niet samen functioneren.. Ik beweer niet dat er een totaal andere kernel nodig is om de gewenste gebruikersomgeving voor pc's te creëren, of dat je een vergelijkbare omgeving bovenop de Linux-kernel kunt krijgen, maar ik ben benieuwd wat kernel-experts hierover zullen zeggen. Voor nu speel ik gewoon met Haiku en maak aantekeningen in de hoop dat ze nuttig zullen zijn voor de ontwikkelaars van Haiku en/of het geïnteresseerde publiek.

Probeer het zelf! Het Haiku-project biedt imagebestanden voor opstarten vanaf DVD of USB, die dagelijks worden aangemaakt. dagelijksVoor installatie is het voldoende om het image te downloaden en het op een USB-stick te branden met behulp van Etcher.

Heb je vragen? We nodigen je uit in ons Russischtalige telegramkanaal.

Foutoverzicht: Hoe je jezelf in de voet schiet met C en C++. Een verzameling recepten voor Haiku OS.

Vanaf auteur vertaling: dit is het derde artikel in de cyclus over Haiku.

Lijst van artikelen: Eerste, Tweede.

Bron: habr.com

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers šŸ”„ Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster