πΎ Archived View for tilde.team βΊ ~rami βΊ silverblue.gmi captured on 2024-08-18 at 17:35:23. Gemini links have been rewritten to link to archived content
β¬ οΈ Previous capture (2023-12-28)
-=-=-=-=-=-=-
Χ¨ΧΧ
SUBJECT: Fedora Silverblue (Immutable OS): rpm-ostree, sandboxes, portals, containers, flatpaks
AUTHOR: Rami Rosenfeld
DATE: 03/03/23; upd. 29/04/2023
TIME: 21.00
LANG: ru, en
LICENSE: GNU FDL 1.3
TAGS: gnu, gnome, software, opensource, linux, system, man, manual, bash, privacy, security, rhel, centos, mate, xfce, lxde, spin, de, systemd, systemctl, selinux, firewalld, dnf, rpm, ostree, flatpak, siverblue
ΠΡΠΈΠ·Π½Π°ΡΡΡ, Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π»ΡΠ±ΠΈΠ» ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ½ΡΠ΅ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΈ ΡΡΠ°ΡΠ°Π»ΡΡ Π²ΡΡΡΠ΅ΡΠΊΠΈ ΠΈΠ·Π±Π΅Π³Π°ΡΡ ΠΈΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ; Π² ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, ΡΡΡΠ΅ΠΌΠΈΠ»ΡΡ ΡΠ΄Π°Π»ΡΡΡ ΠΈΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ ΠΈΠ½ΡΡΠ°Π»Π»ΡΡΠΈΠΈ ΠΠ‘. Π ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΠΉΡΠ°Ρ, Ρ ΠΎΡΠΎΡΠ΅Π½ΡΠΊΠΎ ΠΈΠ·ΡΡΠΈΠ² ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ, ΡΠΎΠΎΠ±ΡΠ°Π·ΠΈΠ» - Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ Ρ Π±ΡΠ» Π΄Π°Π»Π΅ΠΊ ΠΎΡ ΠΈΡΡΠΈΠ½Ρ.
ΠΠ°ΠΊ Π·Π½Π°ΡΡ ΠΌΠΎΠΈ ΠΏΠΎΡΡΠΎΡΠ½Π½ΡΠ΅ ΡΠΈΡΠ°ΡΠ΅Π»ΠΈ, Π»ΡΠ±ΡΡ ΠΠ‘ ΠΈ Π»ΡΠ±ΠΎΠ΅ ΠΠ Ρ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Ρ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Ρ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ, ΠΏΡΠΈΠ²Π°ΡΠ½ΠΎΡΡΠΈ ΠΈ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅Π³ΠΎ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΠΈΡ ΡΡΠΎΠ²Π½Π΅ΠΉ. ΠΠΎΡΡΠΎΠΌΡ, ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠ½ΠΎ ΡΠ°Π·ΠΎΠ±ΡΠ°Π²ΡΠΈΡΡ Ρ Π½ΠΎΠ²ΡΠΌΠΈ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π°ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ Red Hat (ΠΈ ΡΡΡ ΠΆΠ΅ ΡΠΎΡΡΠ°Π²ΠΈΠ² ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΠ΅ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ, ΠΊΠΎΡΠΎΡΠΎΠ΅ Ρ ΠΈ ΠΏΡΠ±Π»ΠΈΠΊΡΡ ΡΠ΅Π³ΠΎΠ΄Π½Ρ), Π²Π°Ρ ΠΏΠΎΠΊΠΎΡΠ½ΡΠΉ ΡΠ»ΡΠ³Π° ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΏΡΠΎΠ½ΠΈΠΊΡΡ :) ΠΈΡ Π·Π°ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΠΈΠ΄Π΅ΡΠΌΠΈ.
ΠΠ°ΠΊ ΠΈ Π²ΡΠ΅Π³Π΄Π°, ΠΌΠΎΡ ΠΎΡΠ½ΠΎΠ²Π½Π°Ρ Π·Π°Π΄Π°ΡΠ° Π½Π° ΡΠ΅Π³ΠΎΠ΄Π½Ρ - ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡ Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΌΠΈ ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½ΡΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ, ΠΏΠΎΡΡΠΎΠΌΡ Ρ Π½Π΅ Π±ΡΠ΄Ρ ΡΠ°ΡΠΏΠΈΡΡΠ²Π°ΡΡ Π²ΡΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° ΡΡΠΎΠ³ΠΎ Π²ΠΈΠ΄Π° immutable ΠΠ‘ - Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ Π²ΠΊΡΠ°ΡΡΠ΅ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ ΡΠ°Π·Π΄Π΅Π» "ΠΠΎΠ½ΡΠ΅ΠΏΡΠΈΡ" (ΡΠΌ. Π½ΠΈΠΆΠ΅), ΠΏΠΎΠ±ΡΠΆΠ΄Π°Ρ Π²Π°Ρ Π² ΡΠ»ΡΡΠ°Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ ΠΈΠ·ΡΡΠΈΡΡ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ... ΠΠΎΡΠ½ΡΡΡ Π»ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΠΎΠ³ΠΎ Π·Π°Π±Π»ΡΠΆΠ΄Π΅Π½ΠΈΡ, Π±ΡΠ΄ΡΠΎ Flatpak Π² ΡΠΎΠ²ΠΎΠΊΡΠΏΠ½ΠΎΡΡΠΈ Ρ OSTree - ΡΡΠΎ "ΡΠΈΠΏΠΈΡΠ½ΡΠΉ Windows-way"... ΠΡΠ½ΡΠ΄Ρ! ΠΡΠ»ΠΈ Π²Ρ ΠΏΡΠΈΠΏΠΎΠΌΠ½ΠΈΡΠ΅, ΠΊΠ°ΠΊ Ρ Π°ΠΎΡΠΈΡΠ½ΠΎ ΡΠ°ΡΠΏΠ°ΠΊΠΎΠ²ΡΠ²Π°Π΅ΡΡΡ ΠΈΠ· .exe ΡΠ°ΠΉΠ»Π° Π΅Π³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅, Π° ΡΠ°ΠΊΠΆΠ΅ Π² ΠΊΠ°ΠΊΠΈΠ΅ ΡΠ°Π·Π½ΠΎΠΎΠ±ΡΠ°Π·Π½ΡΠ΅ ΠΌΠ΅ΡΡΠ° ΠΎΠ½ΠΎ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ (Π² ΠΏΡΠΎΡΠΈΠ²ΠΎΠ²Π΅Ρ ΡΡΠΎΠΌΡ - ΡΠΌ. ΡΡ Π΅ΠΌΡ Π½ΠΈΠΆΠ΅), ΡΠΎ ΡΠΎΠ³Π»Π°ΡΠΈΡΠ΅ΡΡ ΡΠΎ ΠΌΠ½ΠΎΡ, ΡΡΠΎ Π΄Π°Π½Π½ΠΎΠ΅ ΡΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΏΡΠΈΡΡΡΠ΅, ΡΠΊΠΎΡΠ΅Π΅, ΠΌΠ°Π»ΠΎΠ»Π΅ΡΠ½Π΅ΠΌΡ "ΡΠΊΡΠΏΠ΅ΡΡΡ Ρ ΠΎΠΏΠ΅Π½Π½Π΅ΡΠ°", Π½Π΅ΠΆΠ΅Π»ΠΈ Π²Π·ΡΠΎΡΠ»ΠΎΠΌΡ Π·Π΄ΡΠ°Π²ΠΎΠΌΡ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΡ. ΠΠΎΠ»Π΅Π΅ ΡΠΎΠ³ΠΎ, Π² Windows ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎ Π½Π΅ ΠΈΠ΄Π΅Ρ ΡΠ΅ΡΡ ΠΎ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈΠ·Π°ΡΠΈΠΈ (Ρ.Π΅. ΠΎ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΌ ΡΠΌΠ΅Π½ΡΡΠ΅Π½ΠΈΠΈ ΠΏΡΠ°Π², Π΄Π΅Π»Π΅Π³ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΏΠ°ΠΊΠ΅ΡΡ/ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΡΠ²Π΅Π΄Π΅Π½ΠΈΠΈ ΠΊ Π½ΡΠ»Ρ ΠΈΡ Π²ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΡΡΠ²Π° Π² Π±Π°Π·ΠΎΠ²ΡΡ ΡΠ°ΡΡΡ ΠΠ‘)... Π½Ρ Π° ΡΠΆ Π΅ΡΠ»ΠΈ ΠΌΡ Π·Π°Π²Π΅Π΄Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠ½ΡΠΉ ΠΈ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΠΉ ΡΠ°Π·Π³ΠΎΠ²ΠΎΡ ΠΎ "Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ" Π² ΡΡΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ - ΡΠΎΠ³Π΄Π° ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΡ ΠΌΠΎΠΉ Π΄Π°Π²Π½ΠΈΠΉ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π» "Π§ΡΠΎ Π½Π΅ ΡΠ°ΠΊ Ρ Windows?"β¦ or Windows: Whatβs wrong? (ΡΠΌ. ΡΠ°Π·Π΄Π΅Π» Essays)...
ΠΠΈΠ½ΠΎΠ²Π°Ρ, Ρ ΠΎΡΠ²Π»Π΅ΠΊΡΡ! ΠΡΠ°ΠΊ, ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ ΠΊ Π³Π»Π°Π²Π½ΠΎΠΌΡ.
Π‘Π₯ΠΠΠ: Fedora Silverblue - Π£ΡΠΎΠ²Π½ΠΈ, ΡΠ»ΠΎΠΈ ΠΈ ΡΠ²ΡΠ·ΠΈ Π² ΠΠ‘
1. ΠΠ°Π·ΠΎΠ²Π°Ρ ΡΠ°ΡΡΡ ΠΠ‘ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΠΠΠΠΠΠΠ―ΠΠΠΠ. ΠΠ½Π° Π·Π°Π΄Π΅ΠΉΡΡΠ²ΡΠ΅ΡΡΡ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ "Π’ΠΠΠ¬ΠΠ ΠΠΠ― Π§Π’ΠΠΠΠ―".
2. ΠΡΠΈ Π°ΠΏΠ³ΡΠ΅ΠΉΠ΄Π΅ ΠΠ‘ Π±Π°Π·ΠΎΠ²ΡΠΉ ΠΎΠ±ΡΠ°Π· (Ρ.Π΅. Π½ΠΈΠΆΠ½ΠΈΠΉ ΡΠ»ΠΎΠΉ) ΠΈΠ½ΠΊΡΠ΅ΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅ΡΡΡ (ΡΠΌ. Π½ΠΈΠΆΠ΅ "rpm-ostree"). ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΠΠ° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅, Π΄Π°Π½Π½ΠΎΠ΅ ΡΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΠ΅ Π½Π΅ ΡΠΎΠ²ΡΠ΅ΠΌ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎ; Π½ΠΎ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΡΡΠΎΡ Π²ΠΎΠΏΡΠΎΡ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΡΡΡ Π² ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ.
3. ΠΡΠ½ΠΎΠ²Π½ΠΎΠΉ (ΠΈ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΠΌΡΠΉ!) ΡΠΏΠΎΡΠΎΠ± ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π² ΠΠ‘ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ flatpak-ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² - ΡΠ°ΠΌΠΎΠ΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π½Π΅ Π²Π½ΠΎΡΡΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Π±Π°Π·ΠΎΠ²ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ.
4. Flatpak-ΠΏΠ°ΠΊΠ΅ΡΡ Π·Π°ΠΏΡΡΠΊΠ°ΡΡΡΡ Π² "ΠΏΠ΅ΡΠΎΡΠ½ΠΈΡΠ°Ρ " Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΡΠΌΠΈ ΠΏΡΠ°Π²Π°ΠΌΠΈ Π΄ΠΎΡΡΡΠΏΠ° (ΡΠΌ. Π½ΠΈΠΆΠ΅ "sandboxes").
5. ΠΡΠ°Π²Π° Π΄ΠΎΡΡΡΠΏΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΊ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌ ΡΡΠ½ΠΊΡΠΈΡΠΌ ΠΠ‘ Π΄Π΅Π»Π΅Π³ΠΈΡΡΡΡΡΡ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ "ΠΏΠΎΡΡΠ°Π»ΠΎΠ²" (ΡΠΌ. Π½ΠΈΠΆΠ΅ "portals").
6. Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΎΠ±ΡΡΠ½ΡΡ rpm-ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΠ²Π΅ΡΡ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΉ "ΡΠ»ΠΎΠΉ", Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΈ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΡΡ Π²ΡΠ΅ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ (ΡΠΌ. Π½ΠΈΠΆΠ΅ "package layering"). Π‘Π°ΠΌΠ° ΠΠ‘ ΠΎΡΡΠ°Π΅ΡΡΡ Π² Π½Π΅ΠΏΡΠΈΠΊΠΎΡΠ½ΠΎΠ²Π΅Π½Π½ΠΎΡΡΠΈ; Π΅ΡΠ΅ ΡΠΎΡΠ½Π΅Π΅ - ΠΏΠ΅ΡΠ΅ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Ρ.Π½. "ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΎΠ±ΡΠ°Π·".
7. ΠΠ»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΠ ΠΈΠΌΠ΅ΡΡΡΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Toolbox ΠΈ Modularity (ΡΠΌ. Π½ΠΈΠΆΠ΅), Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ°ΡΡΠΈΡΡΡΡΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» ΠΠ‘.
1) flatpak-ΠΏΠ°ΠΊΠ΅ΡΡ - ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ, Π½Π΅ Π²Π½ΠΎΡΡΡΠΈΠΉ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Π±Π°Π·ΠΎΠ²ΡΡ ΠΠ‘, Π½Π΅ ΡΠΎΠ·Π΄Π°ΡΡΠΈΠΉ Π½ΠΎΠ²ΡΠΉ "ΡΠ»ΠΎΠΉ" ΠΈ Π½Π΅ ΡΡΠ΅Π±ΡΡΡΠΈΠΉ ΠΏΠ΅ΡΠ΅ΡΠ±ΠΎΡΠΊΠΈ ΠΏΡΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡΡ ;
2) toolbox - ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ dnf ΠΈ rpm-ΠΏΠ°ΠΊΠ΅ΡΠ°ΠΌΠΈ. ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅! Toolbox ΠΠ ΡΠ²Π»ΡΠ΅ΡΡΡ "ΠΈΡΡΠΈΠ½Π½ΡΠΌ" ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠΌ!
3) rpm-ostree - Π½Π΅ ΡΡΠΎΠ»Ρ ΠΆΠ΅Π»Π°ΡΠ΅Π»Π΅Π½, Ρ.ΠΊ. ΠΏΠ»ΠΎΠ΄ΠΈΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΡΡΠ½ΠΎΡΡΠΈ: Ρ.Π½. Π½ΠΎΠ²ΡΠΉ "ΡΠ»ΠΎΠΉ" Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΠ.
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΡΠΌ.:
Π Fedora Silverblue ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Π½ΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ ΡΠ°Π·Π΄Π΅Π»ΠΎΠ². ΠΠ°ΠΊ ΡΠΊΠ°Π·Π°Π½ΠΎ Π² ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅, Π΅Π΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΠΈ Π½Π΅ ΡΠΎΠ²Π΅ΡΡΡΡ ΡΠ°ΠΊΠΆΠ΅ ΡΡΡΠ°Π½Π²Π»ΠΈΠ²Π°ΡΡ ΠΠ‘ Π½Π° ΠΌΠ°ΡΠΈΠ½Ρ Ρ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠΎΠΉ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΠ°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ ΡΠ°Π·Π΄Π΅Π»ΠΎΠ² Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ - Ρ ΡΡΠ΅ΡΠΎΠΌ Π½ΡΠ°Π½ΡΠΎΠ², ΠΎ ΠΊΠΎΡΠΎΡΡΡ Π±ΡΠ΄Π΅Ρ ΡΠΊΠ°Π·Π°Π½ΠΎ Π½ΠΈΠΆΠ΅.
Π ΡΡΠ½ΠΎΠ΅ ΡΠ°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ BTRFS, XFS, Π° ΡΠ°ΠΊΠΆΠ΅ LVM ΠΈΠ»ΠΈ ΡΠ°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ Π½Π° ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ°Π·Π΄Π΅Π»Ρ (Π½Ρ ΠΈ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ ΠΆΠ΅, ΠΈΡ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΠ΅).
Π ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΏΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅Π½Ρ Π’ΠΠΠ¬ΠΠ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ°Π·Π΄Π΅Π»Ρ (ΠΈ ΠΈΡ ΠΏΠΎΠ΄ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΈ). ΠΡΠΎ ΠΆΠ΅ΡΡΠΊΠ°Ρ ΡΡΡΡΠΊΡΡΡΠ°, ΠΊΠΎΡΠΎΡΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ±Π»ΡΠ΄Π°ΡΡ:
/boot
/
/var
ΠΠΎΠ΄ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΈ /var:
/var/home (symlink Ρ /home Π½Π° /var/home)
/var/log
/var/containers
ΠΠ°ΠΆΠ½ΠΎ: ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ ΠΈΠ½ΡΡΠ°Π»Π»ΡΡΠΎΡ Anaconda Π½Π΅ Π·Π½Π°Π΅Ρ ΠΎ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡΡ , ΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΠΈΡΡ Π½ΠΎΡΠΈΡΠ΅Π»Ρ Π² Π»ΡΠ±ΠΎΠΉ ΠΏΡΠΈΠ²ΡΡΠ½ΠΎΠΉ ΡΡ Π΅ΠΌΠ΅, Π½ΠΎ ΡΡΠΎ ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ ΠΊ Π½Π΅ΡΠ°Π±ΠΎΡΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΠΈ ΠΠ‘.
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΡΡΠ½Π°Ρ ΡΠ°Π·ΠΌΠ΅ΡΠΊΠ° ΡΠ°Π·Π΄Π΅Π»ΠΎΠ² ΡΠ²ΠΎΠ΄ΠΈΡΡΡ ΠΊ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΎΠ±ΡΠ΅ΠΌΠΎΠ² ΠΈ Π€Π‘ /boot, /, /swap ΠΈ /var/, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΈΡ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ (Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ /boot).
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: Π Π½Π΅Π½ΡΠΆΠ½ΠΎΡΡΠΈ - ΠΈ ΠΎΠ± ΡΡΠΎΠΌ ΡΠΎΠΎΠ±ΡΠ°ΡΡ ΡΠ°ΠΌΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ! - ΡΠ°Π·Π΄Π΅Π»Π° /swap Π² Π½ΠΎΠ²ΡΡ Π²Π΅ΡΡΠΈΡΡ Fedora Ρ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΏΠΈΡΠ°Π» ΡΠ°Π½Π΅Π΅ (ΡΠΌ. ΡΠ°Π·Π΄Π΅Π» Manuals); ΠΏΠΎ ΠΏΠΎΠ²ΠΎΠ΄Ρ ΠΆΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ Π΅Π³ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π² Fedora Silverblue Π½Π΅ ΠΌΠΎΠ³Ρ ΡΠΊΠ°Π·Π°ΡΡ Π½ΠΈΡΠ΅Π³ΠΎ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ° Π½Π΅ Π½Π°ΡΠ΅Π» ΠΎΠ± ΡΡΠΎΠΌ Π½ΠΈΠΊΠ°ΠΊΠΈΡ ΡΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠΉ Π² ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅.
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΡΠΌ.:
ΠΠ°ΠΆΠ½ΠΎ: Fedora Silverblue ΡΠ²Π»ΡΠ΅ΡΡΡ Ρ.Π½. "immutable ΠΠ‘". ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ /, /usr (ΠΈ ΠΈΡ ΠΏΠΎΠ΄ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΈ) ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ "ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ".
/var ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ±Π»Π°ΡΡΡΡ, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΠΎΠΉ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΡΡ Π΄Π°Π½Π½ΡΡ (Ρ.Π΅. runtime, ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ Π½Π°ΡΡΡΠΎΠ΅ΠΊ, ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈ Ρ.ΠΏ.). Π ΠΠ‘ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠΈΠΌΠ»ΠΈΠ½ΠΊΠΈ, ΡΡΠΎΠ±Ρ ΠΈΠΌΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠ΅ΠΆΠ½ΡΡ "ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΡΡ" ΡΡΡΡΠΊΡΡΡΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΎΠ²:
/home β /var/home
/opt β /var/opt
/srv β /var/srv
/root β /var/roothome
/usr/local β /var/usrlocal
/mntβ /var/mnt
/tmp β /sysroot/tmp
ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π²ΡΠ΅ Π΄ΠΎΠΌΠ°ΡΠ½ΠΈΠ΅ ΠΏΠΎΠ΄ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡΡΡ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π² /var/home.
Π Fedora Silverblue ΡΡΠΎ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ Π΄Π²ΡΠΌΡ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌΠΈ: ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π¦Π΅Π½ΡΡΠ° ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ ΠΈΠ· ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ:
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ flatpak-ΠΏΠ°ΠΊΠ΅ΡΡ Π΄ΠΎΡΡΡΠΏΠ½Ρ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΠΈΠ· ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Fedora.
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΡΠΌ.:
ΠΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ - ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π¦Π΅Π½ΡΡΠ° ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ: ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π±ΡΠ΄Π΅Ρ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ ΠΎ Π½Π°Π»ΠΈΡΠΈΠΈ ΡΠ°ΠΊΠΎΠ²ΡΡ . Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΡΡΠΎΠ³ΠΎ ΡΠΏΠΎΡΠΎΠ±Π° ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ - Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠ°Ρ Π·Π°Π³ΡΡΠ·ΠΊΠ° ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² (ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ ).
ΠΠ»Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ Π³ΠΎΡΠΎΠ²ΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΠΠ‘. Π ΡΠ»ΡΡΠ°Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ ΠΎΡΠΈΠ±ΠΎΠΊ ΠΏΡΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠ΅, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΡΡΠ΅ΡΡΠ²ΠΈΡΡ "rollback", Ρ.Π΅. "ΠΎΡΠΊΠ°Ρ" ΠΠ‘ Π΄ΠΎ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ.
Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΠ‘ ΠΈΠ· ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ:
rpm-ostree upgrade --check
rpm-ostree uprgade --preview
rpm-ostree upgrade --reboot
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΠΠΎΡΠ»Π΅ ΠΎΠΊΠΎΠ½ΡΠ°Π½ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΡΠΈΡΡΠ΅ΠΌΠ° Π±ΡΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠΆΠ΅Π½Π°.
ΠΠ°ΠΆΠ½ΠΎ! "ΠΡΠΎΠΏΡΡΠΊ" ΡΠ΅Π»ΠΈΠ·ΠΎΠ² Π½Π΅ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π»ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ ΠΈ ΠΊΡΠ°ΠΉΠ½Π΅ ΠΠ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ! Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΎΠ±Π½ΠΎΠ²Π»ΡΠΉΡΠ΅ ΠΠ‘ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΡΠ»Π΅Π΄ΡΡΡΡΡ Π²Π΅ΡΡΠΈΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Ρ 37-ΠΉ - Π½Π° 38-Ρ.
ΠΠΠΠΠΠ’ΠΠΠΠ’ΠΠΠ¬ΠΠΠ― Π‘Π’ΠΠΠΠ―:
1) ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΠ‘ ΠΈ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠ° Π΅Π΅ ΠΏΠΎΡΠ»Π΅ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ:
rpm-ostree upgrade --reboot
2) Π‘ΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ "ΡΠ°Π·Π²Π΅ΡΠ½ΡΡΡΡ " ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΏΡΠΈ Π°ΠΏΠ³ΡΠ΅ΠΉΠ΄Π΅ ΠΠ‘ Ρ ΡΠ΅Π»ΠΈΠ·Π° Π½Π° ΡΠ΅Π»ΠΈΠ·
ostree admin pin 0
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΠΡΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΡΠΎΡ ΡΠ°Π½ΠΈΡ ("Π·Π°ΠΊΡΠ΅ΠΏΠΈΡ") ΡΠ°Π½Π΅Π΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, Π½ΠΎ Π²ΡΠ΅ ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ Π±ΡΠ΄ΡΡ ΡΠ΄Π°Π»Π΅Π½Ρ.
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΡΠ°Π½Π΅Π΅ "Π·Π°ΠΊΡΠ΅ΠΏΠ»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ»ΠΎΡ" ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
ostree admin pin --unpin 2
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: "2" - Π½ΠΎΠΌΠ΅Ρ ΠΏΠΎΠ·ΠΈΡΠΈΠΈ Π² ΡΡΠ°ΡΡΡΠ΅ rpm-ostree (ΡΠΌ. ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π½ΠΈΠΆΠ΅)
3) ΠΡΠΎΠ²Π΅ΡΠΊΠ° ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ pin
rpm-ostree status
4) RPM Fusion Layer
ΠΡΠ»ΠΈ Π² ΠΠ‘ ΡΠ°Π·Π²Π΅ΡΠ½ΡΡ ΡΠ»ΠΎΠΉ, ΡΠ²ΡΠ·Π°Π½Π½ΡΠΉ Ρ ΠΏΠ°ΠΊΠ΅ΡΠ°ΠΌΠΈ, ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠΌΠΈ ΠΈΠ· ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π² RPM Fusion, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΠ(!) ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠ±ΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ "rpm-ostree rebase ...":
rpm-ostree update --uninstall rpmfusion-free-release --uninstall rpmfusion-nonfree-release --install rpmfusion-free-release --install rpmfusion-nonfree-release
ΠΠΠΠ‘Π’ΠΠΠ― ΠΠ ΠΠΠΠ ΠΠΠΠ£:
1) ΠΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π°Π»ΠΈΡΠΈΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΡΠ΅Π»ΠΈΠ·Π° ΠΠ‘
ostree remote refs fedora | grep silverblue
2) ΠΠΏΠ³ΡΠ΅ΠΉΠ΄ Π½Π° ΡΠ»Π΅Π΄ΡΡΡΡΡ Π²Π΅ΡΡΠΈΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Ρ 37 Π½Π° 38)
rpm-ostree rebase fedora:fedora/38/x86_64/silverblue
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΠΡΠΎΡΠ΅ΡΡ Π°ΠΏΠ³ΡΠ΅ΠΉΠ΄Π° ΠΠ‘ ΡΡ ΠΎΠΆ Ρ ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΡΠΌ - Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ Π±ΡΠ΄ΡΡ Π·Π°Π³ΡΡΠΆΠ΅Π½Ρ, ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Ρ, ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π΅Π΅ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠ°.
1) ΠΠΎΠ·Π²ΡΠ°Ρ (ΠΎΡΠΊΠ°Ρ) ΠΊ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΠ‘ ΠΏΠΎΡΠ»Π΅ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ "rpm-ostree rebase". ΠΠ΄Π΅ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ Π΄Π²Π° Π²Π°ΡΠΈΠ°Π½ΡΠ°:
- ΠΡΠ΅ΠΌΠ΅Π½Π½ΡΠΉ - Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π²ΡΠ±ΡΠ°ΡΡ Π² Π·Π°Π³ΡΡΠ·ΠΎΡΠ½ΠΎΠΌ ΠΌΠ΅Π½Ρ (grub menu) ΠΏΡΠ΅Π΄ΡΠ΅ΡΡΠ²ΡΡΡΡΡ Π²Π΅ΡΡΠΈΡ ΠΠ‘.
- ΠΠΎΡΡΠΎΡΠ½Π½ΡΠΉ - Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
rpm-ostree rollback --reboot
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΠΠΎΡΠ»Π΅ ΠΎΠΊΠΎΠ½ΡΠ°Π½ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΡΠΈΡΡΠ΅ΠΌΠ° Π±ΡΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠΆΠ΅Π½Π°.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΠΡΠ΄ΡΡΠ΅ Π²Π½ΠΈΠΌΠ°ΡΠ΅Π»ΡΠ½Ρ! ΠΠΎΡΠ»Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΡΠΊΠ°ΡΠ° ΠΠ‘, ΡΠΈΡΡΠ΅ΠΌΠ° ΠΎΠΊΠ°ΠΆΠ΅ΡΡΡ Π² ΠΏΡΠ΅Π΄ΡΠ΅ΡΡΠ²ΡΡΡΠ΅ΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ, ΠΈ Π²Π°ΠΌ Π±ΡΠ΄Π΅Ρ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΎ Π²Π½ΠΎΠ²Ρ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ Π΅Π΅ Π΄ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ Π²Π΅ΡΡΠΈΠΈ. ΠΠΏΠΎΠ»Π½Π΅ Π΅ΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ, ΡΡΠΎ ΡΡΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΎΡΠΌΠ΅Π½ΠΈΡ rollback.
2) ΠΠ΅ΡΡΠΎΠ½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° rpm-ostreed.conf:
/etc/rpm-ostreed.conf
3) ΠΠΏΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠΉ Π°ΠΏΠ³ΡΠ΅ΠΉΠ΄ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΡΠ΅Π»ΠΈΠ·Π° ΠΠ‘ Π΄ΠΎ rawhide-Π²Π΅ΡΡΠΈΠΈ (Π½Π΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ):
rpm-ostree rebase fedora:fedora/rawhide/x86_64/system
ΠΠ»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΠΈ ΠΈ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ/ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΠΌΠΎΡΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ Π²ΠΊΠ»ΡΡΠ°ΡΡΡΡ Ρ.Π½. runtimes, Π²ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΡΠ΅ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ (Flatpak ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ΄Π³ΡΡΠΆΠ°ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅). Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Flatpak-ΠΏΠ°ΠΊΠ΅ΡΡ Π½Π΅ Π·Π°Π²ΠΈΡΡΡ ΠΎΡ ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π²Π΅ΡΡΠΈΠΈ ΠΠ‘ ΠΈ ΡΠ²Π»ΡΡΡΡΡ ΠΊΡΠΎΡΡ-ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΡΠΌΠΈ. Π ΠΎΠ΄Π½ΠΎ ΠΈ ΡΠΎ ΠΆΠ΅ Π²ΡΠ΅ΠΌΡ, Ρ.Π΅. ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎ ΠΈ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ, ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Ρ ΡΠ°Π·Π½ΡΠ΅ Π²Π΅ΡΡΠΈΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈ ΡΠΎΠ³ΠΎ ΠΆΠ΅ runtime ΠΈΠ»ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
ΠΡΠΎΠΌΠ΅ runtimes, ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ½ΡΡΠΈΠ΅ "Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ". Π Π½ΠΈΠΌ ΠΌΠΎΠ³ΡΡ ΠΎΡΠ½ΠΎΡΠΈΡΡΡΡ:
- Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, Π½Π΅ Π²Ρ ΠΎΠ΄ΡΡΠΈΠ΅ Π² runtime;
- Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, ΡΡ ΠΎΠΆΠΈΠ΅ Ρ Π²ΠΊΠ»ΡΡΠ΅Π½Π½ΡΠΌΠΈ Π² runtime, Π½ΠΎ ΡΠ°Π·Π»ΠΈΡΠ°ΡΡΠΈΠ΅ΡΡ Π²Π΅ΡΡΠΈΡΠΌΠΈ;
- Π²ΠΈΠ΄ΠΎΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΠ΅ (patched) Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ.
Π ΡΠ΅Π»ΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Flatpak ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ "ΠΏΠ΅ΡΠΎΡΠ½ΠΈΡΡ" (Sandboxes), ΠΈΠ·ΠΎΠ»ΠΈΡΡΡΡΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎΠΌ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠΈ ΠΎΡ ΠΠ‘ ΠΈ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΠΠ. "ΠΠ΅ΡΠΎΡΠ½ΠΈΡΠ°" ΠΈΠΌΠ΅Π΅Ρ Π²ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΡΠΎΠ³ΠΎ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ; ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ ΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ Π΄ΠΎΡΡΡΠΏ ΡΠΎΠ»ΡΠΊΠΎ ΠΊ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠΌΡ ΡΠ²ΠΎΠ΅ΠΉ "ΠΏΠ΅ΡΠΎΡΠ½ΠΈΡΡ". ΠΠΎΡΡΡΠΏ ΠΊ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΌ ΡΠ°ΠΉΠ»Π°ΠΌ, ΡΠ΅ΡΠΈ, ΡΠΎΠΊΠ΅ΡΠ°ΠΌ, bus-ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌ, Π΄Π΅Π²Π°ΠΉΡΠ°ΠΌ ΠΈ Ρ.ΠΏ. ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΠΏΠ΅ΡΠ΅Π΄Π΅Π»Π΅Π½/Π·Π°Π΄Π°Π½ ΠΎΡΠΎΠ±ΠΎ. ΠΠΎΡΡΡΠΏ ΠΊ ΠΈΠ½ΡΠΌ ΠΏΡΠΎΡΠ΅ΡΡΠ°ΠΌ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½. ΠΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ, Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ "ΠΏΠ΅ΡΠΎΡΠ½ΠΈΡΡ" ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠΊΡΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½ΠΎ Π² Ρ ΠΎΡΡ-ΠΌΠ°ΡΠΈΠ½Ρ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ .desktop-ΡΠ°ΠΉΠ»Ρ ΠΈ ΠΈΠΊΠΎΠ½ΠΊΠΈ.
Sandboxes - Π²Π°ΠΆΠ½Π΅ΠΉΡΠ°Ρ ΡΠ°ΡΡΡ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΠ‘ ΠΈ ΠΠ, ΠΏΠΎΡΡΠΎΠΌΡ, ΡΡΠΎΠ±Ρ Π±ΡΡΡ ΡΠΎΡΠ½ΡΠΌ, Ρ ΠΏΡΠΎΡΠΈΡΠΈΡΡΡ ΡΠ°ΡΡΡ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π° Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ° Π±Π΅Π· ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Π°: "...applications that are run with Flatpak have extremely limited access to the host environment. This includes:
- No access to any host files except the runtime, the app, ~/.var/app/$FLATPAK_ID, and $XDG_RUNTIME_DIR/app/$FLATPAK_ID. Only the latter two being writable.
- No access to the network.
- No access to any device nodes (apart from /dev/null, etc).
- No access to processes outside the sandbox.
- Limited syscalls. For instance, apps canβt use nonstandard network socket types or ptrace other processes.
- Limited access to the session D-Bus instance - an app can only own its own name on the bus.
- No access to host services like X11, system D-Bus, or PulseAudio."
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΌ.:
Flatseal: Graphical utility to review and modify permissions
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π·Π°Π΄Π΅ΠΉΡΡΠ²ΡΠ΅ΡΡΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ Ρ.Π½. "ΠΏΠΎΡΡΠ°Π»ΠΎΠ²", ΠΊΠΎΠ³Π΄Π° ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Ρ Ρ ΠΎΡΡ-ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ, Π΄Π°Π½Π½ΡΠΌΠΈ, ΡΠ°ΠΉΠ»Π°ΠΌΠΈ ΠΈ ΡΠ΅ΡΠ²ΠΈΡΠ°ΠΌΠΈ Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠΉ "ΠΏΠ΅ΡΠΎΡΠ½ΠΈΡΡ", Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ: Π²ΡΠ±ΠΎΡ ΡΠ°ΠΉΠ»ΠΎΠ² Π΄Π»Ρ ΠΎΡΠΊΡΡΡΠΈΡ, ΡΡΠ½ΠΊΡΠΈΠΈ ΠΏΠ΅ΡΠ°ΡΠΈ, ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈ Ρ.Π΄. Π¦ΠΈΡΠΈΡΡΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΡΡΠΎ ΠΎΡΠ΅Π½Ρ Π²Π°ΠΆΠ½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ°Ρ ΠΏΠΎΠ½ΡΡΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Ρ ΠΠ‘:
"They are a framework for providing access to resources outside of the sandbox, including:
- Opening files with a native file chooser dialog.
- Opening URIs.
- Printing.
- Showing notifications.
- Taking screenshots.
- Inhibiting the user session from ending, suspending, idling or getting switched away.
- Getting network status information.
In many cases, portals use a system component to implicitly ask the user for permission before granting access to a particular resource. For example, in the case of opening a file, the userβs selection of a file using the file chooser dialog is interpreted as implicitly granting the application access to whatever file is chosen.
The following permissions provide access to basic resources that applications commonly require, and can therefore be freely used:
--share=network - access the network;
--socket=x11 - show windows using X11;
--socket=fallback-x11 - show windows using X11, if Wayland is not available, overrides x11 socket permission. Note that you must still use --socket=wayland for wayland permission;
--share=ipc - share IPC namespace with the host (necessary for X11);
--socket=wayland - show windows with Wayland;
--device=dri - OpenGL rendering;
--socket=pulseaudio - play sound with PulseAudio.
Access to the entire bus with --socket=system-bus or --socket=session-bus should be avoided, unless the application is a development tool.
Applications are automatically granted access to their own namespace. Ownership beyond this is typically unnecessary, although there are a small number of exceptions, such as using MPRIS to provide media controls.
Talk permissions can be freely used, although it is recommended to use the minimum required.
It is common for applications to require access to different parts of the host filesystem, and Flatpak provides a flexible set of options for this. Some examples include:
--filesystem=host - access normal files on the host, not including host os or system internals described below;
--filesystem=home - access the userβs home directory;
--filesystem=/path/path - access specific paths;
--filesystem=xdg-download - access a specific XDG folder.
As a general rule, Filesystem access should be limited as much as possible. This includes:
- Using portals as an alternative to blanket filesystem access, wherever possible.
- Using read-only access wherever possible, using the :ro option.
- If some home directory access is absolutely required, using XDG directory access only.
- The full list of available filesystem options can be found in the Sandbox Permissions Reference.
The --persist=path option can be used to map paths from the userβs home directory into the sandbox filesystem. This makes it possible to avoid configuring access to the entire home directory, and can be useful for applications that hardcode file paths in ~/.
If an application uses $TMPDIR to contain lock files you may want to add a wrapper script that sets it to $XDG_RUNTIME_DIR/app/$FLATPAK_ID.
Retaining and sharing configuration with non-Flatpak installations is to be avoided.
As mentioned above the host option does not actually provide complete access to the host filesystem. The main rules are:
These directories are blacklisted: /lib, /lib32, /lib64, /bin, /sbin, /usr, /boot, /root, /tmp, /etc, /app, /run, /proc, /sys, /dev, /var
Exceptions from the blacklist: /run/media
These directories are mounted under /var/run/host: /etc, /usr
The reason many of the directories are blacklisted is because they already exist in the sandbox such as /usr or are not usable in the sandbox.
The home permission also has exceptions as it does not grant access to the subdirectories for other applications in ~/.var/app/.
While not ideal, --device=all can be used to access devices like controllers or webcams.
As of xdg-desktop-portal 1.1.0 and glib 2.60.5 (in the runtime) you do not need direct DConf access in most cases.
As of now this glib version is included in org.freedesktop.Platform//19.08 and org.gnome.Platform//3.34 and newer.
If an application existed prior to these runtimes you can tell Flatpak (>= 1.3.4) to migrate the DConf settings on the host into the sandbox by adding --metadata=X-DConf=migrate-path=/org/example/foo/ to finish-args. The path must be similar to your app-id or it will not be allowed (case is ignored and _ and - are treated equal).
If you are targeting older runtimes or require direct DConf access for other reasons you can use these permissions:
--filesystem=xdg-run/dconf
--filesystem=~/.config/dconf:ro
--talk-name=ca.desrt.dconf
--env=DCONF_USER_CONFIG_DIR=.config/dconf
With those permissions glib will continue using dconf directly.
As of gvfs 1.48, the gvfs daemons and applications use an on-disk socket to communicate, rather than an abstract socket so that the gvfs infrastructure still works when network support is disabled in the applicationβs sandbox.
A number of different options need to be passed depending on the applicationβs use of gvfs.
--talk-name=org.gtk.vfs.* is necessary to talk to the gvfs daemons over D-Bus and list mounts using the GIO APIs.
--filesystem=xdg-run/gvfsd is necessary to use the GIO APIs to list and access non-native files using the GIO APIs, using URLs rather than FUSE paths.
--filesystem=xdg-run/gvfs is necessary to give access to the FUSE mounts non-GIO and legacy applications can use. This is what will make native files appear under /run/user/`id -u`/gvfs/.
--talk-name=org.gtk.vfs.*
--filesystem=xdg-run/gvfsd
--filesystem=xdg-run/gvfs
No application should be using --talk-name=org.gtk.vfs in its manifest, as there are no D-Bus services named org.gtk.vfs.
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΌ.:
Flatpak-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΎΠ±ΡΡΠ½ΠΎ ΠΏΡΠ±Π»ΠΈΠΊΡΡΡΡΡ ΠΈ Ρ ΡΠ°Π½ΡΡΡΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΡ , ΡΡ ΠΎΠΆΠΈΠΌΠΈ ΠΏΠΎ ΡΡΡΡΠΊΡΡΡΠ΅ Ρ Git. Π Π΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Flatpak ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΠΊΠ°ΠΊ Π΅Π΄ΠΈΠ½ΠΈΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ, ΡΠ°ΠΊ ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ; ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· Π½ΠΈΡ Π±ΡΠ΄Π΅Ρ ΠΈΠΌΠ΅ΡΡ ΡΠ²ΠΎΡ Π²Π΅ΡΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ upgrade/downgrade. Π Π»ΡΠ±ΠΎΠΉ ΠΠ‘ Ρ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠΌ Flatpak ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΎ Π½Π΅ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π² Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌΠΈ ΠΏΠΎΠΈΡΠΊΠ° ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ. ΠΡΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ ΠΏΠ°ΠΊΠ΅ΡΠ° (ΠΏΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΠΈ Ρ Git) Π±ΡΠ΄Π΅Ρ Π·Π°Π³ΡΡΠΆΠ΅Π½Π° ΡΠΎΠ»ΡΠΊΠΎ "ΡΠ°Π·Π½ΠΈΡΠ°" ΠΌΠ΅ΠΆΠ΄Ρ Π²Π΅ΡΡΠΈΡΠΌΠΈ, ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ΠΏΡΠΎΡΠ΅ΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΊΡΠ°ΠΉΠ½Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΌ ΠΈ ΡΡ ΠΎΠΆΠΈΠΌ Ρ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΎΠΌ delta-RPM Π² "ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΌ" Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π΅ Fedora.
Π ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΈ runtimes, ΠΈ ΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½Ρ Π² ΠΠ‘ ΠΊΠ°ΠΊ Π΄Π»Ρ Π²ΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Π² ΡΠ΅Π»ΠΎΠΌ, ΡΠ°ΠΊ ΠΈ Π΄Π»Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ ΡΠ΄ΠΎΠ±Π½ΠΎ Π΄Π»Ρ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ system-wide ΠΏΡΠΈΠ½ΡΠΈΠΏ. ΠΡΠ»ΠΈ ΠΆΠ΅ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Π° ΠΎΠΏΡΠΈΡ "--user", ΡΠΎ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ Π±ΡΠ΄ΡΡ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ½Ρ Π΄ΡΡΠ³ΠΈΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ. ΠΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ ΠΌΠΎΠΆΠ΅Ρ Π΅ΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅ ΠΏΠΎΠ΄Π½ΡΡΡ ΡΡΠΎΠ²Π΅Π½Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΠ‘ ΠΈ ΠΠ.
ΠΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Flatpak ΠΌΠ°ΡΠΊΠΈΡΡΠ΅Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π΅Π³ΠΎ runtime-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠΌ ("Identifiers"), ΡΠΎΡΡΠΎΡΡΠΈΠΌ ΠΈΠ· ΡΡΠ΅Ρ ΡΠ°ΡΡΠ΅ΠΉ. Π ΡΠ΅Π»ΠΎΠΌ, ΠΎΠ½ΠΈ Π²ΡΠ³Π»ΡΠ΄ΡΡ ΠΊΠ°ΠΊ "com.company.App" (ΡΡ ΠΎΠΆΠ°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π² Android). ΠΠΎΠ»Π΅Π΅ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠ½ΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ Π΄Π΅Π»ΡΡΡΡ Π½Π° ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ°ΡΡΠΈ: "name/architecture/branch", Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ: "com.company.App/i386/stable".
ΠΠΎΠ½Π΅ΡΠ½ΡΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ Π»Π΅Π³ΠΊΠΎ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΏΠ°ΠΊΠ΅ΡΠ°ΠΌΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°, Π΄Π΅ΠΉΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΠΏΠΎ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ: "Π½Π°ΠΉΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ - ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠΌ ΠΈ ΡΠΊΡΠΈΠ½ΡΠΎΡΠ°ΠΌΠΈ - ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π½Π°ΠΆΠ°ΡΠΈΠ΅ΠΌ ΠΠΠ" (ΡΠΎ Π΅ΡΡΡ ΠΊΠ°ΠΊ Π² ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΡ ΡΠ΅ΠΉΡΠ°Ρ "ΠΌΠ°Π³Π°Π·ΠΈΠ½Π°Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ"). ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²ΠΎΠ΄ΡΡΡΡ ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ.
flatpak --help
flatpak remotes
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠΎΠΎΠ±ΡΠΈΡ ΡΠ°ΠΊΠΆΠ΅, ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Ρ Π»ΠΈ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ Π΄Π»Ρ Π²ΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΈΠ»ΠΈ Π΄Π»Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ
1) Fedora Flatpaks:
flatpak remote-add --if-not-exists fedora oci+https://registry.fedoraproject.org
2) Flathub:
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
3) Flabhub Beta:
flatpak remote-add --if-not-exists flathub-beta https://flathub.org/beta-repo/flathub-beta.flatpakrepo
Π Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, "flathub", "fedora" ΠΈ "flathub-beta" Π±ΡΠ΄ΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΌΠΈ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π².
flatpak remote-delete flathub
flatpak search gimp
flatpak install flathub org.gimp.GIMP
Π Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, flathub - Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ΅ ΠΈΠΌΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, Π° org.gimp.GIMP - ΠΈΠΌΡ ΠΏΠ°ΠΊΠ΅ΡΠ°.
ΠΠ°ΡΠΈΠ½Π°Ρ Ρ Π²Π΅ΡΡΠΈΠΈ Flatpak 1.2, ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
flatpak install gimp
.flatpakref ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ/ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² (ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ) ΠΈ ΠΊΠ»ΡΡ GPG. ΠΠΎ ΡΡΡΠΈ, Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ - ΠΏΡΠΎΡΡΠ΅ΠΉΡΠΈΠΉ ΠΏΡΡΡ ΠΎΠ½Π»Π°ΠΉΠ½-ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
flatpak install https://flathub.org/repo/appstream/org.gimp.GIMP.flatpakref
ΠΈΠ»ΠΈ (Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ)
flatpak install org.site.APP_NAME.flatpakref
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΠΠ°ΠΊ ΠΏΠΎΠ½ΡΠ» Π»ΠΈΡΠ½ΠΎ Ρ (Π½ΠΎ Π½Π΅ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π» Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅!), ΠΎΡΠ»Π°ΠΉΠ½-"ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡ" ΡΡΠΈΡ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΠ‘, ΠΈΠ±ΠΎ ΠΈΡ ΡΠΏΠΈΡΠΎΠΊ ΡΠ°Π²Π½ΠΎΠ·Π½Π°ΡΠ΅Π½ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ "dnf install pkg_1 pkg_2 pkg_3". Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠ°ΠΊΠΎΠΉ ΡΠΏΠΈΡΠΎΠΊ (Ρ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ΠΌ Π² ΠΎΠ΄Π½Ρ ΡΡΡΠΎΠΊΡ), ΠΈΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
flatpak list --app --columns=application | xargs echo -n > installed_flatpaks.txt
[Flatpak Ref]
Name=org.site.APP_NAME
Branch=stable
Title=org.site.APP_NAME from flathub
Url=https://dl.flathub.org/repo/
RuntimeRepo=https://dl.flathub.org/repo/flathub.flatpakrepo
IsRuntime=false
GPGKey=mQINBFl (...)
flatpak run org.gimp.GIMP
flatpak update
flatpak list
flatpak list --app
flatpak info org.gimp.GIMP
flatpak uninstall org.gimp.GIMP
flatpak uninstall --unused
flatpak repair
flatpak permission-reset org.gimp.GIMP
flatpak history
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΌ.:
Π’.Π½. "Package layering" (ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π²Π΅ΡΡΠΈ ΠΊΠ°ΠΊ "ΡΠ»ΠΎΠΉ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ²) ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΡΠ΅Ρ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΡ immutable Fedora Silverblue. ΠΠΎ ΡΡΡΠΈ, ΡΡΠΎ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π° ΠΠ‘, Π·Π° ΡΡΠ΅Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π² Π½Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΡΠ°ΠΊΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ, ΠΊΠ°ΠΊ sway, libvirt, fish ΠΈ Ρ.ΠΏ. ΠΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ (Π½ΠΎ Π½Π΅ Π²ΡΠ΅) RPM-ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΡΡΡΡ ΠΊ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΠΈΠ· ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Fedora.
ΠΠΎ ΡΡΡΠΈ, "package layering" ΡΠΎΠ·Π΄Π°Π΅Ρ Π½ΠΎΠ²ΡΠΉ "Π±Π°Π·ΠΈΡ Π΄Π»Ρ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΡ", Ρ.Π΅. "Π²Π΅ΡΡ Π½ΠΈΠΉ ΡΠ»ΠΎΠΉ" Π΄Π»Ρ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΠ ΠΈΠ»ΠΈ, ΠΊΠ°ΠΊ ΡΠΊΠ°Π·Π°Π½ΠΎ Π² ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅: "bootable filesystem root" (Ρ ΠΎΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ Π½Π° ΡΠ΅ΠΊΡΡΠΈΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ root). ΠΡΠΎΡ ΡΠΏΠΎΡΠΎΠ± ΡΠΎΡ ΡΠ°Π½ΡΠ΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΎΡΠΊΠ°ΡΠ° ΠΠ‘ ("rollback"), Π½ΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΠ‘ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠΆΠ΅Π½Π° ΠΏΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΈΠ»ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅ΡΠ°. ΠΠ»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΠΎ, Π΄Π»Ρ ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎΠ³ΠΎ (Ρ.Π΅. Π½Π΅ ΡΡΠ΅Π±ΡΡΡΠ΅Π³ΠΎ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠΈ) ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ², ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
rpm-ostree install --apply-live <pkg>
Package layering ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ Π΄Π»Ρ ΠΌΠ°Π»ΠΎΠ³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΠΈΠΌΠ΅ΡΡΡΡ Π² Π²ΠΈΠ΄Π΅ flatpak-ΡΠ°ΠΉΠ»ΠΎΠ² Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΡ ; ΠΎΠ½ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠΌ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ.
rpm-ostree status
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: Π‘ΠΏΠΈΡΠΎΠΊ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡ ΠΈΡ Π² ΠΏΠΎΡΡΠ΄ΠΊΠ΅, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΌ Π² bootloader'e
- ΠΠ΅ΡΠ²Π°Ρ ΠΏΠΎΠ·ΠΈΡΠΈΡ Π² ΡΠΏΠΈΡΠΊΠ΅ - ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ.
- ΠΠ½Π°ΡΠΎΠΊ "β" - ΠΌΠ°ΡΠΊΠ΅Ρ Π·Π°Π³ΡΡΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ.
1) RPMFusion (free/nonfree)
rpm-ostree install https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
rpm-ostree install https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
2) Copr
ostree remote add <name-of-repo> <repository-url>
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΠΡΠΎΡΠ΅ΡΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ ΡΡΠΎΡΠΎΠ½Π½ΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π² ΡΡ ΠΎΠΆ Ρ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΡΠΌ Π² Fedora, ΡΠ°Π·Π²Π΅ ΡΡΠΎ RPM-ΠΏΠ°ΠΊΠ΅ΡΡ Π±ΡΠ΄ΡΡ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Ρ Π½Π΅ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π² ΠΠ‘, Π° Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ "ΡΠ»ΠΎΠΉ".
rpm-ostree upgrade
ΠΈΠ»ΠΈ
rpm-ostree upgrade --reboot
ΠΠΎΠΌΠ°Π½Π΄Π° ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡ ΠΎΡΠ»Π°ΠΉΠ½-ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅, ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ deployment (Ρ.Π΅. root filesystem) ΠΈ ΠΏΠΎΠΌΠ΅ΡΠΈΡ Π΅Π³ΠΎ Π΄Π΅ΡΠΎΠ»ΡΠ½ΡΠΌ Π΄Π»Ρ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠΈ. ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ "Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Π΅ΡΡΡ" Π² ΠΌΠΎΠΌΠ΅Π½Ρ ΡΠΈΠ½ΠΈΡΠ° ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠΈ Π½ΠΎΠ²ΠΎΠ³ΠΎ Π·Π°Π³ΡΡΠ·ΡΠΈΠΊΠ° ΠΈ Π²ΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠΈΡΡΠ΅ΠΌΡ (Ρ.Π΅. ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ shutdown).
rpm-ostree rollback
ΠΈΠ»ΠΈ
rpm-ostree rollback --reboot
ΠΈΠ»ΠΈ
rpm-ostree rollback fedora/35/x86_64/system
ΠΠΎΠ·Π²ΡΠ°Ρ ΠΊ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ: Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ "ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ" ΠΏΠ΅ΡΠ΅ΡΡΠ°ΡΡ Π±ΡΡΡ ΡΠ°ΠΊΠΎΠ²ΡΠΌΠΈ. Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎ, rpm-ostree upgrade ΡΠ΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π΄Π²Π° ΠΏΡΠ΅Π΄ΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ (ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠ°Π²Π½ΠΈΡΡ Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ΠΌ Π΄Π²ΡΡ ΠΏΡΠ΅Π΄ΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ ΡΠ΄Π΅Ρ ΠΏΡΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ ΡΠΈΡΡΠ΅ΠΌΡ Π² "ΠΎΠ±ΡΡΠ½ΠΎΠΌ" Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π΅ ΠΠ‘).
rpm-ostree deploy <version>
ΠΠΎΠΌΠ°Π½Π΄Π° Π±ΡΠ΄Π΅Ρ ΠΈΡΠΊΠ°ΡΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ ΠΈΡΡΠΎΡΠΈΡ ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π²Π΅ΡΠΊΠΈ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ ΠΈ ΡΠ°Π·Π²Π΅ΡΠ½Π΅Ρ Π΅Π΅. ΠΡΠΎ ΡΠ΄ΠΎΠ±Π½ΠΎ, Π΅ΡΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π΅ ΡΠΎΡΠΎΠΏΠΈΡΡΡ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ, Ρ.Π΅. Π²Π½Π΅ΡΡΠΈ Π² ΠΏΠΎΡΡΠΎΡΠ½Π½ΡΠ΅, Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Π½ΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, Π½Π΅ ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π² ΠΈΡ .
rpm-ostree install <package name>
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π·Π°Π³ΡΡΠ·ΠΈΡ ΠΏΠ°ΠΊΠ΅Ρ ΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ, Π° Π·Π°ΡΠ΅ΠΌ ΠΏΠ΅ΡΠ΅Π½Π°ΡΡΡΠΎΠΈΡ ΡΠ΅ΠΊΡΡΠΈΠΉ ΠΎΠ±ΡΠ°Π· ΠΠ‘. Π‘ΠΈΡΡΠ΅ΠΌΠ° rpm-ostree ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ ΠΈΠΌΠ΅Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Π΄Π»Ρ Fedora, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π½Π°ΠΉΠ΄Π΅Π½Ρ ΡΡΠ΅Π΄ΡΡΠ²Π°ΠΌΠΈ DNF, ΠΎΠ΄Π½Π°ΠΊΠΎ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΡΠΈΡΡΠ²Π°ΡΡ, ΡΡΠΎ ΡΡΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ½Π° Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π½Π° Ρ ΠΎΡΡΠ΅ Fedora Silverblue, Π½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠΌΠ° Π² Ρ.Π½. "toolbox" (Π΅Π³ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠΌ. Π½ΠΈΠΆΠ΅). ΠΡΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠΌ ΡΠΏΠΎΡΠΎΠ±Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΠ°ΠΊΠ΅Ρ Π±ΡΠ΄Π΅Ρ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ - Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΠ‘ (ΠΈ ΠΏΡΠΈ Π½Π°Π»ΠΈΡΠΈΠΈ Π΅Π³ΠΎ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΡΠΈΠΉ).
rpm-ostree uninstall <pkg>
ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, ΠΊΠ°ΠΆΠ΄Π°Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ rpm-ostree ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ "ΠΎΡΠ»Π°ΠΉΠ½" ΠΈ Π½Π΅ Π²Π½ΠΎΡΠΈΡ Π½ΠΈΠΊΠ°ΠΊΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΡΠ΅ΠΊΡΡΠ΅Π΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Π·Π°ΠΏΡΡΠ΅Π½Π½ΠΎΠΉ ΠΠ‘. ΠΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π±ΡΠ΄ΡΡ Π²Π½Π΅ΡΠ΅Π½Ρ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠ΅. ΠΡΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠ° Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ "pending deployment".
rpm-ostree uninstall --all
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΠΡΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Π³Π°ΡΠ°Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎ Π½Π΅ Π·Π°ΡΡΠΎΠ½Π΅Ρ Π±Π°Π·ΠΎΠ²ΡΠΉ ΡΠ»ΠΎΠΉ ΠΠ‘
Π Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ»ΡΡΠ°ΡΡ , Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΡΠΈΠΉ kernel, podman ΠΈ Ρ.ΠΏ. ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΡΡΠ΅ΡΡΠ²ΠΈΡΡ Π·Π°ΠΌΠ΅Π½Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅ΡΠ° Π½Π° Π΄ΡΡΠ³ΠΎΠΉ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²ΡΡΡΠ½ΡΡ ΡΠΊΠ°ΡΠ°ΡΡ ΠΏΠ°ΠΊΠ΅Ρ ΠΈ ΠΈΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
rpm-ostree override replace <path to package>
Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΌΠ΅ΡΡΠΎ ΠΏΡΡΠΈ ΠΊ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠΌΡ ΠΏΠ°ΠΊΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΡΠ»ΠΊΠΈ Π½Π° koji ΠΈΠ»ΠΈ bodhi, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
rpm-ostree override replace https://kojipkgs.fedoraproject.org//packages/podman/3.1.2/1.fc34/x86_64/podman-3.1.2-1.fc34.x86_64.rpm https://kojipkgs.fedoraproject.org//packages/podman/3.1.2/1.fc34/x86_64/podman-plugins-3.1.2-1.fc34.x86_64.rpm
rpm-ostree override remove <pkg>
ΠΠΌΠ΅ΡΡΠΎ "override replace" ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ "override remove" - ΡΡΠΎ "ΡΠΊΡΠΎΠ΅Ρ" ΠΏΡΠ΅Π΄ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ. ΠΡΠΈ ΡΡΠΎΠΌ ΠΎΠ½ ΠΎΡΡΠ°Π½Π΅ΡΡΡ ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°ΡΡ Π½Π° "Π½ΠΈΠΆΠ½Π΅ΠΌ Π±Π°Π·ΠΎΠ²ΠΎΠΌ ΡΠ»ΠΎΠ΅" ΠΠ‘, ΠΎΠ΄Π½Π°ΠΊΠΎ Π½Π΅ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ ΠΏΡΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠ΅ ΠΠ‘. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΏΠΎΡΠ»Π΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΏΠ°ΠΊΠ΅Ρ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΈΡΡΡΡΡΠ²ΠΎΠ²Π°ΡΡ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ OSTree ΠΏΠΎ Π°Π΄ΡΠ΅ΡΡ: /ostree/repo, Π½ΠΎ Π½Π΅ Π±ΡΠ΄Π΅Ρ Π²ΠΈΠ΄ΠΈΠΌ.
ΠΠ°ΠΆΠ½ΠΎ: "override replace" ΠΈ "override remove" Π² ΡΠ΅Π»ΠΎΠΌ ΠΠ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Π½Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ rpm-ostree.
rpm-ostree override reset <pkg>
rpm-ostree reload
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΌ.:
rpm-ostree Administrator Handbook
Fedora Modularity ΠΈ Toolbox Π²ΡΡΠ΄ Π»ΠΈ ΠΏΡΠΈΠ³ΠΎΠ΄ΡΡΡΡ Π² ΠΌΠΎΠ΅ΠΉ ΡΠ°Π±ΠΎΡΠ΅. ΠΠ΄Π½Π°ΠΊΠΎ ΠΏΡΠΈΠ²ΠΎΠΆΡ ΠΊΡΠ°ΡΠΊΠΈΠ΅ Π°Π½ΠΎΠ½ΡΡ ΡΡΠΈΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ Π΄Π»Ρ Π²ΡΠ΅Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΡΡΠΈΡ ΡΡ, Π° ΡΠ°ΠΊΠΆΠ΅ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΡΠ΅ (Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ - Π²Π΅ΡΡΠΌΠ° ΠΏΡΠΈΠ²ΡΡΠ½ΡΠ΅!) ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ.
ΠΠ°ΠΆΠ½ΠΎ! ΠΡΠ΄ΡΡΠ΅ Π²Π½ΠΈΠΌΠ°ΡΠ΅Π»ΡΠ½Ρ: Toolbox ΠΠ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΈΡΡΠΈΠ½Π½ΡΠΌ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠΌ Ρ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ.
ΠΡΠ°ΡΠΊΠ°Ρ ΡΠΏΡΠ°Π²ΠΊΠ° ΠΏΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ
toolbox create --distro
toolbox create --release
toolbox create --image [image_name]
toolbox enter --distro
toolbox enter --release
toolbox enter --distro --release
toolbox list
toolbox list --containers
toolbox list --images
toolbox rm <container name>
toolbox rm --force <active container name>
toolbox rm --all
toolbox rmi <image name>
toolbox rmi --force <active image name>
toolbox rmi --all
toolbox --help
dnf search <pkg>
dnf install <pkg>
dnf remove <pkg>
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΠΡΠ±ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Π²Π½ΡΡΡΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ° toolbox ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΌΠΈ ΡΡΠ΅Π΄ΡΡΠ²Π°ΠΌΠΈ, Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠ½ΡΠΌΠΈ Π΄Π»Ρ "ΠΎΠ±ΡΡΠ½ΠΎΠΉ" Fedora GNU/Linux. Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ "dnf update", ΡΡΠΎΠ±Ρ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°, ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΡΠΉ ΡΠ°ΠΉΠ» DNF /etc/dnf/dnf.conf - ΡΠΎ Π΅ΡΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ, ΠΊΠ°ΠΊ Ρ ΠΏΡΠΈΠ²ΡΡΠ½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ.
Toolbox makes it easy to use a containerized environment for everyday software development and debugging. On immutable operating systems, likeΒ Fedora Silverblue, it provides a familiar package-based environment in which tools and libraries can be installed and used. However, toolbox can also be used on package-based systems. Using Toolbox for running your workflows in a containerized manner brings you several advantages:
- It keeps the host OS clean and stable, and helps to avoid the clutter that can happen after installing lots of development tools and packages.
- You get access to different versions of supported distributions independent of the version you are running.
- Containers are a good way to isolate and organise the dependencies needed for different projects.
- Containers are a safe space to experiment: if things go wrong, itβs easy to throw a toolbox away and start again.
However, it is very important to note that toolbox containers are still integrated with your host system, so you should not attempt to do things or run software you otherwise wouldnβt on your host system. Toolbox containers are not completely isolated environments like virtual machines.
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΌ.:
Any RPM repository can be converted into a modular RPM repository with the inclusion of modular metadata and corresponding binary RPMs. Modularity can expand a RPM repository with following features:
- Module streams add additional packages with the same name, but built from different sources and with different build configurations.
- Module streams can have different life cycles. For example a package in a distribution can have a different life cycle than the life cycle of the distribution.
- Module streams can have different installation profiles of its components i. e. you can define one or several module stream profiles which will contain groups of RPMs which should be installed together.
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΌ.:
rpm-ostree install akmod-nvidia xorg-x11-drv-nvidia
rpm-ostree install akmod-nvidia xorg-x11-drv-nvidia-cuda
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΠΠΎΠ±Π°Π²ΠΈΠ» Π΄Π²Π΅ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π½Π° Π²ΡΡΠΊΠΈΠΉ ΡΠ»ΡΡΠ°ΠΉ - Π° Π²Π΄ΡΡΠ³ ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΡΡΠΎΠ»ΠΊΠ½ΡΡΡΡΡ Ρ ΠΊΠ°ΡΡΠ°ΠΌΠΈ ΠΎΡ Nvidia!
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΌ.:
Silverblue Postinstall Upgrade
π― Rami Rosenfeld, 2023. GNU FDL 1.3.