7

I'm currently fiddling around with using ansible to setup my machine with my chosen configuration/apps etc... I've hit a stumbling block with steam and it's licence agreement. I've been trying to use debconf to pre-accept it.

Here's one of the relevant files in the steam source: http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/utopic/steam/utopic/view/head:/debian/preinst

I've tried echo steam steam/question select "I AGREE" | sudo debconf-set-selections and a whole bunch of other very similar command also involving trying to set the licence as seen.

Here's the output of sudo debconf-show steam: steam/purge: * steam/license: * steam/question: I AGREE

Everything I've tried has led to apt-get thinking I've pre-disagreed to the licence agreement and I have to remove those entries before I'm able to install steam. Does anyone have any ideas?

  • If you find a solution, please let us know, I would also like to do an unattended install of steam. – Zauberfisch Sep 27 '14 at 22:03
  • 1
    Nothing as of yet, I contacted steam and they had nothing to recommend either. – Joseph Kahn Sep 27 '14 at 22:34
  • bugs.debian.org/cgi-bin/bugreport.cgi?bug=772598 The patch attached to this bug fixes this issue for me. The preinst-script in the package cleans the debconf selections before installation. Let's hope the patch is accepted into the package soon. – jeekl Dec 29 '14 at 14:29
1

Using your research and the link provided in the comments of your post, I figured this out. As of 15.04 (on 2015-09-24), the steam package in the Ubuntu repositories is still 1.0.0.48, but you need 1.0.0.50 to properly read the debconf settings.

I found that the steam.deb you can download from the Steam downloads page is 1.0.0.50, so if you install from this file, with the debconf settings, it should work.

I use saltstack, and here is my working state for steam:

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
  • I haven't checked up on this in ages, didn't think to try the latest version. I'll check this out tonight or this weeekend, thanks! – Joseph Kahn Sep 25 '15 at 13:00
  • But how can you do this without using saltstack? – Philipp Ludwig Feb 11 '18 at 8:18
2

As stated in the original question you can simply use the command line to set the required values before you attempt to install Steam.

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

It is likely there was a bug in the package (packaging is notoriously hard if it isn't your primary responsibility) and later versions should now work and read the pre-accepted license from the debconf database. This means you shouldn't get prompted.

sudo apt-get install steam

The typical format is below:

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

The helpful Q&A for this was https://unix.stackexchange.com/a/106553

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.