{"id":37830,"date":"2019-10-31T22:20:00","date_gmt":"2019-10-31T19:20:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/koe-chto-eshhe-pakety-prilozhenij-haiku\/"},"modified":"2019-10-31T22:20:00","modified_gmt":"2019-10-31T19:20:00","slug":"koe-chto-eshhe-pakety-prilozhenij-haiku","status":"publish","type":"post","link":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/koe-chto-eshhe-pakety-prilozhenij-haiku","title":{"rendered":"\u00bfAlgo m\u00e1s: paquetes de aplicaciones Haiku?","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"\u00bfAlgo m\u00e1s: paquetes de aplicaciones Haiku?\" src=\"\/wp-content\/uploads\/2019\/09\/90604411e96ca7ef7b2d7dccac374d4e.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p><strong>TL;DR<\/strong>: puede Haiku recibir el soporte adecuado para paquetes de aplicaciones, como un cat\u00e1logo de aplicaciones (como <code>.app<\/code> en Mac) y\/o im\u00e1genes de aplicaciones (Linux <code>AppImage<\/code>)? Me parece que ser\u00eda una adici\u00f3n digna que ser\u00eda m\u00e1s f\u00e1cil de implementar que en otros sistemas, ya que gran parte de la infraestructura ya existe.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/southbridge\/blog\/461141\/\">Hace una semana<\/a><\/noindex> descubr\u00ed Haiku, un sistema sorprendentemente bueno. Y como he estado interesado en cat\u00e1logos e im\u00e1genes de aplicaciones (inspirado en la simplicidad de Macintosh), no es sorprendente que se me ocurriera la idea...<\/p>\n<p><\/p>\n<p>Para su comprensi\u00f3n completa: soy el creador y autor de AppImage, un formato de distribuci\u00f3n de aplicaciones de Linux orientado a la simplicidad de Mac y que otorga completo control a los desarrolladores de aplicaciones y a los usuarios finales (si desea saber m\u00e1s, vea <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/AppImage\">wiki<\/a><\/noindex> y <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.appimage.org\/\">la documentaci\u00f3n<\/a><\/noindex>).<\/p>\n<p><\/p>\n<h2 id=\"chto-esli-my-sdelaem-appimage-dlya-haiku\">\u00bfQu\u00e9 pasar\u00eda si hacemos AppImage para Haiku?<\/h2>\n<p><\/p>\n<p>Hablemos un poco, puramente te\u00f3ricamente, sobre lo que se necesitar\u00eda para obtener <noindex><a rel=\"nofollow\" href=\"https:\/\/appimage.org\/\">AppImage<\/a><\/noindex>, o algo similar, en Haiku? No es necesario crear algo de inmediato, ya que el sistema que ya existe en Haiku funciona sorprendentemente bien, y una experiencia imaginaria ser\u00eda interesante. Adem\u00e1s, demuestra la sofisticaci\u00f3n de Haiku en comparaci\u00f3n con los entornos de trabajo de Linux, donde tales cosas son terriblemente dif\u00edciles (tengo derecho a decirlo: he estado lidiando con la depuraci\u00f3n durante 10 a\u00f1os).<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"\u00bfAlgo m\u00e1s: paquetes de aplicaciones Haiku?\" src=\"\/wp-content\/uploads\/2019\/09\/f72209cb7c70702e614729f3b250c1b8.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<em>En Macintosh System 1, cada aplicaci\u00f3n era un archivo separado, \"gestionado\" en el Finder. Usando AppImage, intento recrear esta misma experiencia de usuario en Linux.<\/em><\/p>\n<p><\/p>\n<p>Primero, \u00bfqu\u00e9 es AppImage? Es un sistema para lanzar aplicaciones de desarrolladores terceros (por ejemplo, <noindex><a rel=\"nofollow\" href=\"https:\/\/ultimaker.com\/software\/ultimaker-cura\">Ultimaker Cura<\/a><\/noindex>), que permite lanzar aplicaciones cuando y como se desee: no es necesario conocer las particularidades de las distintas distribuciones, pol\u00edticas de construcci\u00f3n o infraestructura de compilaci\u00f3n, no se necesita el soporte de mantenedores, y no dicen a los usuarios lo que pueden o no pueden instalar en sus computadoras. AppImage debe entenderse como algo similar a un paquete para Mac en formato <code>.app<\/code> dentro de la imagen de disco <code>.dmg<\/code>. La principal diferencia es que las aplicaciones no se copian, sino que permanecen dentro de AppImage siempre, de manera similar a c\u00f3mo se montan los paquetes de Haiku, y nunca se instalan en el sentido habitual. <code>.hpkg<\/code> se montan, y nunca se instalan en el sentido habitual.<\/p>\n<p><\/p>\n<p>AppImage ha adquirido cierta atracci\u00f3n y popularidad en m\u00e1s de 10 a\u00f1os de existencia: el propio Linus Torvalds lo aprob\u00f3 p\u00fablicamente, y proyectos reconocidos (como LibreOffice, Krita, Inkscape, Scribus, ImageMagick) lo adoptaron como el m\u00e9todo principal para distribuir versiones continuas o nocturnas, sin interferir con las aplicaciones ya instaladas o no instaladas de los usuarios. Sin embargo, los entornos de trabajo y las distribuciones de Linux a\u00fan tienden a aferrarse al modelo tradicional de distribuci\u00f3n centralizada basado en acompa\u00f1amientos y\/o promocionar sus propios programas empresariales y\/o de ingenier\u00eda. <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/Flatpak\">Flatpak<\/a><\/noindex> (RedHat, Fedora, GNOME) y <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/Snappy_%28%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0_%D1%83%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F_%D0%BF%D0%B0%D0%BA%D0%B5%D1%82%D0%B0%D0%BC%D0%B8%29\">Snappy<\/a><\/noindex> (Canonical, Ubuntu). Llega <noindex><a rel=\"nofollow\" href=\"https:\/\/blogs.gnome.org\/hughsie\/2019\/07\/12\/gnome-software-in-fedora-will-no-longer-support-snapd\/\">a lo rid\u00edculo<\/a><\/noindex>.<\/p>\n<p><\/p>\n<h3 id=\"kak-vse-rabotaet\">C\u00f3mo funciona todo<\/h3>\n<p><\/p>\n<ul>\n<li>Cada AppImage contiene 2 partes: un peque\u00f1o ejecutable ELF (llamado <code>runtime.c<\/code>), seguido de una imagen del sistema de archivos <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/SquashFS\">SquashFS<\/a><\/noindex>.<\/li>\n<\/ul>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"\u00bfAlgo m\u00e1s: paquetes de aplicaciones Haiku?\" src=\"\/wp-content\/uploads\/2019\/09\/c48bdc61fb08cdd9d2a2be10d4cfa5a5.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<ul>\n<li>El sistema de archivos SquashFS contiene la carga \u00fatil en forma de la aplicaci\u00f3n y todo lo necesario para su ejecuci\u00f3n, que en conciencia no se puede considerar parte de la instalaci\u00f3n predeterminada para cualquier sistema objetivo suficientemente reciente (distribuci\u00f3n de Linux). Tambi\u00e9n contiene metadatos, por ejemplo, el nombre de la aplicaci\u00f3n, \u00edconos, tipos MIME, etc.<\/li>\n<\/ul>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"\u00bfAlgo m\u00e1s: paquetes de aplicaciones Haiku?\" src=\"\/wp-content\/uploads\/2019\/09\/57285196436aaa5468f544942b39a608.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<ul>\n<li>Al iniciarse, el runtime utiliza FUSE y squashfuse para montar el sistema de archivos, despu\u00e9s de lo cual se procesa la ejecuci\u00f3n de un punto de entrada (llamado AppRun) dentro del AppImage montado.<br \/>\nEl sistema de archivos se desmonta despu\u00e9s de que el proceso finaliza.<\/li>\n<\/ul>\n<p><\/p>\n<p>Parece bastante sencillo.<\/p>\n<p><\/p>\n<p>Y estas cosas lo complican todo:<\/p>\n<p><\/p>\n<ul>\n<li>Con la variedad de distribuciones de Linux, nada \u00aben su sano juicio\u00bb se podr\u00eda llamar \"parte de la instalaci\u00f3n por defecto para cada nuevo sistema objetivo\". Superamos este problema ensamblando <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/AppImage\/pkg2appimage\/blob\/master\/excludelist\">excludelist<\/a><\/noindex>, que permite definir qu\u00e9 se empaquetar\u00e1 en el AppImage y qu\u00e9 deber\u00e1 tomarse de otro lugar. A veces, fallamos, a pesar de que en general todo funciona perfectamente. Por esta raz\u00f3n, recomendamos a los creadores de paquetes probar AppImages en todos los sistemas objetivos (distribuciones).<\/li>\n<li>Las aplicaciones en forma de carga \u00fatil deben ser movibles en el sistema de archivos. Desafortunadamente, en muchas aplicaciones se definen caminos absolutos fijos a, por ejemplo, recursos en <code>\/usr\/share<\/code>. Esto necesita corregirse de alguna manera. Adem\u00e1s, se debe o exportar <code>LD_LIBRARY_PATH<\/code>, o corregir <code>rpath<\/code> para que el cargador pueda encontrar las bibliotecas asociadas. El primer m\u00e9todo tiene sus desventajas (que se evitan con m\u00e9todos complicados), mientras que el segundo es simplemente engorroso.<\/li>\n<li>La mayor trampa de UX para los usuarios es que hay que <noindex><a rel=\"nofollow\" href=\"https:\/\/discourse.appimage.org\/t\/how-to-run-an-appimage\/80\">establecer el bit ejecutable<\/a><\/noindex> el archivo AppImage despu\u00e9s de descargarlo. Cr\u00e9alo o no, para algunos esto es una barrera real. La necesidad de establecer el bit de ejecutable es engorrosa incluso para los usuarios experimentados. Como soluci\u00f3n alternativa, propusimos la instalaci\u00f3n de un peque\u00f1o servicio que supervise los archivos AppImage y les establezca el bit de ejecutable. En su forma pura, no es la mejor soluci\u00f3n, ya que no funcionar\u00e1 \"de caja\". Las distribuciones de Linux no ofrecen este servicio, por lo tanto, los usuarios \"de caja\" tienen complicaciones.<\/li>\n<li>Los usuarios de Linux esperan que una nueva aplicaci\u00f3n tenga un icono en el men\u00fa de inicio. No puedes decirle al sistema: \u00abMira, hay una nueva aplicaci\u00f3n, \u00a1vamos a trabajar!\u00bb. En su lugar, seg\u00fan la especificaci\u00f3n XDG, tienes que copiar el archivo <code>.desktop<\/code> en el lugar adecuado en <code>\/usr<\/code> para una instalaci\u00f3n de sistema completo, o en <code>$HOME<\/code> para una instalaci\u00f3n individual. Los \u00edconos de ciertos tama\u00f1os, de acuerdo a la especificaci\u00f3n XDG, deben colocarse en ciertos lugares en <code>usr<\/code> o <code>$HOME<\/code>, y luego ejecutar comandos en el entorno de trabajo para actualizar la cach\u00e9 de \u00edconos, o esperar que el gestor de ventanas logre detectarlos autom\u00e1ticamente. Lo mismo ocurre con los tipos MIME. Como soluci\u00f3n alternativa, se sugiere usar el mismo servicio que adem\u00e1s de establecer el bit ejecutable, copiar\u00e1 los \u00edconos y otros elementos de AppImage a los lugares apropiados seg\u00fan XDG cuando existan. Al eliminar o mover, el servicio deber\u00eda limpiar todo. Por supuesto, hay diferencias en el comportamiento de cada entorno de trabajo, en los formatos de archivos gr\u00e1ficos, sus tama\u00f1os, lugares de almacenamiento y m\u00e9todos de actualizaci\u00f3n de cach\u00e9s, lo que crea el problema. En resumen, este m\u00e9todo es un parche.<\/li>\n<li>Si lo anterior no es suficiente, no hay \u00edcono de AppImage en el gestor de archivos. En el mundo de Linux, a\u00fan no se ha tomado una decisi\u00f3n sobre la implementaci\u00f3n de elficon (a pesar de <noindex><a rel=\"nofollow\" href=\"https:\/\/wiki.kubuntu.org\/ELFIconSpec\">la discusi\u00f3n<\/a><\/noindex> y <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/pld-linux\/elficon\">implementaci\u00f3n<\/a><\/noindex>), por lo que no es posible incorporar el icono directamente en la aplicaci\u00f3n. As\u00ed que resulta que las aplicaciones en el gestor de archivos no tienen sus propios iconos (sin importar si es AppImage o algo m\u00e1s), solo est\u00e1n en el men\u00fa de inicio. Como soluci\u00f3n alternativa, aplicamos miniaturas: un mecanismo que fue dise\u00f1ado originalmente para que los gestores de escritorio pudieran mostrar im\u00e1genes reducidas para previsualizar archivos gr\u00e1ficos como sus iconos. Por lo tanto, el servicio para establecer el bit de ejecutable tambi\u00e9n act\u00faa como un \"miniaturizador\", creando y guardando miniaturas de iconos en sus lugares correspondientes. <code>\/usr<\/code> y <code>$HOME<\/code>. Tambi\u00e9n, este servicio realiza limpieza si se elimina o se mueve el AppImage. Debido a que cada gestor de escritorio se comporta de manera un poco diferente, por ejemplo, en qu\u00e9 formatos acepta \u00edconos, en qu\u00e9 tama\u00f1os o ubicaciones, todo esto puede ser realmente problem\u00e1tico.<\/li>\n<li>La aplicaci\u00f3n simplemente falla al ejecutarse si hay errores (por ejemplo, hay una biblioteca que no es parte del sistema base y no se incluye en el AppImage), y nadie le informa al usuario en la interfaz gr\u00e1fica sobre lo que est\u00e1 sucediendo. Hemos comenzado a sortear esto utilizando <noindex><a rel=\"nofollow\" href=\"https:\/\/developer.gnome.org\/notification-spec\/\">una notificaci\u00f3n<\/a><\/noindex> en el escritorio, por lo que necesitamos capturar errores desde la l\u00ednea de comandos, convertirlos en mensajes comprensibles para el usuario, que luego tambi\u00e9n deben mostrarse en el escritorio. Y, por supuesto, cada entorno de trabajo los maneja de manera un poco diferente.<\/li>\n<li>En este momento (septiembre de 2019, - nota del traductor), no he encontrado una forma sencilla de decirle al sistema que el archivo <code>1.png<\/code> debe abrirse con Krita, y <code>2.png<\/code> \u2014 con GIMP.<\/li>\n<\/ul>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"\u00bfAlgo m\u00e1s: paquetes de aplicaciones Haiku?\" src=\"\/wp-content\/uploads\/2019\/09\/347e54772a7312e27c83fef68be98e66.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<em>El lugar de almacenamiento de las especificaciones cross-desktop, utilizadas en <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/GNOME\">GNOME<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/KDE\">KDE<\/a><\/noindex> y <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/Xfce\">Xfce<\/a><\/noindex> es freedesktop.org <\/em><\/p>\n<p><\/p>\n<p>Alcanzar un nivel de sofisticaci\u00f3n, profundamente entrelazado en el entorno de trabajo de Haiku, es dif\u00edcil, si no se dice que es 'imposible', debido a las especificaciones <noindex><a rel=\"nofollow\" href=\"https:\/\/www.freedesktop.org\/wiki\/\">XDG de freedesktop.org<\/a><\/noindex> para cross-desktop, as\u00ed como las implementaciones de los gestores de escritorio basadas en estas especificaciones. Por ejemplo, existe un \u00edcono de sistema com\u00fan para Firefox: evidentemente, a los autores de XDG no se les ocurri\u00f3 que un usuario podr\u00eda tener instaladas varias versiones de la misma aplicaci\u00f3n.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"\u00bfAlgo m\u00e1s: paquetes de aplicaciones Haiku?\" src=\"\/wp-content\/uploads\/2019\/09\/d9743766c183f78e68a2669b09aa48d9.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<em>\u00cdconos de diferentes versiones de Firefox<\/em><\/p>\n<p><\/p>\n<p>Me interesaba saber qu\u00e9 podr\u00eda aprender el mundo de Linux de Mac OS X para no cometer errores en la integraci\u00f3n de sistemas. Si tienes tiempo y te dedicas a esto, aseg\u00farate de leer lo que dijo Arnaud Gurdol, uno de los primeros ingenieros de Mac OS X:<\/p>\n<p><\/p>\n<blockquote><p>Quer\u00edamos que instalar una aplicaci\u00f3n fuera tan f\u00e1cil como arrastrar el \u00edcono de la aplicaci\u00f3n desde cualquier lugar (servidor, disco externo) al disco de su computadora. Para ello, se ha guardado toda la informaci\u00f3n en el paquete de la aplicaci\u00f3n, incluyendo \u00edconos, versi\u00f3n, tipo de archivo procesado y el tipo de esquema URL que el sistema debe conocer para gestionar la aplicaci\u00f3n. Tambi\u00e9n se incluye la informaci\u00f3n para el 'almacenamiento centralizado' en la base de datos de Icon Services y Launch Services. Para apoyar el rendimiento de la aplicaci\u00f3n, esta 'se detecta' en varios lugares 'bien conocidos': en el directorio de Aplicaciones del sistema y del usuario, as\u00ed como en otros lugares autom\u00e1ticamente, si el usuario accede a Finder en el directorio que contiene la aplicaci\u00f3n. En la pr\u00e1ctica, esto funcion\u00f3 muy bien.<\/p><\/blockquote>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/youtu.be\/qQsnqWJ8D2c\">https:\/\/youtu.be\/qQsnqWJ8D2c<\/a><\/noindex><br \/>\n<em>Apple WWDC 2000 sesi\u00f3n 144 \u2014 Mac OS X: empaquetado de aplicaciones e impresi\u00f3n de documentos.<\/em><\/p>\n<p><\/p>\n<p>No existe nada similar en esta infraestructura en los entornos de trabajo de Linux, por lo que buscamos soluciones alternativas para las limitaciones estructurales en el proyecto AppImage.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"\u00bfAlgo m\u00e1s: paquetes de aplicaciones Haiku?\" src=\"\/wp-content\/uploads\/2019\/09\/a2550cb690d92d1aeb4fccff7e7fa57b.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<em>\u00bfAcaso Haiku viene al rescate?<\/em><\/p>\n<p><\/p>\n<p>Y adem\u00e1s: las plataformas de Linux como base para entornos de trabajo suelen estar tan poco especificadas que muchas cosas que son bastante simples en un sistema coherente con un stack completo son frustrantes, por su fragmentaci\u00f3n y complejidad en Linux. Dediqu\u00e9 un completo discurso a las cuestiones relacionadas con la plataforma Linux para entornos de trabajo (los desarrolladores experimentados confirmaron: esto seguir\u00e1 as\u00ed por mucho tiempo).<\/p>\n<p>\n<center><div class=\"youtube-placeholder\" data-id=\"SQ8OXf7o6UA\" onclick=\"loadVideo(this)\">\r\n        <img decoding=\"async\" src=\"https:\/\/img.youtube.com\/vi\/SQ8OXf7o6UA\/hqdefault.jpg\" alt=\"Reproducir video\" loading=\"lazy\" width=\"480\" height=\"360\" style=\"width:100%;height:auto;\">\r\n        <div class=\"play-button\"><\/div>\r\n    <\/div><\/center><\/p>\n<p><em>Mi discurso sobre los problemas de los entornos de trabajo en Linux en 2018<\/em><\/p>\n<p><\/p>\n<p>Incluso Linus Torvalds reconoci\u00f3 que es precisamente debido a la fragmentaci\u00f3n que la idea de los entornos de trabajo no ha tenido \u00e9xito.<\/p>\n<p><\/p>\n<p>\u00a1Es agradable ver a Haiku!<\/p>\n<p><\/p>\n<h2 id=\"s-haiku-vse-stanovitsya-potryasayusche-prostym\">Con Haiku, todo se vuelve incre\u00edblemente simple.<\/h2>\n<p><\/p>\n<p>Aunque el enfoque ingenuo para 'migrar' AppImage a Haiku consiste en simplemente intentar compilar (principalmente runtime.c y el servicio) sus componentes (\u00a1lo cual podr\u00eda ser posible!), esto no aportar\u00e1 mucho beneficio a Haiku. Debido a que, de hecho, la mayor\u00eda de estos problemas ya est\u00e1n resueltos en Haiku y son conceptualmente s\u00f3lidos. Haiku proporciona precisamente los bloques que he buscado tanto tiempo en entornos de trabajo en Linux y no pod\u00eda creer que no estuvieran all\u00ed. A saber:<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"\u00bfAlgo m\u00e1s: paquetes de aplicaciones Haiku?\" src=\"\/wp-content\/uploads\/2019\/09\/29f583bd24bd06cd67311a5087243639.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<em>Creas o no, pero esto es algo que muchos usuarios de Linux no pueden superar. \u00a1En Haiku todo se hace autom\u00e1ticamente!<\/em><\/p>\n<p><\/p>\n<ul>\n<li>Los archivos ELF que no tienen el bit de ejecutabilidad lo obtienen autom\u00e1ticamente al hacer doble clic en el gestor de archivos.<\/li>\n<li>Las aplicaciones pueden tener recursos integrados, como \u00edconos, que se muestran en el gestor de archivos. No es necesario copiar un mont\u00f3n de im\u00e1genes en directorios especiales de \u00edconos, por lo tanto, no hay necesidad de limpiarlos despu\u00e9s de eliminar o mover la aplicaci\u00f3n.<\/li>\n<li>Hay una base de datos para vincular aplicaciones con documentos, no es necesario copiar ning\u00fan archivo para esto.<\/li>\n<li>En el directorio lib\/, junto al archivo ejecutable, las bibliotecas se buscan por defecto.<\/li>\n<li>No hay numerosas distribuciones y entornos de escritorio, todo lo que funciona, funciona en todas partes.<\/li>\n<li>No existe un m\u00f3dulo de ejecuci\u00f3n separado que se diferencie del directorio de Aplicaciones.<\/li>\n<li>Las aplicaciones no tienen rutas absolutas integradas a sus recursos; hay funciones especiales para determinar la ubicaci\u00f3n durante la ejecuci\u00f3n.<\/li>\n<li>Se ha implementado la idea de im\u00e1genes de sistemas de archivos comprimidos: esto es cualquier paquete hpkg. Todos ellos son montados por el n\u00facleo.<\/li>\n<li>Cada archivo se abre con la aplicaci\u00f3n que lo cre\u00f3, a menos que se indique lo contrario. \u00a1Qu\u00e9 genial!<\/li>\n<\/ul>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"\u00bfAlgo m\u00e1s: paquetes de aplicaciones Haiku?\" src=\"\/wp-content\/uploads\/2019\/09\/335fedea2cc70e9d9e0c8f3dbcd41560.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<em>Dos archivos png. Observe los diferentes \u00edconos que muestran que se abrir\u00e1n con diferentes aplicaciones al hacer doble clic. Tambi\u00e9n note el men\u00fa desplegable 'Abrir con:', donde el usuario puede seleccionar una aplicaci\u00f3n espec\u00edfica. \u00a1Qu\u00e9 f\u00e1cil!<\/em><\/p>\n<p><\/p>\n<p>Parece que muchos parches y soluciones alternativas que necesita AppImage en Linux se vuelven innecesarios en Haiku, que se basa en la simplicidad y sofisticaci\u00f3n, lo que le permite manejar la mayor\u00eda de nuestras necesidades.<\/p>\n<p><\/p>\n<h2 id=\"nuzhny-li-haiku-pakety-prilozheniy-v-konce-koncov\">\u00bfNecesita Haiku paquetes de aplicaciones, al final?<\/h2>\n<p><\/p>\n<p>Esto nos lleva a una gran pregunta. Si crear un sistema como AppImage en Haiku resulta mucho m\u00e1s f\u00e1cil que en Linux, \u00bfvale la pena intentarlo? \u00bfO Haiku, con su sistema de paquetes hpkg, ha hecho que el desarrollo de una idea similar sea innecesario? Bueno, para responder a esto, es necesario mirar la motivaci\u00f3n detr\u00e1s de la existencia de AppImages.<\/p>\n<p><\/p>\n<h3 id=\"vzglyad-so-storony-polzovatelya\">Perspectiva del usuario<\/h3>\n<p><\/p>\n<p>Veamos a nuestro usuario final:<\/p>\n<p><\/p>\n<ul>\n<li>Quiero instalar una aplicaci\u00f3n sin que se solicite la contrase\u00f1a del administrador (root). <em>En Haiku no existe el concepto de administrador, el usuario tiene control total, \u00a1ya que es un sistema personal!<\/em> (En principio, esto podr\u00eda imaginarse tambi\u00e9n en modo multiusuario, espero que los desarrolladores mantengan la simplicidad)<\/li>\n<li>Quiero recibir las \u00faltimas y mejores versiones de las aplicaciones, sin esperar a que est\u00e9n disponibles en mi distribuci\u00f3n (generalmente esto significa 'nunca', al menos a menos que actualice todo el sistema operativo). <em>En Haiku, esto se 'resuelve' mediante lanzamientos flotantes. Esto significa que hay la posibilidad de obtener las \u00faltimas y mejores versiones de las aplicaciones, pero para ello se debe actualizar constantemente el resto del sistema, convirti\u00e9ndolo efectivamente en un 'objetivo en movimiento'.<\/em>.<\/li>\n<li>Quiero tener varias versiones de la misma aplicaci\u00f3n al mismo tiempo, ya que no se puede saber qu\u00e9 se rompi\u00f3 en la \u00faltima versi\u00f3n, o, digamos, como desarrollador web, necesito verificar mi trabajo en diferentes versiones del navegador. <em>En Haiku se ha resuelto el primer problema, pero no el segundo. Las actualizaciones se pueden revertir, pero solo para todo el sistema, no es posible (hasta donde yo s\u00e9) ejecutar, por ejemplo, varias versiones de WebPositive o LibreOffice al mismo tiempo.<\/em><\/li>\n<\/ul>\n<p><\/p>\n<p>Uno de los desarrolladores escribe:<\/p>\n<p><\/p>\n<blockquote><p>Esencialmente, la justificaci\u00f3n es la siguiente: el caso de uso es tan raro que la optimizaci\u00f3n para \u00e9l no tiene sentido; tratarlo como un caso especial en HaikuPorts parece m\u00e1s que aceptable.<\/p><\/blockquote>\n<p><\/p>\n<ul>\n<li>Necesito almacenar aplicaciones donde me guste, y no en el disco de arranque. A menudo me quedo sin espacio en los discos, as\u00ed que necesito conectar un disco externo o una carpeta de red para almacenar aplicaciones (todas las versiones que he descargado). Si conecto dicho disco, las aplicaciones deben abrirse con un doble clic. <em>Haiku guarda versiones antiguas de los paquetes, pero no s\u00e9 c\u00f3mo moverlas a un disco externo, ni c\u00f3mo abrir aplicaciones desde all\u00ed despu\u00e9s.<\/em><\/li>\n<\/ul>\n<p><\/p>\n<p>Comentario del desarrollador:<\/p>\n<p><\/p>\n<blockquote><p>T\u00e9cnicamente, esto ya es posible con el comando mount. Por supuesto, haremos un GUI para esto una vez que haya suficientes usuarios interesados.<\/p><\/blockquote>\n<p><\/p>\n<ul>\n<li>No necesito millones de archivos esparcidos por el sistema de archivos que no puedo gestionar manualmente. Quiero un solo archivo por aplicaci\u00f3n que pueda descargar, mover o eliminar f\u00e1cilmente. <em>En Haiku, este problema se resuelve mediante paquetes <code>.hpkg<\/code>, que agrupan, por ejemplo, python, de miles de archivos en uno solo. Pero si hay, por ejemplo, Scribus que usa python, tengo que lidiar con al menos dos archivos. Y debo asegurarme de que conserven las versiones que funcionan entre s\u00ed.<\/em><\/li>\n<\/ul>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"\u00bfAlgo m\u00e1s: paquetes de aplicaciones Haiku?\" src=\"\/wp-content\/uploads\/2019\/09\/94ccb9d0b693b7411946b432f3d2f347.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<em>Numerosas versiones de AppImages, ejecut\u00e1ndose lado a lado en un solo Linux.<\/em><\/p>\n<p><\/p>\n<h3 id=\"vzglyad-so-storony-razrabotchika-prilozheniy\">Una perspectiva desde el lado del desarrollador de aplicaciones.<\/h3>\n<p><\/p>\n<p>Veamos desde la perspectiva de un desarrollador de aplicaciones:<\/p>\n<p><\/p>\n<ul>\n<li>Quiero controlar la experiencia del usuario en su totalidad. No quiero depender del sistema operativo que me indique cu\u00e1ndo y c\u00f3mo debo lanzar aplicaciones. <em>En Haiku, los desarrolladores pueden trabajar con sus propios repositorios hpkg, pero esto significa que los usuarios tendr\u00e1n que configurarlos manualmente, lo que hace que esta idea sea 'menos atractiva'.<\/em><\/li>\n<li>Tengo una p\u00e1gina de descarga en mi sitio web donde distribuyo <code>.exe<\/code> para Windows, <code>.dmg<\/code> para Mac y <code>.AppImage<\/code> para Linux. \u00bfY si quiero monetizar el acceso a esta p\u00e1gina, podr\u00eda ser? \u00bfQu\u00e9 deber\u00eda incluir all\u00ed para Haiku? <em>Basta con un archivo <code>.hpkg<\/code> con dependencias solo de HaikuPorts.<\/em><\/li>\n<li>Mi software necesita versiones espec\u00edficas de otro software. Por ejemplo, se sabe que Krita requiere una versi\u00f3n corregida de Qt, o Qt que est\u00e1 ajustada a una versi\u00f3n espec\u00edfica de Krita, al menos hasta que los arreglos se integren de nuevo en Qt. <em>Se puede empaquetar Qt propio para la aplicaci\u00f3n en el paquete <code>.hpkg<\/code>, pero probablemente no ser\u00e1 bien recibido.<\/em><\/li>\n<\/ul>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"\u00bfAlgo m\u00e1s: paquetes de aplicaciones Haiku?\" src=\"\/wp-content\/uploads\/2019\/09\/7dcb146d08ebd570899d0d73b6517faa.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<em>Una p\u00e1gina de descarga de aplicaciones t\u00edpica. \u00bfQu\u00e9 deber\u00eda incluir aqu\u00ed para Haiku?<\/em><\/p>\n<p><\/p>\n<p>\u00bfSer\u00e1n los kits (existentes como directorios de aplicaciones, como AppDir o <code>.app<\/code> en estilo Apple) y\/o im\u00e1genes (en forma de AppImages fuertemente modificados o <code>.dmg<\/code> \u00bfSon las aplicaciones de Apple un complemento \u00fatil para el entorno de trabajo de Haiku? \u00bfO esto fragmentar\u00e1 la imagen completa y generar\u00e1 complejidad? Estoy en un dilema: por un lado, la belleza y sofisticaci\u00f3n de Haiku se basa en que normalmente hay una sola forma de hacer algo, no muchas. Por otro lado, gran parte de la infraestructura para directorios y\/o conjuntos de aplicaciones ya est\u00e1 en su lugar, por lo que el sistema clama por que se ubiquen all\u00ed los restantes pocos por ciento.<\/p>\n<p><\/p>\n<p>Seg\u00fan el desarrollador <noindex><a rel=\"nofollow\" href=\"https:\/\/medium.com\/u\/f103a52f4b96?source=post_page-----1803a11f9748----------------------\">mr. waddlesplash<\/a><\/noindex><\/p>\n<p><\/p>\n<blockquote><p>En Linux, ellos (<em>directorios y conjuntos de aplicaciones, nota del traductor<\/em>) probablemente son la soluci\u00f3n t\u00e9cnica para problemas sist\u00e9micos. En Haiku preferimos simplemente resolver los problemas del sistema.<\/p><\/blockquote>\n<p><\/p>\n<h2 id=\"a-vy-chto-dumaete\">\u00bfY t\u00fa qu\u00e9 piensas?<\/h2>\n<p><\/p>\n<h3 id=\"prezhde-chem-otvetite\">Antes de responder...<\/h3>\n<p><\/p>\n<p>Espera, hagamos una r\u00e1pida verificaci\u00f3n de la realidad: de hecho, <em>los directorios de aplicaciones<\/em> ya son parte de Haiku:<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"\u00bfAlgo m\u00e1s: paquetes de aplicaciones Haiku?\" src=\"\/wp-content\/uploads\/2019\/09\/b9d3c8ce130d256bc645bd2ee28905a7.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<em>Los directorios de aplicaciones ya existen en Haiku, pero a\u00fan no se soportan en el administrador de archivos.<\/em><\/p>\n<p><\/p>\n<p>Simplemente no reciben tanto apoyo como, por ejemplo, en el Finder de Macintosh. \u00bfQu\u00e9 tal si el cat\u00e1logo de QtCreator tuviera en la esquina superior izquierda el nombre y el \u00edcono de \u00abQtCreator\u00bb, que inicie la aplicaci\u00f3n con un doble clic?<\/p>\n<p><\/p>\n<p>Un poco antes ya <noindex><a rel=\"nofollow\" href=\"https:\/\/medium.com\/@probonopd\/historic-software-can-your-package-manager-handle-this-86563a46f8b5\">pregunt\u00e9<\/a><\/noindex>:<\/p>\n<p><\/p>\n<blockquote><p>\u00bfEst\u00e1s seguro de que podr\u00e1s ejecutar tus aplicaciones de hace diez a\u00f1os hoy, cuando todas las tiendas de aplicaciones y repositorios de distribuciones se olviden de ellas y de sus dependencias? \u00bfEst\u00e1s seguro de que a\u00fan podr\u00e1s acceder a tu trabajo actual en el futuro?<\/p><\/blockquote>\n<p>\u00bfYa hay una respuesta de Haiku, o los directorios y conjuntos de aplicaciones podr\u00e1n ayudar aqu\u00ed? Creo que s\u00ed.<\/p>\n<p><\/p>\n<p>Seg\u00fan el sr. waddlesplash:<\/p>\n<p><\/p>\n<blockquote><p>S\u00ed, tenemos una respuesta a la pregunta: simplemente vamos a respaldar estas aplicaciones el tiempo que sea necesario, hasta que alguien pueda leer sus formatos de archivos correctamente o proporcionar funcionalidad uno a uno. Nuestro esfuerzo por hacer funcionar las aplicaciones BeOS R5 en Haiku es una prueba directa de esto...<\/p><\/blockquote>\n<p>\u00a1Exactamente!<\/p>\n<p><\/p>\n<h3 id=\"kakoy-plan-deystviy-dolzhna-prinyat-haiku\">\u00bfQu\u00e9 plan de acci\u00f3n deber\u00eda adoptar Haiku?<\/h3>\n<p><\/p>\n<p>Puedo imaginar una coexistencia pac\u00edfica de hpkg, directorios y im\u00e1genes de aplicaciones:<\/p>\n<p><\/p>\n<ul>\n<li>El software del sistema utiliza <code>.hpkg<\/code><\/li>\n<li>Para el software m\u00e1s utilizado (especialmente el que necesita lanzar versiones flotantes) se utiliza <code>.hpkg<\/code> (aproximadamente el 80% de todos los casos)<\/li>\n<li>Algunos, instalados a trav\u00e9s de <code>.hpkg<\/code>, las aplicaciones se beneficiar\u00e1n al migrar a una infraestructura con cat\u00e1logos de aplicaciones (por ejemplo, QtCreator): se distribuir\u00e1n en forma de <code>.hpkg<\/code>, como siempre.<\/li>\n<\/ul>\n<p><\/p>\n<p>mr. waddlesplash dice:<\/p>\n<p><\/p>\n<blockquote><p>Si todo lo que se necesita es visualizar aplicaciones en <code>\/system\/apps<\/code>, en su lugar, los cat\u00e1logos en Deskbar deben hacerse m\u00e1s manejables para los usuarios, ya que <code>\/system\/apps<\/code> no est\u00e1 dise\u00f1ado para que los usuarios lo abran y lo miren regularmente (a diferencia de MacOS). Para estas situaciones, Haiku tiene otra paradigma, pero esta opci\u00f3n es, en teor\u00eda, aceptable.<\/p><\/blockquote>\n<p><\/p>\n<ul>\n<li>Haiku obtendr\u00e1 la infraestructura para ejecutar im\u00e1genes de aplicaciones, as\u00ed como compilaciones nocturnas, continuas y de prueba de software, y en casos donde el usuario desee \u00abcongelarlo en el tiempo\u00bb para software privado e interno, y otros usos especiales (alrededor del 20% del total). Estas im\u00e1genes contienen los archivos necesarios para ejecutar la aplicaci\u00f3n. <code>.hpkg<\/code>, montados por el sistema, y despu\u00e9s de que la aplicaci\u00f3n finaliza, se desmontan. (Quiz\u00e1s, el gestor de archivos podr\u00eda colocar archivos <code>.hpkg<\/code> en im\u00e1genes de aplicaciones, autom\u00e1ticamente o bajo demanda del usuario \u2014 como cuando arrastras una aplicaci\u00f3n a un directorio de red o a un disco externo. \u00a1Es simplemente una canci\u00f3n! Mejor dicho, una poes\u00eda \u2014 un haiku.) Por otro lado, el usuario puede desear instalar el contenido de la imagen como archivos<code>.hpkg<\/code>, los cuales se actualizar\u00e1n y manejar\u00e1n de la misma manera que si hubieran sido instalados a trav\u00e9s de HaikuDepot\u2026 Necesitamos hacer una lluvia de ideas).<\/li>\n<\/ul>\n<p><\/p>\n<p>Cita de mr. waddlesplash:<\/p>\n<p><\/p>\n<blockquote><p>Ejecutar aplicaciones desde discos externos o directorios de red podr\u00eda ser potencialmente \u00fatil. Y agregar la capacidad de configurar m\u00e1s \u00abzonas\u00bb para pkgman definitivamente ser\u00eda una buena funci\u00f3n.<\/p><\/blockquote>\n<p>Un sistema as\u00ed aprovechar\u00eda hpkg, cat\u00e1logos e im\u00e1genes de aplicaciones. Son buenos por separado, pero juntos ser\u00e1n invencibles.<\/p>\n<p><\/p>\n<h2 id=\"zaklyuchenie\">Conclusi\u00f3n<\/h2>\n<p><\/p>\n<p>Para Haiku hay infraestructura que proporciona una interfaz de usuario simple y refinada para PCs, y va mucho m\u00e1s all\u00e1 de lo que normalmente se ofrece para PCs en Linux. El sistema de paquetes <code>.hpkg<\/code> \u2014 uno de estos ejemplos, pero las dem\u00e1s partes del sistema tambi\u00e9n est\u00e1n impregnadas de sofisticaci\u00f3n. Sin embargo, el cat\u00e1logo correcto y el soporte de im\u00e1genes de aplicaciones se beneficiar\u00edan de Haiku. La mejor manera de hacerlo es discutirlo con personas que conocen Haiku, su filosof\u00eda y arquitectura mucho mejor que yo. Despu\u00e9s de todo, solo he estado usando Haiku un poco m\u00e1s de una semana. No obstante, creo que esta nueva perspectiva ser\u00e1 \u00fatil para los dise\u00f1adores, desarrolladores y arquitectos de Haiku. Al menos, estar\u00e9 encantado de ser su \"sparring partner\". Tengo m\u00e1s de 10 a\u00f1os de experiencia pr\u00e1ctica trabajando con cat\u00e1logos y conjuntos de aplicaciones para Linux, y me gustar\u00eda encontrarles un uso en Haiku, cuya concepci\u00f3n, en mi opini\u00f3n, se adapta perfectamente. Las soluciones potenciales que propongo no son las \u00fanicas correctas para los problemas que describ\u00ed, y si el equipo de Haiku decide buscar otras m\u00e1s elegantes, solo tengo que apoyarlas. En principio, ya estoy considerando la idea de c\u00f3mo hacer que el sistema <code>hpkg<\/code> a\u00fan m\u00e1s sorprendente, sin cambiar la forma en que funciona. Resulta que el equipo de Haiku ha estado pensando en los conjuntos de aplicaciones desde hace tiempo al implementar el sistema de gesti\u00f3n de paquetes, pero desgraciadamente, (me parece) la idea se ha vuelto \u00abobsoleta\u00bb. Quiz\u00e1s sea hora de revivirla.<\/p>\n<p><\/p>\n<p>\u00a1Intenta t\u00fa mismo! El proyecto Haiku proporciona im\u00e1genes para descargar desde DVD o USB, formadas <noindex><a rel=\"nofollow\" href=\"https:\/\/download.haiku-os.org\/?source=post_page---------------------------\">diariamente<\/a><\/noindex>.<br \/>\n\u00bfTienes preguntas? Te invitamos a nuestro <noindex><a rel=\"nofollow\" href=\"https:\/\/t.me\/HaikuOS_RU_chat\">canal de telegram en ruso<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p>Revisi\u00f3n de errores: <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/pvs-studio\/blog\/461255\/\">C\u00f3mo dispararte en el pie en C y C++. Recopilaci\u00f3n de recetas de Haiku OS<\/a><\/noindex><\/p>\n<p><\/p>\n<p>Desde <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/users\/Finnix\/\">autor<\/a><\/noindex> traducci\u00f3n: este es el octavo y \u00faltimo art\u00edculo de la serie sobre Haiku.<\/p>\n<p><\/p>\n<p>Lista de art\u00edculos: <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/southbridge\/blog\/461141\/\">Primero<\/a><\/noindex> <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/southbridge\/blog\/461451\/\">Segundo<\/a><\/noindex> <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/southbridge\/blog\/462815\/\">Tercero<\/a><\/noindex> <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/southbridge\/blog\/463105\/\">Cuarto<\/a><\/noindex> <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/southbridge\/blog\/463803\/\">Quinta<\/a><\/noindex> <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/southbridge\/blog\/464819\/\">Sexto<\/a><\/noindex> <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/southbridge\/465241\/\">S\u00e9ptimo<\/a><\/noindex><\/p>\n<p class=\"for_users_only_msg\">Solo los usuarios registrados pueden participar en la encuesta. <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/auth\/login\/\">Inicie sesi\u00f3n<\/a><\/noindex>, por favor.<\/p>\n<h2 class=\"default-block__polling-title\">\u00bfTiene sentido portar el sistema hpkg para Linux?<\/h2>\n<ul class=\"content-list content-list_polling\">\n<li class=\"content-list__item content-list__item_polling\">\n<p>                    S\u00ed<\/p>\n<\/li>\n<li class=\"content-list__item content-list__item_polling\">\n<p>                    No<\/p>\n<\/li>\n<li class=\"content-list__item content-list__item_polling\">\n<p>                    Ya est\u00e1 implementado, escribir\u00e9 en los comentarios<\/p>\n<\/li>\n<\/ul>\n<p>    Votaron 20 usuarios. Se abstuvieron 5 usuarios.<br \/>\n<br \/>Fuente: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/southbridge\/blog\/466301\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>TL;DR: \u043c\u043e\u0436\u0435\u0442 \u043b\u0438 Haiku \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043d\u0430\u0434\u043b\u0435\u0436\u0430\u0449\u0443\u044e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439, \u043a \u043f\u0440\u0438\u043c\u0435\u0440\u0443 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u043e\u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 (\u043a\u0430\u043a .app \u0432 Mac) \u0438\/\u0438\u043b\u0438 \u043e\u0431\u0440\u0430\u0437\u043e\u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 (Linux AppImage)? \u041c\u043d\u0435 \u043a\u0430\u0436\u0435\u0442\u0441\u044f, \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0434\u043e\u0441\u0442\u043e\u0439\u043d\u044b\u043c \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435\u043c, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u0432\u043d\u0435\u0434\u0440\u0438\u0442\u044c \u043f\u0440\u043e\u0449\u0435, \u0447\u0435\u043c \u0432 \u0434\u0440\u0443\u0433\u0438\u0445 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0431\u043e\u043b\u044c\u0448\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0443\u0436\u0435 \u0435\u0441\u0442\u044c. \u041d\u0435\u0434\u0435\u043b\u044e \u043d\u0430\u0437\u0430\u0434 \u044f \u043e\u0442\u043a\u0440\u044b\u043b \u0434\u043b\u044f \u0441\u0435\u0431\u044f Haiku, \u043d\u0435\u043e\u0436\u0438\u0434\u0430\u043d\u043d\u043e \u0445\u043e\u0440\u043e\u0448\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443. \u041d\u0443 \u0430 \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":28393,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-37830","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"TL;DR: \u043c\u043e\u0436\u0435\u0442 \u043b\u0438 Haiku.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/koe-chto-eshhe-pakety-prilozhenij-haiku\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"es_ES\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041a\u043e\u0435-\u0447\u0442\u043e \u0435\u0449\u0435: \u043f\u0430\u043a\u0435\u0442\u044b \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 Haiku? | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"TL;DR: \u043c\u043e\u0436\u0435\u0442 \u043b\u0438 Haiku.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/koe-chto-eshhe-pakety-prilozhenij-haiku\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:20:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:20:00+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Algo m\u00e1s: \u00bfpaquetes de aplicaciones Haiku? | ProHoster","description":"TL;DR: \u00bfpuede Haiku?","canonical_url":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/koe-chto-eshhe-pakety-prilozhenij-haiku","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"es_ES","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041a\u043e\u0435-\u0447\u0442\u043e \u0435\u0449\u0435: \u043f\u0430\u043a\u0435\u0442\u044b \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 Haiku? | ProHoster","og:description":"TL;DR: \u043c\u043e\u0436\u0435\u0442 \u043b\u0438 Haiku.","og:url":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/koe-chto-eshhe-pakety-prilozhenij-haiku","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:20:00+00:00","article:modified_time":"2019-10-31T19:20:00+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"37830","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-23 19:26:35","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:20:22","updated":"2026-01-23 19:26:35","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/37830","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/comments?post=37830"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/37830\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media\/28393"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media?parent=37830"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/categories?post=37830"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/tags?post=37830"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}