curl https://sh.rustup.rs -sSf | sh
To jako někdo vážně spouští příkazy takového charakteru?
Z hlediska bezpecnosti mozna. Ja to nedelam, nebot:
Co to ma delat? I bez zleho umyslu tak skripty pomoci sed-u upravuji bashrc a ja se neprihlasim. Nesnasim upravy meho environmentu nebo rozbaleni kdovi ceho primo do meho $HOME.
Jak to pouziji? Treba cist manual? Kde ho najdu?
Jak to odinstaluji, kdyz to nadela bordel? Pri instalaci skriptem je odpoved vetsinou "nijak".
Jak to budu debugovat? Z gitu mam commit id, muzu zkusit jine. Pri instalaci z gitu vzdy koukam na posledni zmeny - nedavne velke zmeny znamenaji, ze chci starsi tag. Nakonec vezt utok prez github a nebyt dopaden je nasobne tezsi nez zmenit jeden skript pro jednu IP.
Balickovaci systemy a package maintaneri tyhle otazky maji vetsinou vyreseny.
Tyhle prasárny se obvykle používají kolem webových aplikací. Tam se jednak předpokládá, že bude mít vlastní kontejner, tj. ten curl | bash příkaz proběhne uvnitř disposable kontejneru a s tím většina těch problémů odpadá. A jednak je tahle inkantace určená pro použití v docker compose nebo podobných instalačních skriptech. Audituje se až celý kontejner, nebo se jen monitoruje jeho provoz.
Vzhledem k tomu, že rustup umožňuje mít najednou více kanálů (verzí Rustu) najednou a více cílových architektur, To asi ti balíčkáři nřeší. Nehledě na to, že já na svém Ubuntu LTS fakt nechci řešit, že se balíčkáři rozhodli, že si novou verzi (zatím?) nezasloužím.
Takže buďto si jednou jedinkrát nainstaluješ tohle (jako každý normální uživatel Rustu) a pak řešíš jenom "rustup update" nebo budeš hrozně zásadový, ale výsledek nic moc. Na 18.04 máš verzi 1.47 a na 21.04 míš 1.51. S rustupem máš zcela spolehlivě hned 1.53.
No a ten shell script si holt, když se bojíš, normálně stáhneš a případně zmodifikuješ. Pak už to nic nedělá, jenom si to stahuje verze do vlastní adresářové struktury.