Как я могу принять соглашение Lience для steam до установки apt-get?
В настоящее время я возлюсь с использованием ansible для настройки моей машины с выбранной конфигурацией / приложениями и т. Д.... Я столкнулся с камнем преткновения со steam и его лицензионным соглашением. Я пытался использовать debconf, чтобы предварительно принять его.
Вот один из соответствующих файлов в источнике Steam: http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/utopic/steam/utopic/view/head:/debian/preinst
я пробовал echo steam steam/question select "I AGREE" | sudo debconf-set-selections
и целый ряд других очень похожих команд, также включающих попытки установить лицензию, как видно.
Вот вывод sudo debconf-show steam
:
steam/purge:
* steam/license:
* steam/question: I AGREE
Все, что я пробовал, привело меня к мысли, что я предварительно не согласен с лицензионным соглашением, и мне нужно удалить эти записи, прежде чем я смогу установить Steam. У кого-нибудь есть какие-либо идеи?
2 ответа
Используя ваше исследование и ссылку, приведенную в комментариях к вашему посту, я понял это. По состоянию на 15.04 (2015-09-24), пакет steam в репозиториях Ubuntu по-прежнему 1.0.0.48, но вам нужно 1.0.0.50, чтобы правильно прочитать настройки debconf.
Я обнаружил, что steam.deb, который вы можете загрузить со страницы загрузок Steam, - это 1.0.0.50, поэтому, если вы устанавливаете из этого файла с настройками debconf, он должен работать.
Я использую солончак, и вот мое рабочее состояние для пара:
steam:
debconf.set:
- data:
steam/question: {'type': 'select', 'value': 'I AGREE'}
steam/license: {'type': 'note', 'value': ''}
pkg.installed:
- sources:
- steam-launcher: https://steamcdn-a.akamaihd.net/client/installer/steam.deb
- require:
- debconf: steam
Как указано в исходном вопросе, вы можете просто использовать командную строку, чтобы установить необходимые значения, прежде чем пытаться установить Steam.
echo steam steam/question select "I AGREE" | sudo debconf-set-selections
echo steam steam/license note '' | sudo debconf-set-selections
Вероятно, в пакете была ошибка (упаковка, как известно, сложная, если это не ваша основная ответственность), и более поздние версии теперь должны работать и считывать предварительно принятую лицензию из базы данных debconf. Это означает, что вы не должны получать подсказки.
sudo apt-get install steam
Типичный формат ниже:
echo package package/key {boolean,string} {true, some string} | sudo debconf-set-selections
sudo apt-get install package
Полезные вопросы и ответы для этого были https://unix.stackexchange.com/a/106553
5 лет спустя, но у меня есть следующие задачи, которые, похоже, работают с Debian 9 и 10, протестированные с молекулой и докером.
При условии, что вы уже настроили устройство с графическими драйверами x11 и mesa/ предпочитаемыми, что-то вроде этого может работать:
- name: Add i386 arch
command: dpkg --add-architecture i386
- name: accept steam license
debconf:
name: "steam"
question: "steam/question"
value: "I AGREE"
vtype: "select"
- name: Install steam
apt:
name: steam
update_cache: yes
state: present