Come posso accettare l'accordo di Lience per Steam prima di apt-get install?


10

Attualmente sto scherzando con l'utilizzo di ansible per configurare la mia macchina con la mia configurazione / app scelte ecc ... Ho colpito un ostacolo con Steam ed è un accordo di licenza. Ho provato a usare debconf per pre-accettarlo.

Ecco uno dei file rilevanti nella fonte di vapore: http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/utopic/steam/utopic/view/head:/debian/preinst

Ho provato echo steam steam/question select "I AGREE" | sudo debconf-set-selectionse un sacco di altri comandi molto simili che coinvolgono anche il tentativo di impostare la licenza come visto.

Ecco l'output di sudo debconf-show steam: steam/purge: * steam/license: * steam/question: I AGREE

Tutto ciò che ho provato ha portato a pensare a apt-pre-disaccordo con il contratto di licenza e devo rimuovere quelle voci prima di poter installare Steam. Qualcuno ha qualche idea?


Se trovi una soluzione, faccelo sapere, vorrei anche fare un'installazione automatica di Steam.
Zauberfisch,

1
Niente ancora, ho contattato Steam e non avevano nulla da consigliare.
Joseph Kahn,

bugs.debian.org/cgi-bin/bugreport.cgi?bug=772598 La patch allegata a questo bug risolve questo problema per me. Lo script preinst nel pacchetto pulisce le selezioni debconf prima dell'installazione. Speriamo che la patch venga presto accettata nel pacchetto.
jeekl

Risposte:


2

Usando la tua ricerca e il link fornito nei commenti del tuo post, l'ho capito. A partire dal 15.04 (24-24-2015), il pacchetto steam nei repository Ubuntu è ancora 1.0.0.48, ma è necessario 1.0.0.50 per leggere correttamente le impostazioni di debconf.

Ho scoperto che steam.deb che è possibile scaricare dalla pagina di download di Steam è 1.0.0.50, quindi se si installa da questo file, con le impostazioni di debconf, dovrebbe funzionare.

Uso saltstack ed ecco il mio stato di lavoro per il vapore:

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

Non ho verificato questo da anni, non pensavo di provare l'ultima versione. Controllerò stasera o questo weeekend, grazie!
Joseph Kahn,

Ma come puoi farlo senza usare saltstack?
Philipp Ludwig,

4

Come indicato nella domanda originale, puoi semplicemente utilizzare la riga di comando per impostare i valori richiesti prima di provare a installare Steam.

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

È probabile che ci fosse un bug nel pacchetto (il pacchetto è notoriamente difficile se non è la tua responsabilità primaria) e le versioni successive ora dovrebbero funzionare e leggere la licenza pre-accettata dal database debconf. Questo significa che non dovresti essere richiesto.

sudo apt-get install steam

Il formato tipico è di seguito:

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

Le domande e risposte utili per questo sono state https://unix.stackexchange.com/a/106553


1

5 anni di ritardo, ma ho i seguenti compiti che sembrano funzionare con Debian 9 e 10, testati con molecola e docker.

Se hai già configurato un dispositivo con driver grafici x11 e mesa / preferiti, qualcosa del genere potrebbe funzionare:

- 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
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.