{"id":99396,"date":"2021-03-09T22:22:41","date_gmt":"2021-03-09T20:22:41","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/adaptacziya-debian-dlya-ispolzovaniya-realizaczii-coreutils-na-yazyke-rust"},"modified":"2021-03-09T22:22:41","modified_gmt":"2021-03-09T20:22:41","slug":"adaptacziya-debian-dlya-ispolzovaniya-realizaczii-coreutils-na-yazyke-rust","status":"publish","type":"post","link":"https:\/\/prohoster.info\/es\/blog\/news\/adaptacziya-debian-dlya-ispolzovaniya-realizaczii-coreutils-na-yazyke-rust","title":{"rendered":"Adaptaci\u00f3n de Debian para utilizar la implementaci\u00f3n de coreutils en Rust","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Sylvestre Ledru, conocido por su trabajo en la construcci\u00f3n de Debian GNU\/Linux utilizando el compilador Clang, inform\u00f3 sobre el \u00e9xito de un experimento que implementa un conjunto alternativo de utilidades coreutils reescrito en Rust. El conjunto de coreutils incluye utilidades como sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln y ls. Para la primera fase de integraci\u00f3n del conjunto de coreutils en Rust en Debian, se establecieron los siguientes objetivos:  <\/p>\n<ul>\n<li class=\"l\"> Crear un paquete con una variante alternativa de coreutils en Rust para Debian y Ubuntu.\n<li class=\"l\"> Descargar Debian con escritorio GNOME, utilizando rust-coreutils.\n<li class=\"l\"> Instalar los 1000 paquetes m\u00e1s populares del repositorio.\n<li class=\"l\"> Compilar desde el c\u00f3digo fuente Firefox, LLVM\/Clang y el n\u00facleo de Linux en un entorno con rust-coreutils.  <\/ul>\n<p>Despu\u00e9s de crear m\u00e1s de 100 parches para Rust\/coreutils, se lograron todos los objetivos establecidos. El trabajo cont\u00ednuo incluye implementar utilidades y opciones faltantes, mejorar la calidad y la uniformidad del c\u00f3digo, desarrollar el conjunto de pruebas y resolver fallos que se presentan al ejecutar el conjunto de pruebas de GNU Coreutils (hasta ahora, se ejecutan con \u00e9xito 141 pruebas de 613).    <\/p>\n<p>Al crear el paquete rust-coreutils, se decidi\u00f3 no reemplazar el paquete coreutils, sino permitir su funcionamiento paralelo. Las variantes de utilidades en Rust se instalan en \/usr\/lib\/cargo\/bin\/ y se activan al agregar este directorio a la variable de entorno PATH. La creaci\u00f3n del paquete rust-coreutils se complic\u00f3 debido a la necesidad de cargar en el repositorio todas las dependencias de compilaci\u00f3n, incluyendo Rust y varios peque\u00f1os paquetes crate.    <\/p>\n<p>No hubo problemas significativos al crear la imagen de arranque, pero la adaptaci\u00f3n de los paquetes para el entorno con rust-coreutils requiri\u00f3 mucho trabajo, ya que muchos scripts de post-instalaci\u00f3n invocan utilidades del conjunto coreutils. La mayor parte de los problemas se debieron a la falta de opciones necesarias, por ejemplo, en la utilidad \u00abcp\u00bb faltaban las opciones \u00ab--archive\u00bb y \u00ab--no-dereference\u00bb, en \u00abln\u00bb no hab\u00eda soporte para la opci\u00f3n \u00ab--relative\u00bb, en mktemp \u2014 \u00ab-t\u00bb, en sync \u00ab-fs\u00bb, en install \u2014 \u00ab--owner\u00bb y \u00ab--group\u00bb. Otros problemas surgieron a causa de diferencias en el comportamiento, por ejemplo, la utilidad install no admit\u00eda indicar \/dev\/null como archivo de entrada, en mkdir en lugar de \u00ab--parent\u00bb hab\u00eda una opci\u00f3n \u00ab--parents\u00bb, etc.    <\/p>\n<p>Durante la prueba de la compilaci\u00f3n de grandes bases de c\u00f3digo, no surgieron problemas significativos. En la compilaci\u00f3n de Firefox y LLVM\/Clang se utilizan scripts de Python y CMake, por lo que el reemplazo de coreutils no tuvo impacto. La compilaci\u00f3n del n\u00facleo de Linux transcurri\u00f3 relativamente sin problemas, surgieron solo dos cuestiones: un mensaje de error al utilizar chown con un enlace simb\u00f3lico y la falta de la opci\u00f3n \u00ab-n\u00bb en la utilidad ln.<br \/>\n<br \/>Fuente: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=54728\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0421\u0438\u043b\u044c\u0432\u0435\u0441\u0442\u0440 \u041b\u0435\u0434\u0440\u044e (Sylvestre Ledru), \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0439 \u0441\u0432\u043e\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u043e\u0439 \u043f\u043e \u0441\u0431\u043e\u0440\u043a\u0435 Debian GNU\/Linux \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 Clang, \u0441\u043e\u043e\u0431\u0449\u0438\u043b \u043e\u0431 \u0443\u0441\u043f\u0435\u0448\u043d\u043e\u043c \u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0438 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430 \u043f\u043e \u0437\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u043e\u0432\u0430\u043d\u0438\u044e \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u043e\u0433\u043e \u043d\u0430\u0431\u043e\u0440\u0430 \u0443\u0442\u0438\u043b\u0438\u0442 coreutils, \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u0430\u043d\u043d\u043e\u0433\u043e \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust. \u0412 \u0441\u043e\u0441\u0442\u0430\u0432 coreutils \u0432\u0445\u043e\u0434\u044f\u0442 \u0442\u0430\u043a\u0438\u0435 \u0443\u0442\u0438\u043b\u0438\u0442\u044b, \u043a\u0430\u043a sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln \u0438 ls. \u0414\u043b\u044f \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u044d\u0442\u0430\u043f\u0430 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-99396","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0421\u0438\u043b\u044c\u0432\u0435\u0441\u0442\u0440 \u041b\u0435\u0434\u0440\u044e (Sylvestre Ledru), \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0439 \u0441\u0432\u043e\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u043e\u0439 \u043f\u043e \u0441\u0431\u043e\u0440\u043a\u0435 Debian GNU\/Linux \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 Clang, \u0441\u043e\u043e\u0431\u0449\u0438\u043b \u043e\u0431 \u0443\u0441\u043f\u0435\u0448\u043d\u043e\u043c \u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0438 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430 \u043f\u043e \u0437\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u043e\u0432\u0430\u043d\u0438\u044e \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u043e\u0433\u043e \u043d\u0430\u0431\u043e\u0440\u0430 \u0443\u0442\u0438\u043b\u0438\u0442.\" \/>\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\/news\/adaptacziya-debian-dlya-ispolzovaniya-realizaczii-coreutils-na-yazyke-rust\" \/>\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\u0410\u0434\u0430\u043f\u0442\u0430\u0446\u0438\u044f Debian \u0434\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 coreutils \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0421\u0438\u043b\u044c\u0432\u0435\u0441\u0442\u0440 \u041b\u0435\u0434\u0440\u044e (Sylvestre Ledru), \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0439 \u0441\u0432\u043e\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u043e\u0439 \u043f\u043e \u0441\u0431\u043e\u0440\u043a\u0435 Debian GNU\/Linux \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 Clang, \u0441\u043e\u043e\u0431\u0449\u0438\u043b \u043e\u0431 \u0443\u0441\u043f\u0435\u0448\u043d\u043e\u043c \u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0438 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430 \u043f\u043e \u0437\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u043e\u0432\u0430\u043d\u0438\u044e \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u043e\u0433\u043e \u043d\u0430\u0431\u043e\u0440\u0430 \u0443\u0442\u0438\u043b\u0438\u0442.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/es\/blog\/news\/adaptacziya-debian-dlya-ispolzovaniya-realizaczii-coreutils-na-yazyke-rust\" \/>\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=\"2021-03-09T20:22:41+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2021-03-09T20:22:41+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\udd47Adaptaci\u00f3n de Debian para utilizar la implementaci\u00f3n de coreutils en Rust | ProHoster","description":"Sylvestre Ledru, conocido por su trabajo en la compilaci\u00f3n de Debian GNU\/Linux utilizando el compilador Clang, inform\u00f3 sobre el \u00e9xito de un experimento que involucr\u00f3 un conjunto alternativo de utilidades.","canonical_url":"https:\/\/prohoster.info\/es\/blog\/news\/adaptacziya-debian-dlya-ispolzovaniya-realizaczii-coreutils-na-yazyke-rust","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\u0410\u0434\u0430\u043f\u0442\u0430\u0446\u0438\u044f Debian \u0434\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 coreutils \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust | ProHoster","og:description":"\u0421\u0438\u043b\u044c\u0432\u0435\u0441\u0442\u0440 \u041b\u0435\u0434\u0440\u044e (Sylvestre Ledru), \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0439 \u0441\u0432\u043e\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u043e\u0439 \u043f\u043e \u0441\u0431\u043e\u0440\u043a\u0435 Debian GNU\/Linux \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 Clang, \u0441\u043e\u043e\u0431\u0449\u0438\u043b \u043e\u0431 \u0443\u0441\u043f\u0435\u0448\u043d\u043e\u043c \u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0438 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430 \u043f\u043e \u0437\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u043e\u0432\u0430\u043d\u0438\u044e \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u043e\u0433\u043e \u043d\u0430\u0431\u043e\u0440\u0430 \u0443\u0442\u0438\u043b\u0438\u0442.","og:url":"https:\/\/prohoster.info\/es\/blog\/news\/adaptacziya-debian-dlya-ispolzovaniya-realizaczii-coreutils-na-yazyke-rust","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":"2021-03-09T20:22:41+00:00","article:modified_time":"2021-03-09T20:22:41+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"99396","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":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-09 20:30:02","updated":"2022-09-30 04:09:57","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\/99396","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=99396"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/99396\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media?parent=99396"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/categories?post=99396"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/tags?post=99396"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}