Защищенное флеш видео (требуется HAL) на Gentoo

1872
Mala

Я не могу воспроизвести «защищенное» флэш-видео, такое как Amazon Prime Instant Video. Из того, что я прочитал и обнаружил, похоже, это связано с отсутствием установленного HAL на моем компьютере. Подтверждение того, что оно требуется для защищенного видео, можно увидеть в начале http://helpx.adobe.com/x-productkb/multi/flash-player-11-problems-playing.html.

Однако hal отсутствует в дереве портежей gentoo и в любом случае устарел и заменен на udev. Как можно возобновить работу Amazon Prime Instant Video? Я подумывал о том, чтобы взять источник с http://www.freedesktop.org/wiki/Software/hal, но ссылки там не будут загружаться, и попытался установить его из старых ebuild-ов или из оверлеев, которые утверждают, что все еще поддерживают его (например, kde-sunset) приведет к ошибке компиляции:

In file included from addon-generic-backlight.c:38:0: /usr/include/glib-2.0/glib/gmain.h:21:2: error: #error "Only <glib.h> can be included directly." 

Кто-нибудь еще решил эту проблему?

0

3 ответа на вопрос

2
Mala

Для тех, кто на моем месте, кому нужно это установить, комментарии Гравити к его ответу содержат ключ к тому, как это сделать. Для явного пошагового:

Шаг 1: захватить код

# git clone http://cgit.freedesktop.org/hal-info/ # git clone http://cgit.freedesktop.org/hal/ 

Шаг 2: Установите hal-info

# cd hal-info # ./autogen.sh # make && make install # cd .. 

Шаг 3: исправьте код hal

Для этого, заменить все экземпляры #include <glib/gmain.h>с #include <glib.h>. Вы можете сделать это с помощью команды вроде:

# find hal -name "*.c" -print|xargs sed -i 's/#include <glib\/gmain\.h>/#include <glib\.h>/g' 

По какой-то причине это пропустило одну ссылку (я на самом деле не гуру регулярных выражений / sed), поэтому я просто сделал grep -r "#include <glib/gmain.h>" *и исправил это вручную.

Шаг 4: Установить хал

# cd hal # ./autogen.sh --disable-policy-kit # make && make install 

Шаг 5: Не забудьте конфигурацию dbus!

# cp hal.conf /etc/dbus-1/system.d/ 

Это оно! Теперь просто запустите его с hald(/ usr / local / sbin / hald)

2
Thomas Jefferson

появляются hal-flash

Это все, что тебе нужно делать в эти дни, как это происходит на портеже. WFM

@Chenmunka это на самом деле решает проблему отлично. Поскольку это добавление в portage (менеджер пакетов Gentoo), простая установка его с помощью указанной команды emerge решает проблему без необходимости вручную загружать, исправлять, компилировать, устанавливать и настраивать HAL-код - я изменяю принятый ответ на этот как это более правильно отражает текущее положение дел. Mala 10 лет назад 0
1
grawity

HAL работает поверх udev; оно никогда не было «полностью заменено» им; те функции, которые были отключены в hal (например, управление ACL). Не должно быть никаких конфликтов, пока Flash Player является единственным пользователем HAL.

Круто, я попробую скомпилировать и установить и посмотрим, как это будет. Я думал, что он был заменен с http://en.wikipedia.org/wiki/HAL_%28software%29#Deprecated Mala 12 лет назад 0
черт возьми, заставить HAL скомпилировать / установить сложнее, чем можно подумать Mala 12 лет назад 0
@Mala: попробуйте использовать параметры сборки, аналогичные [пакету] Arch Linux (https://aur.archlinux.org/packages.php?ID=51454) - в частности, отключите функции, которые были перемещены в udev. Также может помочь udev.patch. grawity 12 лет назад 0
Спасибо за проверку :) У меня самое страшное время - никакие ebuilds не скомпилируются, и все ссылки на релиз / git на официальной странице HAL, похоже, не работают. Я проверю страницу AUR и посмотрю, смогу ли я найти что-нибудь оттуда Mala 12 лет назад 0
Я заменил патчи Gentoo на те, что были в архиве AUR (так как они, похоже, не совместимы друг с другом), но компиляция все равно не удалась с той же ошибкой, что и при извлечении ее из оверлея (см. Обновление к моему вопросу) Mala 12 лет назад 0
(Деревья Git находятся по адресу http://cgit.freedesktop.org/hal/ и http://cgit.freedesktop.org/hal-info/, кстати.) grawity 12 лет назад 0
Спасибо за ссылки Git. Не удается скомпилировать с той же ошибкой при извлечении из Git ... Я начинаю думать, что это не устраивает gcc 4.6.2 Mala 12 лет назад 0
Нет, изменения в GLib не устраивают ... попробуйте заменить все `#include `с` #include ` grawity 12 лет назад 1
Вы, сэр, джентльмен и ученый. Mala 12 лет назад 0