как отключить зависимость?

Hi!

У viber-а прописана зависимость на pulseaudio, в тоже время, если он собран с USE-флагом apulse, как это сделано по умолчанию, то нормально работает и без PA.

У меня сейчас viber строит без PA, но если сделать cl-update, то последний пытается его доустановить, заодно пересобрав алсу с PA:

Проверка обновлений
 * Вычисление зависимостей ...                                                                                                                                                                                       [ ok ]
[binary  N    #] media-sound/pulseaudio-12.2::gentoo  USE="X alsa alsa-plugin asyncns bluetooth caps dbus equalizer gdbm glib gtk ipv6 native-headset ofono-headset orc ssl tcpd udev webrtc-aec -doc -gconf -jack -libressl -libsamplerate -lirc (-neon) (-oss) -qt5 -realtime (-selinux) -sox (-system-wide) (-systemd) -test -zeroconf" ABI_X86="32 (64) (-x32)" 2379 KiB
[binary   R    ] media-plugins/alsa-plugins-1.1.6::gentoo  USE="ffmpeg mix pulseaudio* speex usb_stream -arcam_av -debug -jack -libav -libsamplerate -oss" ABI_X86="32 (64) (-x32)" 0 KiB
 * 2 пакетов будет установлено, 2379 KiB будет загружено

Вопрос: куда можно прописать запрет уставновки PA или как указать чтобы viber не тянул за собой PA без правки ebuilds, чтобы всё обновлялось стандартно, а не пересобирать viber, который и так нормально собран, тем более что это бинарник.

Попытка замаскировать PA, прописав в /etc/portage/package.mask , не помогла. Только чуть больше выругалось.

Гугле перевод https://github.com/i-rinat/apulse

APULSE - PulseAudio эмуляция для ALSA.

Программа предоставляет альтернативную частичную реализацию API PulseAudio. Он состоит из скрипта загрузчика и нескольких общих библиотек с такими же именами, как и в оригинальном PulseAudio, поэтому приложения могут динамически загружать их и думать, что они общаются с PulseAudio. Внутри не используется отдельный демон микширования звука. Вместо этого apulse использует плагины ALSA dmix , dsnoop и plug для обработки нескольких источников звука и захвата одновременно работающих потоков. плагин dmix несколько потоков воспроизведения; плагин dsnoop позволяет захватывать несколько приложений с одного микрофона; и plug модуль плагин прозрачно преобразует аудио между различными форматами сэмплов, частоты дискретизации и номера каналов. Уже более десяти лет ALSA поставляется с этими подключаемыми модулями, которые включены и настроены по умолчанию.

apulse не был предназначен для замены PulseAudio. Это бессмысленно, поскольку это будет просто повторная реализация оригинального PulseAudio с той же архитектурой клиент-демон, которая требуется для полного набора функций. Вместо этого реализованы только те части API, которые имеют решающее значение для конкретных приложений. Вот почему существует скрипт загрузчика с именем apulse . Он обновляет значение LD_LIBRARY_PATH среды LD_LIBRARY_PATH чтобы указывать также на каталог, в котором установлены библиотеки apulse, делая их доступными для приложения.

Название происходит от имен ALSA и PulseAudio. Поскольку aoss был уровнем совместимости между программами OSS и ALSA, apulse был разработан как уровень совместимости между приложениями PulseAudio и ALSA.

Вникаем - apulse это надстройка над PulseAudio и без PA никуда
Поэтому и тянет viber PulseAudio, но правда не всю

Программа предоставляет альтернативную частичную реализацию API PulseAudio.

Альтернатива – это не надстройка, а замена.

В данном случае – у нас эмулятор API PA, который работает на прямую с alsa, т.е. транслирует вызовы PA в alsa тем программам, которые разучились работать напрямую с alsa из-за лени разработчиков.

apulse не является полной заменой PA, т.к. не умеет микшировать звук, передавать по сети, де висит демоном и другое, но это нам и не нужно.

А alsa не умеет только передавать звук по сети, всё остальное может и без PA, даже горечее под-/переключение устойств ввода-вывода звука, и напрашивается вывод – зачем нужен этот доп.тормоз?

И у меня vider выводит звук, при этом PA я снёс, а сам viber из-за этой зависимости ставил с ключом -O