Como posso aceitar o contrato Lience para o steam antes da instalação do apt-get?

10

Atualmente, estou brincando com o uso do ansible para configurar minha máquina com os aplicativos / configuração escolhidos etc ... Eu bati uma pedra de tropeço no steam e é um contrato de licença. Eu tenho tentado usar o debconf para pré-aceitá-lo.

Aqui está um dos arquivos relevantes na fonte de vapor: http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/utopic/steam/utopic/view/head:/debian/preinst

Eu tentei echo steam steam/question select "I AGREE" | sudo debconf-set-selectionse vários outros comandos muito semelhantes também envolvendo a tentativa de definir a licença como visto.

Aqui está a saída de sudo debconf-show steam: steam/purge: * steam/license: * steam/question: I AGREE

Tudo o que tentei levou ao apt-get a pensar que discordei previamente do contrato de licença e preciso remover essas entradas antes de poder instalar o steam. Alguém tem alguma idéia?

Joseph Kahn
fonte
Se você encontrar uma solução, informe-nos. Também gostaria de fazer uma instalação autônoma do steam.
Zauberfisch 27/09
1
Nada até agora, entrei em contato com o vapor e eles também não tinham nada a recomendar.
Joseph Kahn
bugs.debian.org/cgi-bin/bugreport.cgi?bug=772598 O patch anexado a este bug corrige esse problema para mim. O script preinst no pacote limpa as seleções do debconf antes da instalação. Espero que o patch seja aceito no pacote em breve.
jeekl

Respostas:

2

Usando sua pesquisa e o link fornecido nos comentários do seu post, eu descobri isso. A partir de 15.04 (em 24/09/2015), o pacote steam nos repositórios do Ubuntu ainda é 1.0.0.48, mas você precisa de 1.0.0.50 para ler corretamente as configurações do debconf.

Descobri que o steam.deb que você pode baixar na página de downloads do Steam é 1.0.0.50, portanto, se você instalar a partir deste arquivo, com as configurações do debconf, ele deverá funcionar.

Eu uso saltstack, e aqui está o meu estado de trabalho para vapor:

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
matthew-parlette
fonte
Eu não dou uma olhada nisso há anos, não pensei em experimentar a versão mais recente. Vou verificar esta noite ou este fim de semana, obrigado!
Joseph Kahn
Mas como você pode fazer isso sem usar sal?
Philipp Ludwig
4

Conforme indicado na pergunta original, você pode simplesmente usar a linha de comando para definir os valores necessários antes de tentar instalar o Steam.

echo steam steam/question select "I AGREE" | sudo debconf-set-selections
echo steam steam/license note '' | sudo debconf-set-selections

É provável que tenha ocorrido um erro no pacote (o empacotamento é notoriamente difícil se não for sua responsabilidade principal) e as versões posteriores agora devem funcionar e ler a licença pré-aceita no banco de dados debconf. Isso significa que você não deve ser avisado.

sudo apt-get install steam

O formato típico está abaixo:

echo package package/key {boolean,string} {true, some string} | sudo debconf-set-selections
sudo apt-get install package

As perguntas e respostas úteis para isso foram /unix//a/106553

dragon788
fonte
1

Cinco anos atrasado, mas tenho as seguintes tarefas ansíveis que parecem funcionar com o Debian 9 e 10, testadas com molécula e docker.

Desde que você já tenha configurado um dispositivo com os drivers gráficos x11 e mesa / preferido, algo como isso poderia funcionar:

- 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
Apenas mais uma pergunta
fonte