Інсталятор, який знає, що робить.
Інсталятор, який знає, що робить.
В основі — чистий Arch. Згори — база знань конфігурації: кожне налаштування й кожна взаємодія між налаштуваннями, прозоро закодовані.
# installer pipeline — NVIDIA detection
$ detect Quadro K3100M (PCI 11b6)
$ cross-reference github.com/NVIDIA/open-gpu-kernel-modules
$ cross-reference nvidia.com/…/legacy-gpu
$ decide recommend proprietary legacy driver 470
$ verify nvidia-470xx-dkms present in the repository
✓ four conflicting options resolved into one consistent defaultТри принципи, яких дотримано в усьому.
Кожен вибір — це дані
Налаштування, залежності та сценарії життєвого циклу зберігаються в базі знань на KDL — її можна перевіряти й відгалужувати, а отримується вона під час встановлення, тож покращення публікуються без перевипуску ISO-образу.
Безпека в типових налаштуваннях
Захист від вразливостей для кожного процесора, параметри sysctl для посилення захисту системи, обмежені простори назв користувача (user namespaces), необов’язковий hardened_malloc. Увімкнено типово, а не на вимогу — і кожен компроміс пояснено там, де ви на нього йдете.
XFCE · Wayfire · Niri · COSMIC
Виберіть одне або встановіть усі чотири поруч і перемикайтеся між ними на екрані входу. Wayfire і Niri постачаються з уже налаштованими waybar, nwg-launchers і nwgbar; XFCE і COSMIC мають власні панелі. Жодне з них не є урізаним мінімумом.
Чотири рівноправні стільничні середовища, а не одне типове й три другорядні.
Wayfire і Niri зазвичай вважають неповними середовищами. Ditana постачає все, що їм потрібно, — доопрацьований waybar, nwg-launcher, nwgbar і узгоджене розташування панелей — і вважає всі чотири стільничні середовища повноцінними.




Кожне оновлення можна відкотити.
Модель безперервного випуску (rolling release) в Arch — це перевага, а не вада, але вона може щось зламати у вівторок уранці. Ditana знешкоджує цю загрозу, автоматично створюючи знімок системи перед кожним оновленням.
Атомарні знімки, які створює хук pacman.

На ZFS і BTRFS знімки атомарні й нічого не коштують — кілька мілісекунд перед будь-яким оновленням пакунків. На XFS і EXT4 те саме завдання виконує Timeshift через rsync, створюючи типові інкрементні знімки за лічені секунди.
Перший знімок створює сам інсталятор безпосередньо перед першим перезавантаженням. Тож ви можете відкотитися до щойно встановленої системи з першого дня — без налаштування й без дилеми курки та яйця з першим оновленням.
Знімки системи, а не даних: /home та інші томи з даними ніколи не зачіпаються. Відкочуйте систему, а свою роботу зберігайте.
Для ZFS Ditana постачає власне відгалуження zfs-autosnap, яке — на відміну від оригінального проєкту — вилучає файл блокування pacman зі знімка, тож після відкочування pacman одразу працює.
І без графічного інтерфейсу (headless). Посилення захисту системи разом з автоматичними знімками робить Ditana придатним вибором для сервера на основі Arch — що нечасто трапляється серед дистрибутивів із безперервним випуском. Профіль Server в інсталяторі повністю пропускає встановлення стільничного середовища й робить ставку на типові налаштування безпеки.
Під час встановлення Ditana звіряється з оригінальними джерелами.

Виявлення NVIDIA, вибір із чотирьох варіантів.
Під час встановлення Ditana запитує актуальні списки PCI ID з github.com/NVIDIA/open-gpu-kernel-modules та з офіційної сторінки застарілих GPU. На основі результату вона рекомендує один із чотирьох варіантів драйвера — nvidia-open-dkms, застарілий власницький nvidia-580xx-dkms, ще старіший nvidia-470xx-dkms або nouveau — і перевіряє, чи є в сховищі пакунок, який вона збирається рекомендувати, а якщо його немає, повертається до nouveau.
Потім вона пояснює, що вибрала й чому.
Вразливості процесора: виявлення й захист.
Spectre v2, Meltdown, MDS, TAA, MMIO Stale Data, RETBleed, SRSO, GDS, RFDS — під час встановлення Ditana читає /sys/devices/system/cpu/vulnerabilities/, вмикає лише ті засоби захисту (mitigations), які справді потрібні вашому процесору, і дає змогу переглянути кожен із них разом із документацією.
Для кожного засобу захисту чітко названо його ціну, тож ви можете ухвалити виважене рішення, а не вибирати наосліп між «безпечним типовим варіантом» і «швидким типовим варіантом».


Посилення захисту системи: типово ввімкнено.
Непривілейовані простори назв користувача (user namespaces) доступні лише програмам, яким вони потрібні. Обмежений ptrace. Приховані вказівники ядра. Посилений захист FIFO і звичайних файлів у каталогах із бітом sticky. SYN cookies, без перенаправлень ICMP, без маршрутизації від джерела (source routing), фільтрація зворотного шляху (reverse-path filtering). Кожен параметр постачається ввімкненим, кожен пояснено — а розробники отримують профіль, який послаблює саме те, що потрібно для налагодження.
Десять категорій. Розумні типові налаштування. Жодних загадок.
Скажіть інсталятору, хто ви, — прийшли з іншого дистрибутиву, переходите з KDE Plasma, Cinnamon, Xfce або MATE, працюєте розробником, налаштовуєте сервер чи не належите до жодного з цих варіантів, — і він відповідно заздалегідь позначить прапорці. Кожен із них ви можете переглянути й змінити до початку встановлення.

Один екран — уся система.
Категорії конфігурації дають змогу детально налаштувати стільничні середовища, браузери, файлові менеджери, офісні пакети, інструменти ШІ, термінали, ядра, файлові системи, посилення захисту, засоби захисту процесора й системний розподільник пам’яті — усе з одного меню, усе можна скасувати, усе пояснено.
Кожна зміна — разом з її наслідками.
Перемкніть параметр і побачте наслідок: які пакунки буде додано, які сценарії буде запущено, які інші налаштування зміняться у відповідь. Граф налаштувань — це дані, і Ditana показує вам шлях крізь нього.

Інсталятор — малий. База знань — велика.
Інсталятор Linux має робити більше, ніж розбити диск на розділи, встановити пакунки й передати керування. Файли PKGBUILD знають лише про власний пакунок — вони не можуть знати, що ще є в системі. Ditana зберігає наскрізні рішення в окремій базі знань, яку можна перевірити.
Налаштування оголошують свої залежності простим кодом KDL.
Цей фрагмент каже: встановлювати kitty лише тоді, коли вибраний термінал працює тільки на Wayland, і також встановлено XFCE. Ніхто б і не подумав про таке попросити, і нікому й не потрібно: правило стоїть поруч зі списком пакунків, де під час перевірки видно й умову, і її причину, замість того щоб ховатися в коді інсталятора.
// XFCE fallback for Wayland-only primary terminals
// (foot, cosmic-term). Fires when the user picks a
// Wayland-native terminal AND also installs XFCE.
- name="fallback-kitty-for-xfce" \
default-value="`(install-foot OR install-cosmic-term)
AND install-xfce`" {
arch-packages "kitty" "imagemagick" ...
chroot-script "echo kitty.desktop
>/etc/xdg/xfce-xdg-terminals.list"
}Готові спробувати?
Ditana 0.9.4 Beta — це ISO-образ розміром 1.9 GB з від’єднаним підписом GPG. Під час встановлення вона отримує свої пакунки й конфігурацію, тож робоче з’єднання з мережею входить до вимог. Повне встановлення триває 15—45 хвилин залежно від того, що ви виберете.
Це машинний переклад. Читачі вдосконалюють його на Weblate.