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

Наборы — опциональные пакеты софта

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

Набор назван по направлению, а не по инструменту — containers, а не podman; dev, а не список редакторов. Вы выбираете возможность, а какой софт её даёт — забота W. Каждый набор приносит свои пакеты, свою конфигурацию, свои цвета для активной темы и шаг настройки, который вплетает его в рабочий стол — так что набор приходит настроенным, а не просто скачанным.

Что предлагается

  • containers — Podman без root, с командной строкой Docker и терминальным интерфейсом для него.
  • dev — среда разработки: редактор Zed, инструменты git, менеджер версий тулчейнов.
  • flatpak — песочница для сторонних приложений: Flatpak с Flathub, магазин Bazaar и Flatseal для управления правами приложений. Это ответ на вопрос «как установить приложение, которого нет в пакетах Arch».
  • office — офисное направление: LibreOffice для документов, таблиц и презентаций, pdfarranger и xournalpp для работы со страницами PDF и пометок, и база заметок Obsidian на markdown-файлах.
  • bitwarden — приложение Bitwarden, вплетённое в слоты W: SSH-агент, биометрическая разблокировка, автозапуск в трее.
  • telegram — Telegram Desktop в цветах W: пак рендерит активную тему в собственный файл темы Telegram, включая однотонный фон чата, а Telegram, который на вашем аккаунте ещё ни разу не запускался, открывается в этих цветах с самого первого запуска (и без собственной рамки окна — заголовка нет). Если Telegram уже запускался до настройки пака, его данные не трогаются, и файл один раз выбирается в самом приложении (Настройки → Настройки чатов → Фон чата → Выбрать из файла). В любом случае дальше каждая смена темы перекрашивает запущенный Telegram на лету.
  • localsend — LocalSend, открытый AirDrop-подобный обмен файлами с телефоном, планшетом или другим компьютером: официальные приложения на Linux, Windows, macOS, Android и iOS говорят на одном открытом протоколе по локальной сети — без аккаунта и облака. Пак сидирует акцентный цвет W, открывает файрвол только для доверенных (домашних) сетей и добавляет в Nemo пункт правой кнопки «Send with LocalSend». Автозапуска нет по умолчанию — открывайте по необходимости, либо включите systemctl --user enable --now localsend.service, чтобы приложение сидело в трее и всегда было готово принимать файлы.
  • graphics — 2D-творчество: GIMP для растра и ретуши фото (с набором фильтров G'MIC), Inkscape для векторной графики и дизайна, Krita для цифрового рисования. Все три следуют теме W (Krita — через свою тему «W», она выбирается за вас, если вы не выбрали другую). Пак также подключает ассистента ИИ к обоим редакторам: он умеет рисовать, править и экспортировать векторные документы через сервер Inkscape и выполнять правки внутри запущенного GIMP, глядя на результат — той моделью, что стоит в профиле, локальной или облачной. Генеративное рисование в Krita — в планируемом паке-компаньоне.
  • 3d — Blender для 3D-моделирования, скульптинга, анимации и рендера. Blender открывается в цветах W и следует за сменой темы прямо на ходу; выберете другую тему в настройках Blender — она останется вашей. Ассистент ИИ умеет строить и менять сцены в запущенном Blender: добавлять и править объекты, назначать материалы, смотреть на вьюпорт, экспортировать в GLB/FBX. Его код выполняется в безопасном режиме: только средства самого Blender — без команд оболочки, сети и установки аддонов. Cycles рендерит на видеокартах AMD и Intel Arc сразу после установки.
  • audio — создание музыки: DAW Ardour (запись, монтаж, сведение, MIDI), qpwgraph для соединения приложений и устройств, Audacity для быстрых правок и стартовый набор плагинов (синтезатор Surge XT, инструменты сведения и мастеринга LSP, ревербератор Dragonfly). Пак переводит систему на JACK-поддержку PipeWire и даёт вашей учётной записи приоритет реального времени для звука (со следующего входа). Ardour, Audacity и qpwgraph открываются в цветах W. Ассистент ИИ умеет работать в открытой сессии Ardour — треки, плагины, микшер, MIDI-ноты, — когда вы включите MCP HTTP Server (Experimental) в Preferences → Control Surfaces Ardour; по умолчанию он выключен, потому что принимает команды без пароля, — выключайте его, когда закончите.
  • gaming — Steam, Lutris и Heroic бок о бок на общем фундаменте Proton/Wine/MangoHud/gamemode: Steam закрывает основную часть типичной библиотеки, Lutris — катч-олл на всё остальное (GOG, Amazon, нативные инсталляторы, эмуляция), Heroic говорит с API Epic/GOG напрямую. Пак включает репозиторий multilib, подбирает 32-битный графический стек под вашу видеокарту, держит библиотеку игр вне снапшотов @home (там могут набегать сотни гигабайт, и всё это полностью восстановимо из магазинов игр), и одевает в цвета активной темы W оверлей MangoHud (Shift_F12) и само окно Heroic — Heroic открывается в них с самого первого запуска и подхватывает каждую последующую смену темы при следующем старте. Установка игр на второй диск остаётся настройкой самого лаунчера: Settings → Storage у Steam, Default Installation Path вместе с Set Folder for new Wine Prefixes у Heroic (иначе префиксы останутся в ~/Games), Default installation folder у Lutris. Диск берите с линуксовой файловой системой — на NTFS и exFAT игры под Proton ломаются.
  • virt — десктопная виртуализация: libvirt и QEMU/KVM внутри, virt-manager для полного контроля и GNOME Boxes для создания ВМ в один клик из ISO. Сеть по умолчанию готова сразу после настройки пака, а ваш аккаунт получает доступ к ней без пароля — никаких лишних шагов перед первой ВМ. Аппаратный TPM для гостей, которым он нужен (Windows 11, зашифрованный диск), в пак не входит — добавьте сами, если понадобится.
  • ai-extra — продвинутый стек для ассистента ИИ: локальные модели, семантическая память, улучшенный веб-поиск.
  • comfyui — локальная генерация изображений и видео в ComfyUI, node-редакторе и бэкенде, работающем как системный сервис на localhost. Движок подбирается под видеокарту при установке; модели общие для всей машины — в /var/lib/w/ai-models. Откройте ComfyUI в меню приложений или systemctl start comfyui, затем http://127.0.0.1:8188/.
  • invokeai — локальная генерация изображений в InvokeAI: холст, галерея и веб-интерфейс на http://127.0.0.1:9090/, работающий как системный сервис. Использует то же общее хранилище моделей, что и comfyui, регистрируя его файлы на месте; наборы друг от друга не зависят.

Хаб → Наборы показывает их состояние и ведёт весь жизненный цикл — установку, настройку и удаление. Всё долгое или требующее прав открывает терминал, чтобы вы могли наблюдать за процессом. Из терминала тот же список — w-pack list.

Наборы также предлагаются во время установки, так что новая машина может приехать уже с нужными. Пара из них имеет смысл только на уже работающей системе и намеренно отсутствует в этом списке при установке.

Установка и настройка для вашего аккаунта

У пака две половины, и панель называет их так:

  • Половина машины — пакеты и системная конфигурация. Устанавливается один раз на всю машину и требует администратора: sudo w-pack install <name>, либо кнопка Установить.
  • Ваша половина — части, живущие в вашем домашнем каталоге. Настраивается на аккаунт, не требует пароля и не делается за всех автоматически: тратить чужое место на диске под выбор, который никто не делал, было бы невежливо.

Поэтому пак может показывать Есть на машине, но не настроен для вас с кнопкой Настроить рядом. Ничего не сломано — это честное «пока нет», и один клик (или w-pack setup <name>) доводит дело до конца. На машине с одним аккаунтом вы почти не увидите этого состояния, потому что установка делает обе половины сразу.

Установка снапшотится, как и любое другое изменение пакетов, поэтому она так же обратима — см. раздел об обновлениях.

Удаление пака

В Хаб → Наборы у каждого пака, который есть на машине, будет кнопка Убрать. Она сначала спрашивает, и в подтверждении предлагает те же два ответа, что и команды: убрать пак с машины (нужны права администратора) либо отменить только слой вашей учётной записи. Из терминала:

sudo w-pack remove <pack>

Это отменяет то, что сделал W, а это не то же самое, что удалить программы. Удаление пака забирает его проводку: пак перестаёт числиться установленным, его цвета перестают рендериться, переменные сессии и хуки оболочки уходят, конфигурационные файлы во владении W удаляются (сначала делается резервная копия), а всё, что пак настроил — службу, имя команды, системную настройку, — возвращается как было.

Ваши пакеты по умолчанию остаются. Это дело pacman, а не W, поэтому точная команда для их удаления печатается — запустите её сами, либо добавьте --packages, и удаление сделает это в том же проходе. Панель этот флаг за вас не добавляет никогда: забрать пакеты — единственная необратимая часть, и решать это до того, как вы увидели список, неправильно. По той же причине терминал, открытый удалением, ждёт вас перед закрытием — отчёт в конце и есть его смысл. Всё, что нужно другому паку, который вы оставили, из этого списка исключается автоматически.

Ваши данные не удаляются никогда. Скачанные модели, образы контейнеров, тулчейны, установленные приложения Flatpak — это ваше, и W только называет пути и сколько места они занимают. То же с конфигурационными файлами, которые принадлежат вам, а не W: программы обычно остаются установленными, поэтому удалить ваши настройки к ним было бы вредом, а не отменой — они перечисляются и остаются на месте.

Если вы удалили пакеты пака руками, а он возвращается после обновления, — вот почему: без w-pack remove W по-прежнему считает пак вашим и применяет его заново. Запустите команду выше, и он уйдёт насовсем.

w-pack unsetup <pack>

То же самое только для вашей учётной записи, без прав администратора: пак остаётся на машине для всех остальных и просто перестаёт быть настроенным для вас. w-pack setup <pack> вернёт его когда угодно.

Чтобы вернуть конфигурацию пака к значению по умолчанию W, не удаляя его, используйте w-reset <pack> — он восстанавливает из собственных файлов пака, сначала сохранив резервную копию ваших текущих. Права администратора для вашего собственного дома не нужны. Снапшот перед установкой тоже всё ещё в меню загрузки, если вы предпочитаете откатить всё целиком.

Поддержание паков актуальными

Когда обновление W меняет уже установленный у вас пак, он переприменяется за вас — конфигурация, тема и шаг настройки, без затрагивания пакетов. Делать что-то руками не нужно. Если конфигурация пака когда-нибудь покажется устаревшей, sudo w-pack refresh делает этот проход по запросу; работает offline и занимает секунды.

Некоторые паки ставят свою главную программу из её собственного проекта, а не системным пакетом — это AI-движки comfyui и invokeai. Обновление системы их не трогает — намеренно: обновление движка качает гигабайты и может изменить поведение рабочей настройки, поэтому оно происходит только по вашей просьбе.

Следить самим не нужно: раз в несколько часов W проверяет новый релиз движка и сообщает о нём, не смешивая со счётчиком обновлений системы. Хаб → Наборы показывает смену версии в строке пака и кнопку Обновить (она открывает тот же sudo w-pack upgrade в терминале), w-update status его перечисляет, а w-update упоминает в конце обновления системы. Ассистент тоже умеет обновить движок — сначала покажет план и дождётся вашего «да».

w-pack outdated                 # у каких движков есть новый релиз
sudo w-pack upgrade comfyui     # показать план, спросить, обновить

upgrade дожидается, пока ничего не генерируется, останавливает движок, сохраняет путь назад, ставит новый релиз и проверяет, что тот стартует и отвечает. Если нет — прежняя версия возвращается сама. Движок остаётся запущенным или остановленным — как был до этого. Ваши модели, изображения и настройки не затрагиваются.

Чтобы остаться на одном релизе — или вернуться к более старому, — назовите его и обновите:

sudo w-conf set comfyui VERSION 0.37.2
sudo w-pack upgrade comfyui

VERSION=latest (по умолчанию) снова следует за новейшим стабильным релизом. Кастомные ноды ComfyUI обновляются из его собственного веб-интерфейса (Manager → Update All), а не через w-pack upgrade.

Изменить эту страницу на GitHub