
Systemd-ն ավելացնում է Rust-ի աջակցություն
Systemd 263-ի մշակման մեջ այժմ ներառված է Rust-ի աջակցություն նոր ծայրային բաղադրիչների համար, որոնք կառուցվում են Meson-ով և առանց ստանդարտ գրադարանի, մինչդեռ գոյություն ունեցող C կոդը մնում է տեղում։
Systemd 263-ը ստանում է Rust-ի աջակցություն այն բանից հետո, երբ մշակող Christian Brauner-ը Mastodon-ում հայտարարեց, որ իր նոր հատկությունը միացվել է։ Փոփոխությունը թույլ է տալիս նոր ծայրային բաղադրիչներ գրել Rust-ով, մինչդեռ գոյություն ունեցող C կոդը մնում է տեղում, և ոչինչ, ինչից կախված են այլ բաղադրիչներ, չի գրվում Rust-ով։
Ինչ փոխվեց
Նախորդ ջանքն այժմ բաժանվել է հինգ առանձին մասերի։ Մաս 1-ը պարունակում է keyring-util և voa-util, որոնք նկարագրվում են որպես սերտիֆիկատները միջուկի keyring-ներում գրանցելու օժանդակ գործիքներ։ Մաս 2-ը ավելացնում է Rust-ով գրված աջակցող ծրագրեր։ Մնացած մասերը միացնում են միայն Rust կոդի օգտագործած վերնագրային ֆայլերը, փաթաթում են systemd-keyring-setup-ին անհրաժեշտ libsystemd-shared օժանդակ գործիքները և ավելացնում systemd-keyring-setup։
Կառուցման կանոններ
Rust-ը օգտագործվում է միայն նոր ծայրային բաղադրիչների համար։ Գոյություն ունեցող C կոդը չի տեղափոխվում, և ոչինչ, ինչից կախված են այլ բաղադրիչներ, չի գրվում Rust-ով։ Cargo չկա. ամեն ինչ կառուցվում է Meson-ով, որն արդեն օգտագործում է systemd-ը։ Meson-ը նաև լայնորեն օգտագործվում է GNOME նախագծի և Mesa 3D գրաֆիկական գրադարանի կողմից, գրված է Python-ով և օգտագործում է Ninja։ Ninja-ն նախագծվել է Chrome-ը ավելի արագ կառուցելու համար և նույնպես օգտագործվում է Android-ի համար։ Rust կոդը չպետք է օգտագործի ստանդարտ գրադարանը, պահանջ, որը նկարագրվում է որպես սովորական ներկառուցված Rust ծրագրավորման համար։
Պահանջներ և սահմանափակումներ
Նախագիծը պահանջում է Rust 1.85 կամ ավելի նոր տարբերակ, bindgen 0.71.1 կամ ավելի նոր, և Meson 1.4.0 կամ ավելի նոր։ Rust 1.85-ը թողարկվել է 2025 թվականի փետրվարին, Rust 1.99.1-ը հայտնվել է այս ամսվա սկզբին, bindgen 0.71.1-ը եկել է 2024 թվականի դեկտեմբերից, իսկ Meson 1.4.0-ը՝ 2024 թվականի մարտից։ Սրանք համեմատաբար հին տարբերակներ են, և Meson-ի տարբերակն այն է, որը ներառված է Debian 13-ում։ Brauner-ը նշել է, որ թիմը կցանկանար Rust-ի աջակցություն ունենալ systemd-ի միջուկում, սակայն Rust-ի աջակցությունը դինամիկ գրադարանների համար դեռ ամբողջությամբ պատրաստ չէ։ systemd մոդուլները Rust-ով գրելը առանձին է Rust կոդից systemd կանչելուց, և այնպիսի գործիքներ, ինչպիսին systemd crate-ն է, գոյություն ունեն 2015 թվականից։
Աղբյուրներ: The Register
SiTech — AI-ով հզորացված վեբ մշակում
Ստեղծում ենք արագ ու ժամանակակից կայքեր և AI-ը ներդնում իրական բիզնես գործընթացներում։ Ունե՞ք նախագիծ կամ հարց։ Ուրախ կլինենք օգնել։