{"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\/it\/blog\/novosti-interneta\/proekt-redox-os-predstavil-paketnyj-menedzher-pkgar-napisannyj-na-yazyke-rust","title":{"rendered":"Il progetto Redox OS ha presentato il gestore di pacchetti pkgar, scritto nel linguaggio Rust","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Sviluppatori del sistema operativo <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\">scritto<\/a><\/noindex> utilizzando il linguaggio Rust e il concetto di microkernel, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.redox-os.org\/news\/pkgar-introduction\/\">hanno presentato<\/a><\/noindex> nuovo gestore di pacchetti <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/redox-os\/pkgar\">pkgar<\/a><\/noindex>. Nel progetto si sta sviluppando un nuovo formato di pacchetti, una libreria con funzioni di gestione dei pacchetti e un toolkit da riga di comando per creare e estrarre una raccolta di file verificati crittograficamente. Il codice di pkgar \u00e8 scritto in Rust e <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/redox-os\/pkgar\">distribuito<\/a><\/noindex> sotto licenza MIT.<\/p>\n<p>Il formato pkgar non pretende di essere universale ed \u00e8 ottimizzato tenendo conto delle specifiche del sistema operativo Redox OS. Il gestore di pacchetti supporta la verifica delle fonti tramite firma digitale e il controllo dell'integrit\u00e0. Le somme di controllo vengono calcolate utilizzando la funzione hash <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52173\">blake3<\/a><\/noindex>. La funzionalit\u00e0 di verifica associata a pkgar pu\u00f2 essere accessibile senza la necessit\u00e0 di salvare effettivamente l'archivio del pacchetto, manipolando solo la parte dell'intestazione. In particolare, un pacchetto \u00e8 formato da un file di intestazione (.pkgar_head) e un file di dati (.pkgar_data). Un pacchetto completo correttamente firmato (.pkgar) pu\u00f2 essere ottenuto semplicemente concatenando il file di intestazione al file di dati (&#171;cat example.pkgar_head example.pkgar_data &gt; example.pkgar&#187;). <\/p>\n<p>Il file di intestazione contiene checksum separati per l'intestazione e le strutture con parametri dal file di dati, oltre a una firma digitale per la verifica del pacchetto. Il file di dati include un elenco sequenziale di tutti i file e le directory forniti nel pacchetto. Prima di ogni elemento dati \u00e8 presente una struttura con metadati che includono il checksum per i dati stessi, la dimensione, i permessi, il percorso relativo del file installato e l'offset dei parametri del prossimo elemento dati. Se durante l'aggiornamento alcuni file non sono stati modificati e il checksum corrisponde, vengono saltati e non caricati.<\/p>\n<p>\u00c8 possibile controllare l'integrit\u00e0 della sorgente ottenendo solo il file di intestazione, e la correttezza del file dati selezionato - caricando solo le strutture con i parametri di quel file e assicurandosi che corrispondano al checksum certificato nel file di intestazione. I dati stessi possono essere verificati dopo il loro caricamento, utilizzando il checksum dalla struttura con i parametri che precede i dati.<\/p>\n<p>I pacchetti sono progettati per consentire una creazione ripetibile, il che significa che la creazione di un pacchetto per una specifica directory porta sempre alla generazione di un pacchetto identico. Dopo l'installazione, nel sistema vengono conservati solo i metadati necessari per ricostruire il pacchetto dai dati installati (la composizione del pacchetto, i checksum, i percorsi e i diritti di accesso sono inclusi nei metadati).<\/p>\n<p>Obiettivi principali di pkgar:<\/p>\n<ul>\n<li class=\"l\"> Atomicit\u00e0 \u2014 gli aggiornamenti vengono applicati automaticamente quando possibile.\n<li class=\"l\"> Risparmio di traffico \u2014 i dati vengono trasmessi sulla rete solo quando cambia l'hash (durante l'aggiornamento vengono scaricati solo i file modificati).\n<li class=\"l\"> Alte prestazioni, vengono utilizzati algoritmi crittografici veloci (blake3 supporta il parallel processing dei dati durante il calcolo dell'hash). Se i dati del repository non sono stati precedentemente memorizzati nella cache, l'hash per i dati da scaricare pu\u00f2 essere calcolato durante il download.\n<li class=\"l\"> Minimalismo \u2014 a differenza di altri formati, pkgar include solo i metadati necessari per estrarre il pacchetto.\n<li class=\"l\"> Indipendenza dalla directory di installazione \u2014 il pacchetto pu\u00f2 essere installato in qualsiasi directory, da qualsiasi utente (l'utente deve avere i diritti di scrittura nella directory selezionata).\n<li class=\"l\"> Sicurezza \u2014 i pacchetti vengono sempre verificati crittograficamente e la verifica avviene prima di eseguire le operazioni effettive con il pacchetto (prima viene scaricato l'intestazione e se la firma digitale \u00e8 corretta, i dati vengono scaricati in una directory temporanea e spostati nella directory di destinazione dopo la verifica).\n<\/ul>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>Fonte: <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-novosti-interneta"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.0.1 - 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\/it\/blog\/novosti-interneta\/proekt-redox-os-predstavil-paketnyj-menedzher-pkgar-napisannyj-na-yazyke-rust\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.0.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"it_IT\" \/>\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\/it\/blog\/novosti-interneta\/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\udd47Il progetto Redox OS ha presentato il gestore di pacchetti pkgar, scritto in Rust | ProHoster","description":"Gli sviluppatori del sistema operativo Redox,","canonical_url":"https:\/\/prohoster.info\/it\/blog\/novosti-interneta\/proekt-redox-os-predstavil-paketnyj-menedzher-pkgar-napisannyj-na-yazyke-rust","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"it_IT","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\/it\/blog\/novosti-interneta\/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\/it\/wp-json\/wp\/v2\/posts\/74341","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/comments?post=74341"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/74341\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media?parent=74341"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/categories?post=74341"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/tags?post=74341"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}