Wątek przeniesiony 2023-10-21 07:12 z Inne języki programowania przez hauleth.

System obsługi zależności

0

Hi RUST'afarianie.
Definicję "bezpieczeństwo" można różnie interpretować
Dla mnie istotą bezpieczeństwa jest PC odłączony od .net i zapewnienie user'owi egzystencji i swobody
realizacji zadań. Przechodząc prosto do meritum budując program przy pomocy polecenia cargo build --release
zauważyłem, że menedżer pakietów pobiera sobie z sieci różne pakiety.
Przy odłączonym kabelku system budowania nie ma możliwości zbudowania sobie programu.

Pytania

  1. Czy jest na sieci jakieś repozytorium w którym są wszystkie moduły/biblioteki do danej wersji rust'a.
    Chodzi mi o coś takiego jak w języku Python przy wydaniu polecenie np., python -m pip install PyQt6
    widzę zależności i jakie pakiety są pobierane. Mogę sobie potem wejść na stronę https://pypi.org
    pobrać nazwa_pakietu.whl i bezproblemowo przenieść na izolowaną maszynę i zainstalować moduły rozszerzeń

  2. czy ktoś z rustafarianów korzystał z Panamax https://github.com/panamax-rs/panamax następnie przeniósł na inny komputer i korzystał bezproblemowo?

0

Do tego służy cargo vendor. Oczywiście jeśli chcesz możesz też postawić sobie lokalną kopię repozytorium.

0

cargo-vendor nie jest automatycznie włączany z chwilą instalacji środowiska rust. Trzeba sobie doinstalować, więc wymaga połaczenia z .net
cargo install cargo-vendor <- wymaga połaczenia z .net , więc na dzień dobry odpada, ale żeby nie było, że nie podejmowałem żadnych starań
tworzę nowy projekt cargo new project
w Cargo.toml dodaje wpis z jakiego modułu chce korzystać np. rand = "0.8.5"
zapisuje i wydaje polecenie cargo vendor <- wymaga połaczenia z .net jeżeli nie będzie połączenia dostaje ostrzeżenie warning: spurious network error jeżeli jest robi Updating crates.io index i pobiera sobie moduły: Downloaded: getrandom v0.2.10 , ppv-lite86 v0.2.17 , rand_core v0.6.4 , wasi v0.11.0+wasi-snapshot-preview1 , rand_chacha v0.3.1 , rand v0.8.5 . Downloaded 6 crates
Dopiero teraz mogę sobie zbudować projekt offline.
Wadą tego podejścia jest jeszcze to, że pobierane są tylko pakiety/moduły które są korelacyjne z danym projektem.

Czyniłem cuda w/z katalg-u/-iem .cargo

Zostaje mi wyeksplorować Panamax i zbudowanie własnego repozytorium, kiedy to zawiedzie,
odłożyć rust'a, aż dojrzeje lub zardzewieje

thx

1 użytkowników online, w tym zalogowanych: 0, gości: 1