{"id":74341,"date":"2020-03-16T20:42:18","date_gmt":"2020-03-16T17:42:18","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/proekt-redox-os-predstavil-paketnyj-menedzher-pkgar-napisannyj-na-yazyke-rust"},"modified":"2020-03-16T20:42:18","modified_gmt":"2020-03-16T17:42:18","slug":"proekt-redox-os-predstavil-paketnyj-menedzher-pkgar-napisannyj-na-yazyke-rust","status":"publish","type":"post","link":"https:\/\/prohoster.info\/fr\/blog\/news\/proekt-redox-os-predstavil-paketnyj-menedzher-pkgar-napisannyj-na-yazyke-rust","title":{"rendered":"Le projet Redox OS a pr\u00e9sent\u00e9 le gestionnaire de paquets pkgar, \u00e9crit en Rust","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>D\u00e9veloppeurs du syst\u00e8me d'exploitation <noindex><a rel=\"nofollow\" href=\"https:\/\/www.redox-os.org\/\">Redox<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=51956\">\u00e9crit<\/a><\/noindex> en utilisant le langage Rust et le concept de micro-noyau, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.redox-os.org\/news\/pkgar-introduction\/\">a \u00e9t\u00e9 pr\u00e9sent\u00e9e<\/a><\/noindex> un nouveau gestionnaire de paquets <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/redox-os\/pkgar\">pkgar<\/a><\/noindex>. Dans le cadre du projet, un nouveau format de paquets, une biblioth\u00e8que de fonctions de gestion des paquets et un outil en ligne de commande pour cr\u00e9er et extraire une collection de fichiers v\u00e9rifi\u00e9e cryptographiquement sont d\u00e9velopp\u00e9s. Le code de pkgar est \u00e9crit en Rust et <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/redox-os\/pkgar\">est distribu\u00e9<\/a><\/noindex> sous licence MIT.<\/p>\n<p>Le format pkgar ne revendique pas d'universalit\u00e9 et est optimis\u00e9 pour les sp\u00e9cificit\u00e9s du syst\u00e8me d'exploitation Redox OS. Le gestionnaire de paquets prend en charge la v\u00e9rification de la source par signature num\u00e9rique et le contr\u00f4le d'int\u00e9grit\u00e9. Les sommes de contr\u00f4le sont calcul\u00e9es \u00e0 l'aide de la fonction de hachage <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52173\">blake3<\/a><\/noindex>. La fonctionnalit\u00e9 pkgar li\u00e9e \u00e0 la v\u00e9rification peut \u00eatre accessible sans r\u00e9ellement sauvegarder l'archive du paquet, en manipulant uniquement l'en-t\u00eate. En particulier, le paquet est constitu\u00e9 d'un fichier d'en-t\u00eate (.pkgar_head) et d'un fichier de donn\u00e9es (.pkgar_data). Un paquet complet correctement sign\u00e9 (.pkgar) peut \u00eatre obtenu en joignant simplement le fichier d'en-t\u00eate au fichier de donn\u00e9es (\u00ab cat example.pkgar_head example.pkgar_data &gt; example.pkgar \u00bb). <\/p>\n<p>Le fichier d'en-t\u00eate contient des sommes de contr\u00f4le distinctes pour l'en-t\u00eate et les structures de param\u00e8tres du fichier de donn\u00e9es, ainsi qu'une signature num\u00e9rique pour v\u00e9rifier le paquet. Le fichier de donn\u00e9es inclut une \u00e9num\u00e9ration s\u00e9quentielle de tous les fichiers et r\u00e9pertoires fournis dans le paquet. Avant chaque \u00e9l\u00e9ment de donn\u00e9es, une structure de m\u00e9tadonn\u00e9es est fournie, incluant une somme de contr\u00f4le pour les donn\u00e9es m\u00eame, la taille, les droits d'acc\u00e8s, le chemin relatif du fichier \u00e0 installer et le d\u00e9calage des param\u00e8tres du prochain \u00e9l\u00e9ment de donn\u00e9es. Si, lors d'une mise \u00e0 jour, des fichiers individuels n'ont pas chang\u00e9 et que la somme de contr\u00f4le correspond, ils sont ignor\u00e9s et ne sont pas t\u00e9l\u00e9charg\u00e9s.<\/p>\n<p>L'int\u00e9grit\u00e9 de la source peut \u00eatre v\u00e9rifi\u00e9e en obtenant uniquement le fichier d'en-t\u00eate, tandis que la validit\u00e9 du fichier de donn\u00e9es choisi peut \u00eatre valid\u00e9e en t\u00e9l\u00e9chargeant uniquement les structures avec les param\u00e8tres de ce fichier et en s'assurant qu'ils correspondent \u00e0 la somme de contr\u00f4le, certifi\u00e9e dans le fichier d'en-t\u00eate. Les donn\u00e9es elles-m\u00eames peuvent \u00eatre v\u00e9rifi\u00e9es apr\u00e8s leur t\u00e9l\u00e9chargement, en utilisant la somme de contr\u00f4le de la structure des param\u00e8tres, qui pr\u00e9c\u00e8de les donn\u00e9es.<\/p>\n<p>Les paquets sont initialement con\u00e7us pour permettre des compilations r\u00e9p\u00e9tititives, ce qui signifie que la cr\u00e9ation d'un paquet pour un r\u00e9pertoire sp\u00e9cifique aboutit toujours \u00e0 la formation d'un paquet identique. Apr\u00e8s installation, seules les m\u00e9tadonn\u00e9es sont conserv\u00e9es, suffisantes pour reconstruire le paquet \u00e0 partir des donn\u00e9es install\u00e9es (la composition du paquet, les sommes de contr\u00f4le, les chemins et les droits d'acc\u00e8s sont pr\u00e9sentes dans les m\u00e9tadonn\u00e9es).<\/p>\n<p>Les principaux objectifs de pkgar :<\/p>\n<ul>\n<li class=\"l\"> Atomicit\u00e9 \u2014 les mises \u00e0 jour sont appliqu\u00e9es automatiquement dans la mesure du possible.\n<li class=\"l\"> \u00c9conomie de bande \u2014 les donn\u00e9es ne sont transmises sur le r\u00e9seau qu'en cas de changement de hash (lors d'une mise \u00e0 jour, seuls les fichiers modifi\u00e9s sont t\u00e9l\u00e9charg\u00e9s).\n<li class=\"l\"> Haute performance, utilisant des algorithmes cryptographiques rapides (blake3 prend en charge le traitement parall\u00e8le des donn\u00e9es lors du calcul du hachage). Si les donn\u00e9es du r\u00e9f\u00e9rentiel n'ont pas \u00e9t\u00e9 mises en cache auparavant, le hachage des donn\u00e9es \u00e0 t\u00e9l\u00e9charger peut \u00eatre calcul\u00e9 pendant le t\u00e9l\u00e9chargement.\n<li class=\"l\"> Minimisme \u2014 contrairement \u00e0 d'autres formats, pkgar ne contient que les m\u00e9tadonn\u00e9es n\u00e9cessaires pour extraire le paquet.\n<li class=\"l\"> Ind\u00e9pendance par rapport au r\u00e9pertoire d'installation \u2014 le paquet peut \u00eatre install\u00e9 dans n'importe quel r\u00e9pertoire, par n'importe quel utilisateur (l'utilisateur doit avoir les droits d'\u00e9criture dans le r\u00e9pertoire choisi).\n<li class=\"l\"> S\u00e9curit\u00e9 \u2014 les paquets sont toujours v\u00e9rifi\u00e9s cryptographiquement, et la v\u00e9rification est effectu\u00e9e avant toute op\u00e9ration r\u00e9elle sur le paquet (d'abord, l'en-t\u00eate est t\u00e9l\u00e9charg\u00e9 et si la signature num\u00e9rique est correcte, les donn\u00e9es sont t\u00e9l\u00e9charg\u00e9es dans un r\u00e9pertoire temporaire, puis d\u00e9plac\u00e9es dans le r\u00e9pertoire cible apr\u00e8s v\u00e9rification).\n<\/ul>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>Source : <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52546\">opennet.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b Redox, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u043e\u0439 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u044f\u0437\u044b\u043a\u0430 Rust \u0438 \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u0438 \u043c\u0438\u043a\u0440\u043e\u044f\u0434\u0440\u0430, \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b\u0438 \u043d\u043e\u0432\u044b\u0439 \u043f\u0430\u043a\u0435\u0442\u043d\u044b\u0439 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440 pkgar. \u0412 \u0440\u0430\u043c\u043a\u0430\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043d\u043e\u0432\u044b\u0439 \u0444\u043e\u0440\u043c\u0430\u0442 \u043f\u0430\u043a\u0435\u0442\u043e\u0432, \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 \u0441 \u0444\u0443\u043d\u043a\u0446\u0438\u044f\u043c\u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u0430\u043a\u0435\u0442\u0430\u043c\u0438 \u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438 \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0438 \u0438\u0437\u0432\u043b\u0435\u0447\u0435\u043d\u0438\u044f \u043a\u0440\u0438\u043f\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u0435\u043d\u043d\u043e\u0439 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0438 \u0444\u0430\u0439\u043b\u043e\u0432. \u041a\u043e\u0434 pkgar \u043d\u0430\u043f\u0438\u0441\u0430\u043d \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust \u0438 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u0434 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0435\u0439 MIT. \u0424\u043e\u0440\u043c\u0430\u0442 pkgar \u043d\u0435 [&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-74341","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=\"\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b Redox,\" \/>\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\/fr\/blog\/news\/proekt-redox-os-predstavil-paketnyj-menedzher-pkgar-napisannyj-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=\"fr_FR\" \/>\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\u041f\u0440\u043e\u0435\u043a\u0442 Redox OS \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u043f\u0430\u043a\u0435\u0442\u043d\u044b\u0439 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440 pkgar, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0439 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b Redox,\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/fr\/blog\/news\/proekt-redox-os-predstavil-paketnyj-menedzher-pkgar-napisannyj-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=\"2020-03-16T17:42:18+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-03-16T17:42:18+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\udd47Le projet Redox OS a pr\u00e9sent\u00e9 le gestionnaire de paquets pkgar, \u00e9crit en Rust | ProHoster","description":"Les d\u00e9veloppeurs du syst\u00e8me d'exploitation Redox,","canonical_url":"https:\/\/prohoster.info\/fr\/blog\/news\/proekt-redox-os-predstavil-paketnyj-menedzher-pkgar-napisannyj-na-yazyke-rust","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"fr_FR","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\u041f\u0440\u043e\u0435\u043a\u0442 Redox OS \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u043f\u0430\u043a\u0435\u0442\u043d\u044b\u0439 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440 pkgar, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0439 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust | ProHoster","og:description":"\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b Redox,","og:url":"https:\/\/prohoster.info\/fr\/blog\/news\/proekt-redox-os-predstavil-paketnyj-menedzher-pkgar-napisannyj-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":"2020-03-16T17:42:18+00:00","article:modified_time":"2020-03-16T17:42:18+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"74341","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-02-28 18:16:23","updated":"2022-09-28 06:43:33","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/74341","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/comments?post=74341"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/74341\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media?parent=74341"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/categories?post=74341"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/tags?post=74341"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}