Sylvestre Ledru, ΠΈΠ·Π²Π΅ΡΡΠ΅Π½ Ρ ΡΠ°Π±ΠΎΡΠ°ΡΠ° ΡΠΈ ΠΏΠΎ ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ΡΠΎ Π½Π° Debian GNU/Linux Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΎΡΠ° Clang, ΡΡΠΎΠ±ΡΠΈ Π·Π° ΡΡΠΏΠ΅ΡΠ΅Π½ Π΅ΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½Ρ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Π°Π»ΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π΅Π½ Π½Π°Π±ΠΎΡ ΠΎΡ ΠΏΠΎΠΌΠΎΡΠ½ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ, coreutils, ΠΏΡΠ΅Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° Π΅Π·ΠΈΠΊΠ° Rust. Coreutils Π²ΠΊΠ»ΡΡΠ²Π° ΠΏΠΎΠΌΠΎΡΠ½ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ ΠΊΠ°ΡΠΎ sort, cat, chmod, chown, chroot, cp, date, dd, echo, ΠΈΠΌΠ΅ Π½Π° Ρ ΠΎΡΡ, id, ln ΠΈ ls. ΠΠ° ΠΏΡΡΠ²ΠΈΡ Π΅ΡΠ°ΠΏ ΠΎΡ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠ°Π½Π΅ΡΠΎ Π² Debian Π½Π° Rust Π²Π΅ΡΡΠΈΡΡΠ° Π½Π° coreutils Π±ΡΡ Π° ΠΏΠΎΡΡΠ°Π²Π΅Π½ΠΈ ΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ ΡΠ΅Π»ΠΈ:
- ΠΠ°ΠΊΠ΅ΡΠΈΡΠ°ΠΉΡΠ΅ Rust Π°Π»ΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π° Π½Π° coreutils Π·Π° Debian ΠΈ Ubuntu.
- Π‘ΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° Debian Ρ ΡΠ°Π±ΠΎΡΠ½ΠΈΡ ΠΏΠ»ΠΎΡ Π½Π° GNOME Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° rust-coreutils.
- ΠΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½Π΅ Π½Π° 1000-ΡΠ΅ Π½Π°ΠΉ-ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΈ ΠΏΠ°ΠΊΠ΅ΡΠ° ΠΎΡ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ΡΠΎ.
- Π‘ΡΠ·Π΄Π°ΠΉΡΠ΅ ΠΎΡ ΠΈΠ·ΡΠΎΡΠ½ΠΈΡΠΈ Π½Π° ΡΠ΄ΡΠΎΡΠΎ Π½Π° Firefox, LLVM/Clang ΠΈ Linux Π² ΡΡΠ΅Π΄Π° Ρ rust-coreutils.
Π‘Π»Π΅Π΄ ΠΊΠ°ΡΠΎ ΡΡΠ·Π΄Π°Π΄ΠΎΡ ΠΌΠ΅ ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΡ 100 ΠΊΠΎΡΠ΅ΠΊΡΠΈΠΈ Π·Π° Rust/coreutils, ΡΡΠΏΡΡ ΠΌΠ΅ ΡΡΠΏΠ΅ΡΠ½ΠΎ Π΄Π° ΠΏΠΎΡΡΠΈΠ³Π½Π΅ΠΌ Π²ΡΠΈΡΠΊΠΈ ΠΏΠ»Π°Π½ΠΈΡΠ°Π½ΠΈ ΡΠ΅Π»ΠΈ. Π’Π΅ΠΊΡΡΠ°ΡΠ° ΡΠ°Π±ΠΎΡΠ° Π²ΠΊΠ»ΡΡΠ²Π° Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ Π½Π° Π»ΠΈΠΏΡΠ²Π°ΡΠΈ ΠΏΠΎΠΌΠΎΡΠ½ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ ΠΈ ΠΎΠΏΡΠΈΠΈ, ΠΏΠΎΠ΄ΠΎΠ±ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎΡΠΎ ΠΈ Π΅Π΄Π½ΠΎΠΎΠ±ΡΠ°Π·ΠΈΠ΅ΡΠΎ Π½Π° ΠΊΠΎΠ΄Π°, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π°Π½Π΅ Π½Π° ΡΠ΅ΡΡΠΎΠ²ΠΈΡ ΠΏΠ°ΠΊΠ΅Ρ ΠΈ Π΅Π»ΠΈΠΌΠΈΠ½ΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΠΈΠ²ΠΎΠ²Π΅, ΠΊΠΎΠΈΡΠΎ Π²ΡΠ·Π½ΠΈΠΊΠ²Π°Ρ ΠΏΡΠΈ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° ΡΠ΅ΡΡΠΎΠ²ΠΈΡ ΠΏΠ°ΠΊΠ΅Ρ ΠΎΡ GNU Coreutils (141 ΡΠ΅ΡΡΠ° ΠΎΡ 613 ΡΠ΅ ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π°Ρ ΡΡΠΏΠ΅ΡΠ½ΠΎ Π΄ΠΎΡΠ΅Π³Π° ).
ΠΡΠΈ ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠ° rust-coreutils Π±Π΅ΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΎ Π΄Π° Π½Π΅ ΡΠ΅ Π·Π°ΠΌΠ΅Π½Ρ ΠΏΠ°ΠΊΠ΅ΡΡΡ coreutils, Π° Π΄Π° ΡΠ΅ ΠΎΡΠΈΠ³ΡΡΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΏΠ°ΡΠ°Π»Π΅Π»Π½Π° ΡΠ°Π±ΠΎΡΠ°. ΠΠΏΡΠΈΠΈΡΠ΅ Π·Π° ΠΏΠΎΠΌΠΎΡΠ½ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ Π½Π° Π΅Π·ΠΈΠΊΠ° Rust ΡΠ° ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½ΠΈ Π² /usr/lib/cargo/bin/ ΠΈ ΡΠ΅ Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Ρ ΡΡΠ΅Π· Π΄ΠΎΠ±Π°Π²ΡΠ½Π΅ Π½Π° ΡΠ°Π·ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ ΠΊΡΠΌ ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π°ΡΠ° Π½Π° ΡΡΠ΅Π΄Π°ΡΠ° PATH. Π‘ΡΠ·Π΄Π°Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠ° rust-coreutils Π±Π΅ΡΠ΅ ΡΡΠ»ΠΎΠΆΠ½Π΅Π½ΠΎ ΠΎΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡΠ° Π΄Π° ΡΠ΅ ΠΈΠ·ΡΠ΅Π³Π»ΡΡ Π²ΡΠΈΡΠΊΠΈ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡΡΠ° Π² Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ΡΠΎ, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ Rust ΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΌΠ°Π»ΠΊΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΈ Ρ ΠΊΠ°ΡΠΈ.
Π‘ΡΠ·Π΄Π°Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π·Π° Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ Π½Π΅ Π±Π΅ΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌ, Π½ΠΎ Π°Π΄Π°ΠΏΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅ Π·Π° ΡΡΠ΅Π΄Π° Ρ rust-coreutils ΠΈΠ·ΠΈΡΠΊΠ²Π°ΡΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°Π±ΠΎΡΠ°, ΡΡΠΉ ΠΊΠ°ΡΠΎ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠΊΡΠΈΠΏΡΠΎΠ²Π΅ ΡΠ»Π΅Π΄ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½Π΅ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Ρ ΠΏΠΎΠΌΠΎΡΠ½ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ ΠΎΡ Π½Π°Π±ΠΎΡΠ° coreutils. ΠΠ°ΠΉ-Π³ΠΎΠ»Π΅ΠΌΠΈΡΡ Π±ΡΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Π±ΡΡ Π° ΠΏΡΠΈΡΠΈΠ½Π΅Π½ΠΈ ΠΎΡ Π»ΠΈΠΏΡΠ°ΡΠ° Π½Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΈΡΠ΅ ΠΎΠΏΡΠΈΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎΠΌΠΎΡΠ½Π°ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ° βcpβ Π½ΡΠΌΠ°ΡΠ΅ ΠΎΠΏΡΠΈΠΈΡΠ΅ β--archiveβ ΠΈ β--no-dereferenceβ, βlnβ Π½Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°ΡΠ΅ β- ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»Π½Π°β, mktemp Π½Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°ΡΠ΅ β-tβ, ΠΏΡΠΈ ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·ΠΈΡΠ°Π½Π΅ β-fsβ, ΠΏΡΠΈ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½Π΅ β β--ownerβ ΠΈ β-groupβ. ΠΡΡΠ³ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Π²ΡΠ·Π½ΠΈΠΊΠ½Π°Ρ Π° ΠΏΠΎΡΠ°Π΄ΠΈ ΡΠ°Π·Π»ΠΈΠΊΠΈ Π² ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΡΠΎ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΠΎΠΌΠΎΡΠ½Π°ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ° Π·Π° ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½Π΅ Π½Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°ΡΠ΅ ΡΠΊΠ°Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° /dev/null ΠΊΠ°ΡΠΎ Π²Ρ ΠΎΠ΄Π΅Π½ ΡΠ°ΠΉΠ», mkdir ΠΈΠΌΠ°ΡΠ΅ ΠΎΠΏΡΠΈΡΡΠ° β--parentsβ Π²ΠΌΠ΅ΡΡΠΎ β-parentβ ΠΈ Ρ.Π½.
ΠΡΠΈ ΡΠ΅ΡΡΠ²Π°Π½Π΅ Π½Π° ΡΠ³Π»ΠΎΠ±ΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° Π³ΠΎΠ»Π΅ΠΌΠΈ ΠΊΠΎΠ΄ΠΎΠ²ΠΈ Π±Π°Π·ΠΈ Π½Π΅ Π²ΡΠ·Π½ΠΈΠΊΠ½Π°Ρ
Π° Π³ΠΎΠ»Π΅ΠΌΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ. ΠΡΠΈ ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ΡΠΎ Π½Π° Firefox ΠΈ LLVM/Clang ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ python ΡΠΊΡΠΈΠΏΡΠΎΠ²Π΅ ΠΈ cmake, ΡΠ°ΠΊΠ° ΡΠ΅ ΠΏΠΎΠ΄ΠΌΡΠ½Π°ΡΠ° Π½Π° coreutils Π½Π΅ Π³ΠΈ Π΅ Π·Π°ΡΠ΅Π³Π½Π°Π»Π°. ΠΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ΄ΡΠΎΡΠΎ Π½Π° Linux ΠΏΡΠ΅ΠΌΠΈΠ½Π° ΡΡΠ°Π²Π½ΠΈΡΠ΅Π»Π½ΠΎ Π³Π»Π°Π΄ΠΊΠΎ, ΠΊΠ°ΡΠΎ ΡΠ΅ ΠΏΠΎΡΠ²ΠΈΡ
Π° ΡΠ°ΠΌΠΎ Π΄Π²Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°: ΠΈΠ·Π²Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° Π³ΡΠ΅ΡΠΊΠ° ΠΏΡΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° chown ΡΡΡ ΡΠΈΠΌΠ²ΠΎΠ»Π½Π° Π²ΡΡΠ·ΠΊΠ° ΠΈ Π»ΠΈΠΏΡΠ°ΡΠ° Π½Π° ΠΎΠΏΡΠΈΡ β-nβ Π² ΠΏΠΎΠΌΠΎΡΠ½Π°ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ° ln.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru