W LinuxДокументация

Скачать W

W · текущая ночная сборка

Релиз
Собран
Размер

Скачать ISOСтраница релиза

Образ один, и он пересобирается каждую ночь из текущего релиза: W — роллинг-дистрибутив, и старый образ лишь поставил бы старые пакеты, которые тут же пришлось бы обновлять. Карточка выше всегда показывает сборку, опубликованную прямо сейчас.

Требования

  • Машина x86_64 с прошивкой UEFI
  • Диск, который вы готовы стереть
  • Работающее интернет-соединение во время установки

Обычная или зашифрованная

Установщик задаёт один вопрос, который определяет стек загрузки:

  • Обычная — btrfs и GRUB, снапшоты в boot-меню.
  • Зашифрованная — полнодисковое шифрование LUKS2 с разблокировкой через TPM2, если он есть, ключ восстановления и Limine со снапшотами в меню; Secure Boot включается потом.

Рабочий стол и откат у обеих одинаковые. Подробнее — Безопасность и Восстановление.

Установка

  1. Возьмите ISO — скачать установочный образ.

    Образ один, и он пересобирается каждую ночь из этого репозитория. W — роллинг-дистрибутив, поэтому заморозка загрузки под каждую версию выдавала бы вам лишь пакеты постарше, которые придётся обновлять на первом же запуске. Файл называет себя w-<release>-<дата сборки>-x86_64.iso, и установленная система записывает те же два факта в /etc/os-release как IMAGE_VERSION и W_BUILD_DATE: какая это версия собственной конфигурации W и какого дня её пакеты из Arch.

    На странице релиза лежит SHA-256 образа; файл заменяется каждой ночной сборкой, поэтому сверяйте его именно с той загрузкой, которая у вас на руках:

    sha256sum w-*-x86_64.iso

    Либо соберите свой — та же сборка, что производит опубликованный образ, и способ получить образ для железа, которое дефолтный не покрывает.

  2. Загрузитесь с него. Инсталлятор стартует сам на первой консоли. Если вы из него вышли — вернитесь командой bash /root/w/scripts/install.sh.

  3. Ответьте мастеру. Он один раз спрашивает подтверждение, прежде чем тронуть диск, и всё после этой точки необратимо — прочитайте тот экран.

  4. Перезагрузитесь. Первая загрузка доводит настройку до конца (пакеты, сборки из AUR, пользовательское окружение) и логирует всё это в /var/log/w/.

Проверка образа

SHA-256 выше ловит битую загрузку — но он лежит рядом с файлом и ничего не говорит о том, кто его сделал:

sha256sum w-*-x86_64.iso

Подпись образа — его происхождение сборки: аттестация Sigstore, которую делает сама сборка, о том, что именно этот файл собран workflow edge-iso репозитория W из конкретного коммита. Проверка — GitHub CLI:

gh attestation verify w-*-x86_64.iso --repo tarkh/w

Названный коммит — снапшот релиза, подписанный релизным ключом W, тем же, который каждая машина W проверяет перед тем, как принять обновление. В клоне репозитория:

git -c gpg.ssh.allowedSignersFile=rootfs/usr/share/w/update/w-release.allowed_signers \
  verify-commit <коммит>

Ключа, который можно украсть, в сборке нет: релизный ключ не покидает владельца, а сертификат аттестации выдаётся на один запуск. Как проверяются последующие обновления — в SECURITY.md.

Собрать свой ISO

Опубликованный образ ничем не особенный — это то, что собирает данный репозиторий, и вы можете собрать то же самое:

git clone https://github.com/tarkh/w
cd w
./scripts/build-iso.sh           # результат в archiso/out/

Запускайте от обычного пользователя, не через sudo: скрипт повышает привилегии только для самого mkarchiso, а пакеты AUR, которые он запекает внутрь, нельзя собирать от root. Нужны установленные archiso и base-devel. На машине не под Arch — или если ставить их не хочется — ci/iso-build-container.sh прогоняет идентичную сборку внутри контейнера; этот скрипт буквально и есть то, что производит ночной образ, так что его вывод — и есть опубликованный.

Сборка занимает примерно 10–20 минут и пишет w-<release>-<дата>-x86_64.iso.

Wi-Fi Broadcom: винтажные MacBook Pro и им подобные

Горстка старых чипов Broadcom — BCM43142 [14e4:4365], BCM4360 [14e4:43a0], те, что стоят в машинах вроде MacBook Pro 2013–2015 годов, — не значится в таблице ни одного драйвера в ядре. Linux показывает их вообще без привязанного драйвера, и им нужен собственный модуль Broadcom wl.

Установленная система справляется с этим сама: инсталлятор детектит такой чип и ставит для него драйвер. С чем он помочь не может — это живая сессия, и на ноутбуке без Ethernet-порта это важно: если инсталлятор не может поднять сеть, он не может ничего установить. До сентября 2026 образ это покрывал, потому что Arch поставлял готовый пакет с драйвером; этот пакет исчез из официальных репозиториев, а upstream archiso выбросил его, а не заменил. Остался только исходный (DKMS) пакет, поэтому снова покрыть живую сессию означает нести в образе компилятор и заголовки ядра — около 570 МБ до сжатия, измеренные 139 МБ на готовом ISO (1583 → 1722 МБ), ради сборки драйвера размером 2 МБ.

Для всех, у кого такого чипа нет, это плохая сделка, поэтому по умолчанию опция выключена. Если чип у вас есть — соберите себе образ с ним:

./scripts/build-iso.sh --broadcom-wl

Или, что то же самое, поставьте BROADCOM_WL=on вверху scripts/build-iso.sh — опция там одной строкой, с обоснованием рядом.

Выбирать версию драйвера вам не придётся. Исходникам Broadcom нужен свежий патч под каждую новую серию ядра, а Arch выкладывает ядро раньше, чем пересобранный драйвер покидает testing-репозиторий, — и в это окно обычный пакет не собирается против того ядра, которое едет в ISO. Сборка находит новейший драйвер по всем репозиториям и, если он всё ещё в testing, тянет единственный этот пакет, тогда как всё остальное в образе продолжает приходить из обычных репозиториев.

Честное ограничение: если Arch выпустит серию ядра раньше, чем под неё вообще появится патч драйвера, ни одна версия не соберётся и сборка встанет с ошибкой компилятора. Сделать с этим нечего, кроме как дождаться патча — или собирать с выключенной опцией.