5

We are trying to script the install of the sun jdk on Ubuntu 9.04 and have it automatically accept the license agreement. I have seen something around the net about creating a file that the package looks for, but none of them were complete. Does anyone know how to get this working?

3 Answers 3

4

The Sun Java packages keep track of whether you've agreed to the license agreement using Debconf. You can bypass that check by running

echo "sun-java6-bin shared/accepted-sun-dlj-v1-1 boolean true" | debconf-set-selections

before installing sun-java6-jre or whatever Sun Java package you want.

0
2

I've tested this in ubuntu 10.04 and works fine:

#!/bin/sh

DEBIAN_FRONTEND=noninteractive

echo "sun-java6-bin shared/accepted-sun-dlj-v1-1 boolean true" | debconf-set-selections

echo "sun-java6-jre shared/accepted-sun-dlj-v1-1 boolean true" | debconf-set-selections

apt-get install -y sun-java6-bin
0

My first thought is using a package for your native distribution, as Java is compiled anyway there is not much advantage unless you need a very particular version. If that were the case, you could also create your own package.

I typically redirect STDIN. For example:

/command/to/run <<_EOF
answer1
answer2
_EOF

For particularly tricky things an alternative to that is expect.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .