AUR чи Flatpak
Ditana підтримує нативні пакунки Arch, пакунки AUR, які збираються локально за допомогою paru, і застосунки Flatpak із Flathub, що працюють у пісочниці. Порядок пріоритетів такий: спершу нативні, потім Flatpak, потім AUR — і підставою відійти від нативного пакунка ніколи не є те, що Flatpak дає кращий досвід, а лише те, що нативного пакунка немає.
Коли Flatpak — кращий вибір
Розділ «Коли Flatpak — кращий вибір»Якщо в самому Arch пакунка немає, для стільничного застосунку, що має підтримувану збірку на Flathub, віддавайте перевагу Flatpak, а не AUR.
- Пісочниця. Застосунки Flatpak працюють у пісочниці
bubblewrapз обмеженим доступом до файлової системи та IPC. Для браузерів, медіапрогравачів та іншого програмного забезпечення, що працює з інтернетом, це справжній додатковий рівень ешелонованого захисту. - Жодного часу на збирання. Збирання пакунків AUR з вихідного коду може тривати хвилини (або години — для великих застосунків, як-от LibreOffice). Під час розгортання Flatpak із Flathub завантажуються вже зібрані двійкові файли.
- Жодного ризику з ABI. Двійкові пакунки AUR іноді ламаються, коли оновлюються системні бібліотеки, а двійковий файл від розробників програми очікує інший ABI. Пакунки Flatpak містять власне середовище виконання і захищені від цього ризику.
- Передбачувані оновлення. Випуски на Flathub мають версії, і їх легко відкотити. AUR оновлюється безперервно й без узгодження.
Коли AUR — кращий вибір
Розділ «Коли AUR — кращий вибір»Є три випадки, коли Ditana віддає перевагу AUR перед Flatpak — або навіть вимагає AUR.
Ditana вже сама перезбирає й підписує 45 потрібних їй рецептів з AUR, тому paru -S часто знаходитиме їх у сховищі Ditana, а не в AUR. Кожен із них було класифіковано перед збиранням: зміна URL-адреси джерела, функції збирання або контрольної суми без зміни версії зупиняє весь прогін, доки його не перегляне людина. Рецепти, яких Ditana не має, paru встановлює безпосередньо з AUR, без перевірки, — і саме про цю різницю йдеться на решті цієї сторінки.
Браузери на основі Chromium і типове посилення захисту в Ditana
Розділ «Браузери на основі Chromium і типове посилення захисту в Ditana»Ditana не надає непривілейованих просторів назв користувача (user namespaces) кожній програмі. На них ґрунтувалися кілька опублікованих локальних підвищень привілеїв, а із шістнадцяти записів про ядро Linux у каталозі відомих вразливостей, які використовують зловмисники (Known Exploited Vulnerabilities) агентства CISA за три роки шість можна використати через них — підраховано за версією каталогу 2026.09.04, а визначення, які саме це шість записів, — наше, тож його варто перевірити, а не брати на віру. Тому Ditana дозволяє їх окремо для кожної програми: мінімальна програма BPF, під’єднана до власного хука ядра userns_create, відмовляє в просторі назв будь-якому виконуваному файлу, для якого його не запитало жодне налаштування. Програма bwrap його запитала, тож кожен застосунок Flatpak будує свою зовнішню пісочницю як звичайно.
Проте Brave надходить з AUR як brave-bin — з двох причин, які не мають нічого спільного із зовнішньою пісочницею. Його пакунок Flatpak містить zypak, який створює додаткові простори назв із власного двійкового файлу глибоко всередині пісочниці, і чи поширюється на них список дозволених виконуваних файлів узагалі, не перевірено. Крім того, виконуваний файл усередині пакунка Flatpak замінює команда flatpak update, якої не бачить хук, відповідальний за синхронізацію списку дозволених, тож дозвіл непомітно втратив би чинність під час наступного оновлення.
Пакунку AUR brave-bin нічого з цього не потрібно. Він має власну допоміжну програму chrome-sandbox із setuid і будує свою пісочницю взагалі без простору назв користувача — саме тому цей виняток залишається, хоча правило ставить Flatpak перед AUR.
Якщо пісочниці, яку ви встановили самі, відмовлено
Розділ «Якщо пісочниці, яку ви встановили самі, відмовлено»Якщо пісочниці, яку ви встановили самі, відмовлено в просторі назв користувача, то відмовив саме захисний механізм. Додайте виконуваний файл до /etc/ditana/userns-allow.conf, по одному абсолютному шляху на рядок, і перезавантажте список:
sudo ditana-userns-guard --reloadsudo ditana-userns-guard --status показує, скільки просторів назв було дозволено й відхилено відтоді, як захисний механізм завантажено, і перелічує програми, яким він відмовив, — від найновішої, для кожної з користувачем, який її запустив, і кількістю разів. sudo ditana-userns-guard --observe припиняє відмовляти й далі веде список, тож показує, що програма запитала б, поки вона продовжує працювати; sudo ditana-userns-guard знову вмикає відмови.
Програмне забезпечення, якого немає на Flathub
Розділ «Програмне забезпечення, якого немає на Flathub»Чимала частка корисного програмного забезпечення для Linux є лише в AUR — вузькоспеціалізовані інструменти розробників, драйвери окремих виробників, утиліти для обладнання, шрифти. Для них AUR — єдиний варіант, а paru робить їхнє встановлення простим.
Коли ви хочете брати участь в екосистемі AUR
Розділ «Коли ви хочете брати участь в екосистемі AUR»Якщо ви користувач Arch і хочете стежити за стрічками комітів AUR, голосувати за пакунки або супроводжувати власні пакунки AUR, то використання AUR для щоденних застосунків тримає вас у курсі.
Як Ditana робить вибір під час встановлення
Розділ «Як Ditana робить вибір під час встановлення»Конфігурація KDL дає змогу кожному налаштуванню оголошувати arch-packages, flatpak-packages і aur-packages поруч, а також userns-allow для виконуваного файлу, пісочниці якого потрібен простір назв користувача. Якщо доступно більше одного джерела, вибір роблять свідомо, для кожного пакунка окремо, а пояснення записують у відповідному файлі .kdl. Перегляньте ditana-config, щоб побачити міркування в контексті.
Практична порада: регулярний перегляд встановлених пакунків Flatpak
Розділ «Практична порада: регулярний перегляд встановлених пакунків Flatpak»Середовища виконання Flatpak накопичуються. Час від часу виконуйте sudo flatpak uninstall --unused, щоб звільнити місце на диску, — і sudo flatpak update, щоб застосунки були актуальними. Обидві операції безпечні. Ditana встановлює пакунки Flatpak для всієї системи, а не для окремого користувача, тому обидві команди потребують прав root.
Це машинний переклад. Читачі вдосконалюють його на Weblate.