Адрес: ул. Б. Очаковская 32 Москва Россия
Наши официальные канал и чат в telegram
Поднимем Devuan на вершину Distrowatch! Просто перейдите по ссылке один раз в день.

Установка PipeWire на Devuan 5 с runit и openrc

Установка PipeWire на Devuan 5 с runit и openrc

Решение проблем с железом и различной периферией
ion
Сообщения: 20
Зарегистрирован: Ср май 29, 2024 9:13 pm
Поблагодарили: 8 раз

Установка PipeWire на Devuan 5 с runit и openrc

Сообщение ion »

Установка PipeWire на Devuan 5 с runit и openrc
Данный способ рабочий и опробован с системой инициализации runit и оpenRC.

Установка PipeWire — это эффективный способ получить современный звуковой сервер с поддержкой низкой задержки, Bluetooth, совместимости с PulseAudio и даже работы с ALSA.

1) Установка метапакета pipewire-audio.
Самый простой и корректный способ — установить метапакет, который соберёт все необходимые компоненты:

Код: Выделить всё

sudo apt update
sudo apt install pipewire-audio
Что делает данный метапакет?
Он автоматически устанавливает:
- wireplumber — рекомендуемый менеджер сессий для PipeWire (управляет устройствами, Bluetooth, маршрутами и т. п.).
- pipewire-pulse — замена PulseAudio, обеспечивая совместимость со всеми приложениями.
- pipewire-alsa — обеспечивает работу с ALSA (для старых приложений, драйверов).
- libspa-0.2-bluetooth — поддержка Bluetooth-аудио (A2DP, HSP и т. п.).

Метапакет pipewire-audio также удалит pulseaudio, чтобы избежать конфликтов. Это безопасно: pipewire-pulse полностью его заменяет.

2) Настройка автозапуска сервисов.
Поскольку Devuan 5 использует runit, а не systemd, системные юниты PipeWire игнорируются. Вместо этого PipeWire и WirePlumber следует запускать в пользовательской сессии.
Откройте или создайте файл ~/.xsessionrc
Если у вас нет файла .xsessionrc — создайте его:

Код: Выделить всё

nano ~/.xsessionrc
Скопируйте туда строки ниже, сохраните (Ctrl+O, Enter, Ctrl+X) и сделайте файл исполняемым:

Код: Выделить всё

chmod +x ~/.xsessionrc
Этот файл выполняется при запуске графической сессии (X11). Добавьте в него следующие строки:


# ~/.xsessionrc

# Запуск менеджера сессий WirePlumber
wireplumber &

# Запуск основного сервера PipeWire
pipewire &

# Запуск совместимости с PulseAudio
pipewire-pulse &


Очень важно: порядок запуска
Сначала должен запускаться WirePlumber, потом PipeWire, потом pipewire-pulse.
Нарушение порядка может привести к ошибкам и отсутствию звука.


Перезагрузите систему.

1) Проверка: работает ли PulseAudio на базе PipeWire.

Код: Выделить всё

pactl info | grep 'Server Name'
Если видите строку Server Name: PulseAudio (on PipeWire 0.3.xx), значит PipeWire работает корректно.


2) Проверка запущенных процессов.

Код: Выделить всё

ps aux | grep -E "pipewire|wireplumber"
Ожидается наличие процессов: pipewire, pipewire-pulse, wireplumber.

Дополнительно (альтернативы проверки):

Код: Выделить всё

- pgrep -a -f 'pipewire|wireplumber'

Примечание: с рабочим окружением MATE после перезагрузки регулятор громкости может исчезнуть из панели. Просто добавьте его обратно на панель.