Π‘ΠΎΡΡΠΎΡΠ»ΡΡ ΡΠ΅Π»ΠΈΠ· ΠΏΠ°ΠΊΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠ° GNU Guix 1.3 ΠΈ ΠΏΠΎΡΡΡΠΎΠ΅Π½Π½ΠΎΠ³ΠΎ Π½Π° Π΅Π³ΠΎ ΠΎΡΠ½ΠΎΠ²Π΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π° GNU/Linux. ΠΠ»Ρ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½Ρ ΠΎΠ±ΡΠ°Π·Ρ Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π½Π° USB Flash (610 ΠΠ) ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π² ΡΠΈΡΡΠ΅ΠΌΠ°Ρ Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ (972 ΠΠ). ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ ΡΠ°Π±ΠΎΡΠ° Π½Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°Ρ i686, x86_64, Power9, armv7 ΠΈ aarch64.
ΠΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ² Π΄ΠΎΠΏΡΡΠΊΠ°Π΅Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΡ ΠΊΠ°ΠΊ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΎΠ±ΠΎΡΠΎΠ±Π»Π΅Π½Π½ΠΎΠΉ ΠΠ‘ Π² ΡΠΈΡΡΠ΅ΠΌΠ°Ρ Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ, Π² ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°Ρ ΠΈ Π½Π° ΠΎΠ±ΡΡΠ½ΠΎΠΌ ΠΎΠ±ΠΎΡΡΠ΄ΠΎΠ²Π°Π½ΠΈΠΈ, ΡΠ°ΠΊ ΠΈ Π·Π°ΠΏΡΡΠΊ Π² ΡΠΆΠ΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΡ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π°Ρ GNU/Linux, Π²ΡΡΡΡΠΏΠ°Ρ Π² ΡΠΎΠ»ΠΈ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Π΄Π»Ρ ΡΠ°Π·Π²ΡΡΡΡΠ²Π°Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΡΡ ΡΠ°ΠΊΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΊΠ°ΠΊ ΡΡΡΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ, ΠΏΠΎΠ²ΡΠΎΡΡΠ΅ΠΌΡΠ΅ ΡΠ±ΠΎΡΠΊΠΈ, ΡΠ°Π±ΠΎΡΠ° Π±Π΅Π· root, ΠΎΡΠΊΠ°Ρ Π½Π° ΠΏΡΠΎΡΠ»ΡΠ΅ Π²Π΅ΡΡΠΈΠΈ Π² ΡΠ»ΡΡΠ°Π΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌ, ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠ΅ΠΉ, ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠΉ (ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠΎΡΠ½ΠΎΠΉ ΠΊΠΎΠΏΠΈΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ Π½Π° Π΄ΡΡΠ³ΠΈΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°Ρ ) ΠΈ Ρ.ΠΏ.
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ Π½ΠΎΠ²ΡΠ΅ΡΡΠ²Π°:
- Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π½Π°ΡΠ°Π»ΡΠ½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ POWER9 (powerpc64le-linux).
- ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π΄Π΅ΠΊΠ»Π°ΡΠ°ΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΆΠΈΠΌΠ° ΡΠ°Π·Π²ΡΡΡΡΠ²Π°Π½ΠΈΡ, ΠΏΡΠΈ ΠΊΠΎΡΠΎΡΠΎΠΌ Π²ΠΌΠ΅ΡΡΠΎ ΡΠ΅ΡΠΈΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ «guix install» ΠΈ «guix remove» Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΠΎΠ΄Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° «guix package —manifest=manifest.scm» Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ Π² ΡΠ°ΠΉΠ»Π΅ manifest.scm Π²ΡΠ΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ. ΠΠ»Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΠΌΠ°Π½ΠΈΡΠ΅ΡΡΠ° Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΈΠΌΠ΅ΡΡΠ΅Π³ΠΎΡΡ ΠΏΡΠΎΡΠΈΠ»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅ «guix package» ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Ρ ΠΎΠΏΡΠΈΠΈ «—export-manifest» ΠΈ «—export-channels».
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΡ ΡΡΠ°Π½ΡΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² «—with-latest», ΠΏΠΎΠ»Π΅Π·Π½Π°Ρ Π΄Π»Ρ ΡΠ΅Ρ , ΠΊΡΠΎ Ρ ΠΎΡΠ΅Ρ ΠΈΠΌΠ΅ΡΡ ΡΠ°ΠΌΡΠ΅ ΡΠ²Π΅ΠΆΠΈΠ΅ Π²Π΅ΡΡΠΈΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΅ΡΡ Π½Π΅ ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ Π³ΠΎΡΠΎΠ²ΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ Π΄Π»Ρ Guix. Π’Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΡ «—with-patch» Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ ΡΠ΅ΡΠΈΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² c ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠ°ΡΡΠ° ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ ΠΈΠ· Π½ΠΈΡ .
- Π ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ «guix» ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π²ΡΠ²ΠΎΠ΄ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΉ Ρ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π·Π°ΠΌΠ΅Π½ Π² ΡΠ»ΡΡΠ°Π΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΊΠΈ ΠΈΠ»ΠΈ Π½Π°Π»ΠΈΡΠΈΡ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΡ ΠΏΠΎΠ΄ΠΊΠΎΠΌΠ°Π½Π΄. $ guix package —export-manifests guix package: error: export-manifests: unrecognized option hint: Did you mean `export-manifest’?
- Π «guix refresh» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ Ρ Ρ ΠΎΡΡΠΈΠ½Π³Π° SourceForge, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠ΅ΠΆΠΈΠΌ generic-html Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Ρ Π΄ΠΎΠΌΠ°ΡΠ½Π΅ΠΉ ΡΡΡΠ°Π½ΠΈΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° Π½ΠΎΠ²Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° «guix import go» Π΄Π»Ρ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΈΠΌΠΏΠΎΡΡΠ° ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Π½Π° ΡΠ·ΡΠΊΠ΅ Go Ρ ΡΡΡΡΠΎΠΌ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ. Π ΠΊΠΎΠΌΠ°Π½Π΄Π΅ «guix import opam» ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Coq. Π «guix import crate» ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ ΡΡΡΡ ΡΠ΅ΠΌΠ°Π½ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π²Π΅ΡΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠΈ. Π£Π΄Π°Π»Π΅Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° «guix import nix».
- ΠΡΠΎΠ²Π΅Π΄Π΅Π½Π° ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΎΠ±ΡΠ°Π½Π½ΡΡ Π±ΠΈΠ½Π°ΡΠ½ΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² (substitute) ΠΈ ΡΡΠΊΠΎΡΠ΅Π½Π° ΡΠ°Π±ΠΎΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Ρ «guix system init».
- Π ΠΊΠΎΠΌΠ°Π½Π΄Ρ «guix environment» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΡ «—profile».
- Π guix-daemon Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΡ «—discover» Π΄Π»Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ΅ΡΠΈ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ², ΠΎΡΠ΄Π°ΡΡΠΈΡ ΡΠΎΠ±ΡΠ°Π½Π½ΡΠ΅ Π±ΠΈΠ½Π°ΡΠ½ΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ (substitute), ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Ρ mDNS/DNS-SD. ΠΠ»Ρ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ Π°Π½ΠΎΠ½ΡΠΎΠ² Ρ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ² Π² ΠΊΠΎΠΌΠ°Π½Π΄Ρ «guix publish» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΡ «—advertise».
- Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° Zstd Π΄Π»Ρ ΡΠΆΠ°ΡΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ².
- Π ΡΠ΅ΠΆΠΈΠΌΠ΅ «—verbosity=1» ΠΏΡΠ΅ΠΊΡΠ°ΡΡΠ½ Π²ΡΠ²ΠΎΠ΄ Π·Π°Π³ΡΡΠΆΠ°Π΅ΠΌΡΡ URL.
- ΠΠΌΠ΅ΡΡΠΎ ΠΏΠΎΠ΄ΠΊΠΎΠΌΠ°Π½Π΄ «disk-image» ΠΈ «vm-image» ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Π° ΠΎΠ±ΡΠ°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° «guix system image».
- Π ΠΎΠ±ΡΠ°Π·Π΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π° Π΄Π»Ρ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° SPICE.
- Π ΡΡΡΠ°Π½ΠΎΠ²ΠΎΡΠ½ΡΠΉ ΡΠΊΡΠΈΠΏΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΡΠ΅ΠΆΠΈΠΌ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΈΠ½ΡΡΠ°Π»Π»ΡΡΠΈΠΈ.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½ ΡΠ΅ΡΠ²ΠΈΡ lvm-device-mapping Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠ° ΡΠΎΠΌΠΎΠ² LVM (Linux Logical Volumne Manager).
- ΠΠΎΠ±Π°Π²Π»Π΅Π½ ΡΠ΅ΠΆΠΈΠΌ «guix system image -t rock64-raw» Π΄Π»Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΠΎΠ±ΡΠ°Π·ΠΎΠ² Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π° Π΄Π»Ρ ΠΏΠ»Π°Ρ Rock64.
- Π initrd ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π²ΠΊΠ»ΡΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° bcachefs.
- Π ΡΠ΅ΡΠ²Π΅ΡΠ΅ ΠΏΠ΅ΡΠ°ΡΠΈ CUPS ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π²ΠΊΠ»ΡΡΡΠ½ ΡΠ΅ΡΠ²ΠΈΡ «brlaser» Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΏΡΠΈΠ½ΡΠ΅ΡΠΎΠ² Brother.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π½ΠΎΠ²ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ ΡΠ΅ΡΠ²ΠΈΡΡ agate, cuirass-remote-worker, ipfs, keepalived, laminar, radicale, syncthing, transmission-daemon, wireguard, xorg-server.
- ΠΠ±Π½ΠΎΠ²Π»Π΅Π½Ρ Π²Π΅ΡΡΠΈΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ Π² 3100 ΠΏΠ°ΠΊΠ΅ΡΠ°Ρ , Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ 2009 Π½ΠΎΠ²ΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ². Π ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Ρ Π²Π΅ΡΡΠΈΠΈ gcc 10.3.0, glibc 2.31, GNOME 3.34.5, gnupg 2.2.27, go 1.14.15, guile 3.0.5, icecat 78.10.0-guix0-preview1, icedtea 3.7.0, inkscape 1.0.2, julia 1.5.3, libreoffice 6.4.7.2, linux-libre 5.11.15, ocaml 4.11.1, octave 6.2.0, openjdk 14.0, python 3.8.2, racket 8.0, rust 1.51.0, r 4.0.4, sbcl 2.1.3, Xfce 4.16.0 ΠΈ xorg-server 1.20.10.
- Π£ΡΡΡΠ°Π½Π΅Π½Π° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡ CVE-2021-27851 Π² guix-daemon, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ°Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠΎΠ΄Π½ΡΡΡ ΡΠ²ΠΎΠΈ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅. ΠΡΠΎΠ±Π»Π΅ΠΌΠ° ΡΠ²ΡΠ·Π°Π½Π° Ρ ΡΠ΅ΠΌ, ΡΡΠΎ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ «guix build» ΡΠ±ΠΎΡΠΎΡΠ½ΡΠΉ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ ΠΎΡΡΠ°Π²Π°Π»ΡΡ Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π²ΡΠ΅ΠΌ Π½Π° Π·Π°ΠΏΠΈΡΡ ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠ³ ΡΠΎΠ·Π΄Π°ΡΡ ΠΆΡΡΡΠΊΡΡ ΡΡΡΠ»ΠΊΡ Π½Π° ΡΠ°ΠΉΠ», ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°ΡΠΈΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ root ΠΈ ΡΠ°Π·ΠΌΠ΅ΡΡΠ½Π½ΡΠΉ Π²Π½Π΅ ΡΠ±ΠΎΡΠΎΡΠ½ΠΎΠ³ΠΎ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, «/etc/shadow». ΠΡΠ»ΠΈ ΠΏΡΠΈ ΡΠ±ΠΎΡΠΊΠ΅ Π±ΡΠ»Π° ΡΠΊΠ°Π·Π°Π½Π° ΠΎΠΏΡΠΈΡ «—keep-failed» ΡΠΎ Π² ΡΠ»ΡΡΠ°Π΅ ΡΠ±ΠΎΡ guix-daemon ΠΌΠ΅Π½ΡΠ» Π²Π»Π°Π΄Π΅Π»ΡΡΠ° Π΄Π»Ρ Π²ΡΠ΅Π³ΠΎ ΡΠ±ΠΎΡΠΎΡΠ½ΠΎΠ³ΠΎ Π΄Π΅ΡΠ΅Π²Π° Π½Π° ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, Π²ΠΊΠ»ΡΡΠ°Ρ ΠΆΡΡΡΠΊΠΈΠ΅ ΡΡΡΠ»ΠΊΠΈ.
ΠΠ°ΠΏΠΎΠΌΠ½ΠΈΠΌ, ΡΡΠΎ ΠΏΠ°ΠΊΠ΅ΡΠ½ΡΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ GNU Guix ΠΎΡΠ½ΠΎΠ²Π°Π½ Π½Π° Π½Π°ΡΠ°Π±ΠΎΡΠΊΠ°Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ° Nix ΠΈ ΠΊΡΠΎΠΌΠ΅ ΡΠΈΠΏΠΈΡΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠ°ΠΌΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠ°ΠΊΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, ΠΊΠ°ΠΊ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΎΠ½Π½ΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΡΠΊΠ°ΡΠ° ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ, ΡΠ°Π±ΠΎΡΠ° Π±Π΅Π· ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΉ ΡΡΠΏΠ΅ΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΡΠΈΠ²ΡΠ·Π°Π½Π½ΡΡ ΠΊ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ ΠΏΡΠΎΡΠΈΠ»Π΅ΠΉ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Π²Π΅ΡΡΠΈΠΉ ΠΎΠ΄Π½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΡΡΠ΅Π΄ΡΡΠ²Π° ΡΠ±ΠΎΡΠΊΠΈ ΠΌΡΡΠΎΡΠ° (Π²ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π½Π΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Π²Π΅ΡΡΠΈΠΉ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ²). ΠΠ»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² ΡΠ±ΠΎΡΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΏΡΠ°Π²ΠΈΠ» ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Π²ΡΡΠΎΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΠΉ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠ½ΠΎ-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ·ΡΠΊ ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Guile Scheme API, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π²ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΏΠΎ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠ°ΠΌΠΈ Π½Π° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠΌ ΡΠ·ΡΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Scheme.
ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Π½ΡΡ Π΄Π»Ρ ΠΏΠ°ΠΊΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠ° Nix ΠΈ ΡΠ°Π·ΠΌΠ΅ΡΡΠ½Π½ΡΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Nixpkgs. ΠΡΠΎΠΌΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Ρ ΠΏΠ°ΠΊΠ΅ΡΠ°ΠΌΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠ΅ΠΉ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΡΠΈ ΡΠ±ΠΎΡΠΊΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠ° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π·Π°Π³ΡΡΠΆΠ°ΡΡΡΡ ΠΈ ΡΠΎΠ±ΠΈΡΠ°ΡΡΡΡ Π²ΡΠ΅ ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ Π½ΠΈΠΌ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ. ΠΠΎΠ·ΠΌΠΎΠΆΠ½Π° ΠΊΠ°ΠΊ Π·Π°Π³ΡΡΠ·ΠΊΠ° Π³ΠΎΡΠΎΠ²ΡΡ Π±ΠΈΠ½Π°ΡΠ½ΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΠΈΠ· ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, ΡΠ°ΠΊ ΠΈ ΡΠ±ΠΎΡΠΊΠ° ΠΈΠ· ΠΈΡΡ ΠΎΠ΄Π½ΡΡ ΡΠ΅ΠΊΡΡΠΎΠ² ΡΠΎ Π²ΡΠ΅ΠΌΠΈ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡΠΌΠΈ. Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ ΡΡΠ΅Π΄ΡΡΠ²Π° Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠ°Π½ΠΈΡ Π²Π΅ΡΡΠΈΠΉ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ Π² Π°ΠΊΡΡΠ°Π»ΡΠ½ΠΎΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ ΡΠ΅ΡΠ΅Π· ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ ΠΈΠ· Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ.
Π‘Π±ΠΎΡΠΎΡΠ½ΠΎΠ΅ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΡΠΎΡΠΌΠΈΡΡΠ΅ΡΡΡ Π² Π²ΠΈΠ΄Π΅ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ΅Π³ΠΎ Π²ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°ΡΡ Π½Π°Π±ΠΎΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², ΡΠΏΠΎΡΠΎΠ±Π½ΡΠΉ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π±Π΅Π· ΠΎΠ³Π»ΡΠ΄ΠΊΠΈ Π½Π° ΡΠΎΡΡΠ°Π² Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π°, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Guix ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π½Π°Π΄ΡΡΡΠΎΠΉΠΊΠΈ. ΠΠ΅ΠΆΠ΄Ρ ΠΏΠ°ΠΊΠ΅ΡΠ°ΠΌΠΈ Guix Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ, ΠΏΡΠΈ ΡΡΠΎΠΌ Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° Π½Π°Π»ΠΈΡΠΈΡ ΡΠΆΠ΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Ρ ΡΡΠ΅ΠΉ-ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠ² Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ². ΠΠ°ΠΊΠ΅ΡΡ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡΡΡ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ΅ Π΄Π΅ΡΠ΅Π²ΠΎ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΉ ΠΈΠ»ΠΈ ΠΏΠΎΠ΄Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ Π΅Π³ΠΎ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎΠ΅ ΡΠΎΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΏΠ°ΠΊΠ΅ΡΠ½ΡΠΌΠΈ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠ°ΠΌΠΈ ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΡΠΈΡΠΎΠΊΠΎΠ³ΠΎ ΡΠΏΠ΅ΠΊΡΡΠ° ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²ΠΎΠ². ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠ°ΠΊΠ΅Ρ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ ΠΊΠ°ΠΊ /nix/store/452a5978f3b0b426064a2b64a0c6f41-firefox-88.0.0/, Π³Π΄Π΅ «452a59…» ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠΌ ΠΏΠ°ΠΊΠ΅ΡΠ°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΌ Π΄Π»Ρ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ.
ΠΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ² Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΈ ΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Ρ ΡΠ΄ΡΠΎΠΌ GNU Linux-Libre, ΠΎΡΠΈΡΠ΅Π½Π½ΡΠΌ ΠΎΡ Π½Π΅ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΡΡ
ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π±ΠΈΠ½Π°ΡΠ½ΡΡ
ΠΏΡΠΎΡΠΈΠ²ΠΎΠΊ. ΠΠ»Ρ ΡΠ±ΠΎΡΠΊΠΈ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ GCC 9.3. Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠΈΡΡΠ΅ΠΌΡ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ GNU Shepherd (Π±ΡΠ²ΡΠΈΠΉ dmd), ΡΠ°Π·Π²ΠΈΠ²Π°Π΅ΠΌΡΠΉ ΠΊΠ°ΠΊ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π° SysV-init Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ. Π£ΠΏΡΠ°Π²Π»ΡΡΡΠΈΠΉ Π΄Π΅ΠΌΠΎΠ½ ΠΈ ΡΡΠΈΠ»ΠΈΡΡ Shepherd Π½Π°ΠΏΠΈΡΠ°Π½Ρ Π½Π° ΡΠ·ΡΠΊΠ΅ Guile (ΠΎΠ΄Π½Π° ΠΈΠ· ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΉ ΡΠ·ΡΠΊΠ° Scheme), ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΈ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² Π·Π°ΠΏΡΡΠΊΠ° ΡΠ΅ΡΠ²ΠΈΡΠΎΠ². ΠΠ°Π·ΠΎΠ²ΡΠΉ ΠΎΠ±ΡΠ°Π· ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠ°Π±ΠΎΡΡ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅, Π½ΠΎ Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½ΠΎ 17243 Π³ΠΎΡΠΎΠ²ΡΡ
ΠΏΠ°ΠΊΠ΅ΡΠ°, ΡΡΠ΅Π΄ΠΈ ΠΊΠΎΡΠΎΡΡΡ
ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΡΠ΅ΠΊΠ° Π½Π° Π±Π°Π·Π΅ X.Org, ΠΎΠΊΠΎΠ½Π½ΡΠ΅ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΡ dwm ΠΈ ratpoison, ΡΠ°Π±ΠΎΡΠΈΠΉ ΡΡΠΎΠ» Xfce, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π±ΠΎΡΠΊΠ° Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ
ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru