Mi tercer día con Haiku: comienza a formarse una imagen completa

Mi tercer día con Haiku: comienza a formarse una imagen completa
TL;DR: Haiku puede convertirse en un magnífico sistema operativo de escritorio de código abierto. Realmente deseo que esto suceda, pero se necesitan muchas correcciones.

He estado estudiando Haiku durante dos días, un sistema operativo sorprendentemente bueno. Ahora es el tercer día, y me gusta tanto este sistema operativo que no dejo de pensar: ¿cómo podría hacer de esto un sistema operativo para el día a día? En términos generales, me gusta más Mac, pero aquí está el problema: viene sin código abierto y tengo que buscar alternativas de código abierto.

En los últimos 10 años, esto ha significado principalmente Linux, pero también tiene su conjunto de problemas.

Reproducir video

El sistema operativo Haiku, presentado en DistroTube.

Probé Haiku tan pronto como escuché de él, y quedé impresionado de inmediato, especialmente con el entorno de escritorio que "simplemente funciona", y que claramente supera cualquier entorno de escritorio de Linux que conozco conceptualmente. ¡Voy a quererlo, quiero, quiero!

¡Veamos en el tercer día un trabajo real!

Aplicaciones faltantes

La disponibilidad de aplicaciones es un aspecto bastante "decisivo" de cualquier sistema operativo, un viejo tema. En lo que respecta a Haiku, sé que hay diferentes opciones disponibles para la mayoría de los casos.

Sin embargo, todavía no puedo encontrar aplicaciones para mis necesidades diarias:

  • editor de markup (por ejemplo, Typora). Por supuesto, hay CuteMarkEd, pero parece que no tiene ni botones ni atajos de teclado para marcar texto. También está Ghostwriter, pero no tiene atajo de teclado para marcar texto como código embebido, o bloques de código.
  • captura de pantalla en GIF animado (por ejemplo, Peek). Hay BeScreenCapture, pero no puede hacer eso.
  • Software para impresoras 3D (por ejemplo, Ultimaker Cura, PrusaSlicer).
  • CAD 3D (por ejemplo, FreeCAD, OpenSCAD, o integrado en Onshape). Hay LibreCAD, pero solo es 2D.

Modelo de desarrollo

¿Qué necesita Haiku para tener éxito, en términos de aplicaciones disponibles? Por supuesto, atraer desarrolladores.

En este momento, el equipo de desarrolladores de Haiku ha realizado un gran trabajo implementando varias aplicaciones populares. Sin embargo, para lograr el éxito total de la plataforma, es necesaria la posibilidad de crear versiones de aplicaciones fácilmente para Haiku. La configuración de una aplicación para Haiku debería ser, idealmente, otra opción dentro de la matriz de compilación existente de Travis CI o GitLab CI. Entonces, ¿cómo una empresa como Ultimaker, creadora del popular software Cura para impresoras 3D de código abierto, se comprometerá a compilar sus aplicaciones para Haiku?

Estoy convencido de que el enfoque clásico de “mantenimiento”, que compila y mantiene paquetes para una distribución específica de Linux, no se escala bien con una lista amplia de aplicaciones. Se puede debatir si el software para impresoras 3D está en esta lista, pero, por ejemplo, el software para organizar el horario de una escuela específica sí lo está. ¿Qué ofrece Haiku para tales aplicaciones? (Normalmente están escritas utilizando Electron, disponibles para todos los sistemas operativos, en Linux a menudo están empaquetadas en AppImage, lo que significa que se entregan a todos los usuarios sin problemas).

LibreOffice

Es evidente que tener LibreOffice para Haiku es un logro considerable, del cual los usuarios de BeOS solo podían soñar, sin embargo, no todo es perfecto.

En mi caso (pendrive Kingston Technology DataTraveler 100 USB), se requiere alrededor de 30 segundos para el arranque, y los desarrolladores sugirieron que el lanzamiento normal de aplicaciones no debería superar los 4-5 segundos (en el caso de usar un disco duro estándar [en mi SSD todo se inició en menos de un segundo, — nota del traductor]).

Me gustaría ver algún tipo de progreso al iniciar una aplicación grande, por ejemplo, un "icono que salta", un cambio de cursor, o algo similar. La pantalla de inicio de LibreOffice aparece solo después de varios segundos y, antes de eso, no sabes qué está pasando.

Mi tercer día con Haiku: comienza a formarse una imagen completa
Los iconos saltarines de las aplicaciones son un signo de que las aplicaciones se están iniciando.

  • Los atajos de teclado mostrados en el menú son incorrectos (dice Ctrl+O, pero en realidad es Alt+O, lo he comprobado: Alt+O funciona y Ctrl+O no).
  • Alt+Z no funciona (por ejemplo, en Writer).
  • El problema “La aplicación LibreOffice ha abortado el proceso de cierre” [esto es intencionado, — nota del traductor].

Tiempo de inicio de las aplicaciones

NOTA: por favor, tomen este segmento con un grano de sal. El rendimiento es realmente excelente, según la opinión de otras personas. Mis resultados son muy diferentes... supongo que las peculiaridades de mi configuración y las mediciones realizadas hasta ahora son poco científicas. Actualizaré esta sección a medida que surjan nuevas ideas/resultados.

El rendimiento al iniciar aplicaciones (no nativas)... no es tan elevado, la diferencia es de aproximadamente 4 a 10 veces. Como pueden notar, solo se utilizó un núcleo de procesador al lanzar aplicaciones que no son nativas, por una razón que no comprendo.

Mi tercer día con Haiku: comienza a formarse una imagen completa
Cómo veo la velocidad de lanzamiento de aplicaciones.

  • Lanzamiento Krita toma alrededor de 40 segundos en una memoria USB Kingston Technology DataTraveler 100, conectada al puerto USB2.0 (lanzar Krita AppImage toma una fracción de segundo en Xubuntu Linux Live ISO a través de USB2; se necesitan más pruebas). Corrección: alrededor de 13 segundos en un SSD SATA con ACPI desactivado.

  • Lanzamiento LibreOffice toma 30 segundos en una memoria USB Kingston Technology DataTraveler G4, conectada al puerto USB2.0 (fracción de segundo en Xubuntu Linux Live ISO a través de USB 2; se necesitan más pruebas). Corrección: menos de 3 segundos en un SSD SATA con ACPI desactivado.

También escuché que los últimos desarrollos mejorarán el rendimiento en SSD más de 10 veces. Estoy esperando con ansias.

Otros revisores elogian constantemente a Haiku por su funcionamiento ágil. ¿Qué está mal en mi sistema? Corrección: sí, ACPI está roto en mi sistema; si lo desactivo, el sistema funciona más rápido.

He realizado algunas pruebas.

# 
# 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 mayor transparencia, verifiqué todo en dos máquinas diferentes con Linux y Haiku. Si es necesario, repetiré las pruebas en una máquina similar. Aún no entiendo por qué las aplicaciones se inician más lento que a través de usb2.0 en Linux. Actualización: hay muchos errores relacionados con USB en el syslog de esta máquina. Así que los resultados anteriores pueden no ser típicos para Haiku en general.

Como dice el conocido refrán: si no puedes medirlo, no puedes gestionarlo. Y dado que hay un deseo de mejorar el rendimiento, creo que un conjunto de pruebas es apropiado 🙂

Combinaciones de teclas

Para los que vienen de otros sistemas operativos, todo es bastante genial en Haiku cuando se trata de combinaciones de teclas. Personalmente, me gustan más las combinaciones de teclas al estilo Mac, donde mantienes la tecla a la izquierda de la barra espaciadora («Ctrl» en los teclados de Apple, «Alt» en otros) al escribir una letra o un número. Dado que Haiku realmente funciona bien en este aspecto, siento que se pueden considerar las siguientes opciones:

Combinaciones de teclas en el escritorio y para él

Me gusta que se puede hacer clic en el icono y presionar Alt-O para abrirlo, o usar una combinación más tradicional como Alt-abajo.

Igual de bien, sería bueno si para mover un archivo a la papelera se pudiera presionar Alt-Backspace, además de Alt-T.

Para mostrar el escritorio: sería bueno aplicar Alt-H — para «Ocultar», y Shift-Alt-H — para «Ocultar todo». Y quizás sería útil introducir una combinación Shift-Alt-D — para «Mostrar escritorio».

Combinaciones en diálogos

Abro StyledEdit, escribo texto. Presiono Alt-Q. El programa pregunta si se debe guardar. Presiono Alt-D para «No guardar», Alt-C para «Cancelar». Pero esto no funciona. Intento usar las teclas de flecha para seleccionar el botón. Tampoco funciona. Repito las mismas acciones en una aplicación basada en Qt. Aquí, al menos, funcionan las teclas de flecha para seleccionar el botón. (Las teclas de control para seleccionar botones se usaban originalmente en Mac OS X, pero parece que los desarrolladores se han olvidado de esta opción desde entonces).

Combinaciones para tomar capturas de pantalla

Sería genial si se pudiera presionar Alt-Shift-3 para capturar toda la pantalla, Alt-Shift-4 para que aparezca un cursor que permita seleccionar un área de la pantalla, y Alt-Shift-5 para la ventana activa actual con su diseño.

Interesante, si esto se puede configurar manualmente, pero probablemente no sea posible. Al menos, tal intento no me dio resultado [¡tenía que intentar envolverlo en un script! — nota del traductor].

Mi tercer día con Haiku: comienza a formarse una imagen completa
Casi. Pero no del todo. Se ignora «-bw», además se necesitan configuraciones adicionales predeterminadas.

Otras cosas en el teclado

Se siente el cuidado de los desarrolladores, así que continuaré describiendo mi experiencia con el teclado en Haiku.

No es posible ingresar símbolos nacionales

El símbolo «`» es especial, puede ser parte de otro símbolo (por ejemplo, «e») o puede estar solo. Su procesamiento varía en diferentes sistemas operativos. Por ejemplo, no puedo ingresar este símbolo en un teclado alemán en KWrite; si intento ingresarlo, no pasa nada. Al ingresarlo en QupZilla, aparece «>>». En las aplicaciones nativas, se ingresa, pero se necesitan dos pulsaciones para que aparezca. Para ingresarlo tres veces (lo cual suele ser necesario al marcar bloques de código, yo lo escribo así constantemente), hay que presionar la tecla 6 veces. En Mac, la situación se procesa de forma más inteligente (se necesitan solo tres pulsaciones mientras se conserva la entrada habitual de caracteres diacríticos).

Aplicaciones Java

¿Falta JavaFX? Java viene al rescate, ¿no? Bueno, no del todo:

pkgman install openjdk12_default
/> java -jar /Haiku/home/Desktop/MyMarkdown.jar
Error: No se pudo encontrar o cargar la clase principal Main
Causado por: java.lang.NoClassDefFoundError: javafx/application/Application

Cambiemos de enfoque:

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

Parece que en la vida real las aplicaciones en Java no son tan portables como prometen en la publicidad. ¿Hay JavaFX para Haiku? Si es así, ¿por qué no se instala junto con openjdk12_default?

El doble clic en el archivo jar no funciona

Me sorprende que Haiku no tenga idea de cómo manejar el doble clic en un archivo .jar.

Bash se comporta de manera extraña

Dado que hay bash, se esperaba que los pipes funcionaran:

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

Conclusión

¿Por qué escribo estos artículos? En mi opinión, el mundo realmente necesita un sistema operativo de código abierto como Haiku, claramente orientado a PC, y también porque me está molestando cada vez más el hecho de que los entornos de trabajo para Linux no funcionan en conjunto. No discuto que para crear el entorno de usuario deseado para PC se necesita un núcleo completamente diferente o se puede obtener un entorno similar sobre el núcleo de Linux, pero me interesa saber qué opinan al respecto los expertos en núcleos. Mientras tanto, solo me divierto con Haiku y hago anotaciones con la esperanza de que sean útiles para los desarrolladores de Haiku y/o el público interesado.

¡Intenta tú mismo! El proyecto Haiku proporciona imágenes para descargar desde DVD o USB, formadas diariamente. Para instalar, solo necesitas descargar la imagen y grabarla en un pendrive con Etcher.

¿Tienes preguntas? Te invitamos a nuestro canal de telegram en ruso.

Revisión de errores: Cómo dispararte en el pie en C y C++. Recopilación de recetas de Haiku OS

Desde autor traducción: este es el tercer artículo de la serie sobre Haiku.

Lista de artículos: Primero, Segundo.

Fuente: habr.com

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster